Comparar commits

...

34 Commits

Autor SHA1 Mensagem Data
Michael R Sweet cceb9291b0 Bump version in doco files. 2017-03-28 14:26:53 -04:00
Michael R Sweet 1f3f503a2b Updated the job listing in the web interface (Issue #4978) 2017-03-28 13:32:42 -04:00
Michael Sweet 875ef65a9e The "reprint job" option was not available for some canceled jobs (Issue #4915) 2017-03-28 08:49:16 -04:00
Michael R Sweet 845913bd5d Fix mantohtml compiler warning (Issue #4982) 2017-03-14 14:26:26 -04:00
Michael R Sweet 87f340512c Clean out old code (Issue #4980) 2017-03-14 13:03:24 -04:00
Michael R Sweet dc8364753b Fix logic error. 2017-03-14 09:10:55 -04:00
Michael R Sweet 0b1399a2c1 Fix an issue with the error handling for the network backends (Issue #4979) 2017-03-14 09:01:18 -04:00
Michael R Sweet afd25c346a Unlock CUPS keychain as needed (appears that the CUPS keychain gets re-locked
after some random period of inactivity).
2017-03-13 12:46:04 -04:00
Michael R Sweet 1636510491 Update HTML man pages. 2017-03-13 12:45:55 -04:00
Michael Sweet 5423798c61 Update cups.strings file to use double prime for inches abbreviation instead of
a straight double quote.
2017-03-11 10:03:40 -05:00
Michael Sweet a740a8491b The IPP Everywhere finishings support did not work correctly with common UI or
command-line options (Issue #4976)

Split finishing options into "standard" groups so that simple "pick one" UI can
be used.
2017-03-10 13:52:48 -05:00
Michael Sweet 16b0b41131 Update localized media type names. 2017-03-10 12:23:22 -05:00
Michael Sweet 4886d6747e Fix localization of media type values, add a few common vendor-specific types. 2017-03-10 11:27:24 -05:00
Michael Sweet 42dc144c44 Allow "Negotiate" as an AuthType/DefaultAuthType, even on systems that don't
have Kerberos support compiled in.  The result will be a run-time access
failure that gets logged instead of stopping cupsd (Issue #4947)
2017-03-09 15:24:58 -05:00
Michael Sweet a946858f0c Add meaningful error messages to IPP Everywhere PPD generator (Issue #4954) 2017-03-09 15:20:24 -05:00
Michael Sweet 3ae6282d0e Update MediaType code to list all media-type-supported values, regardless of
whether they are standard names (Issue #4953)

Also add HP mis-spelling of 'photographic' ('photo').
2017-03-09 15:04:39 -05:00
Michael Sweet 3b6c3c8e9d Support all print-quality values reported by the printer, regardless of the
supported resolutions (Issue #4953)
2017-03-09 14:55:24 -05:00
Michael Sweet 40c808603a Send media-col for media-source and media-type, even if the size isn't specified
(Issue #4963)
2017-03-09 14:31:35 -05:00
Michael Sweet 84e3828d7d Bump the number of finishings-supported values that can be defined (was 5, now
is 100...)
2017-03-09 14:07:51 -05:00
Michael Sweet 30be6424f0 Report finishings based on the PPD cache (Issue #4960, Issue #4961, Issue #4962) 2017-03-09 14:06:42 -05:00
Michael Sweet 1fbd0cabfb First half of the changes for Issue #4960, Issue #4961, and Issue #4962 - add
a cupsIPPFinishings mapping for standard/common keywords when cupsIPPFinishings
is not specified in the PPD file (as it should be for CUPS drivers).
2017-03-08 16:07:09 -05:00
Michael Sweet 9c0c89124b Fix some more localization issues on macOS (<rdar://problem/27245567>) 2017-03-08 14:35:12 -05:00
Michael Sweet 4888dff95c Eliminate compiler warning. 2017-03-08 13:52:30 -05:00
Michael Sweet b393bc25e2 The scheduler could pause responding to client requests in order to save state
changes to disk (<rdar://problem/28690656>)
2017-03-08 13:43:23 -05:00
Michael R Sweet 45eb1e5efc Sync up with fixes from IPP sample project. 2017-03-07 15:54:38 -05:00
Michael R Sweet 8a984948f3 Also escape " in regex paths. 2017-03-07 15:46:51 -05:00
Michael Sweet 87e9bb5508 Mirror changes from IPP sample code. 2017-03-01 15:24:02 -05:00
Michael R Sweet 68d5f6b8a4 Merge pull request #4972 from jwilk/phony
Fix .PHONY declaration
2017-02-28 09:54:18 -05:00
Jakub Wilk 83bf1f7b59 Fix .PHONY declaration 2017-02-27 20:55:56 +01:00
Michael R Sweet 887fbb5445 The IPP backend could get into an infinite loop for certain errors, causing a
hung queue (<rdar://problem/28008717>)
2017-01-26 16:27:05 -05:00
Michael R Sweet c245abfeb8 Update copyrights. 2017-01-26 16:20:13 -05:00
Michael R Sweet e8a1fa03d0 Bump version to 2.2.3.
Update changelog.
2017-01-26 16:14:10 -05:00
Michael R Sweet 14fdcd7a14 One other spot to catch another slightly different language ID for "traditional
chinese"...
2017-01-26 15:44:09 -05:00
Michael R Sweet 454708a4b9 Add private API for mapping Apple language ID to POSIX locale ID. 2017-01-26 15:36:50 -05:00
48 arquivos alterados com 1980 adições e 1067 exclusões
+28 -1
Ver Arquivo
@@ -1,6 +1,33 @@
CHANGES.txt - 2.2.2 - 2017-01-17
CHANGES.txt - 2.2.3 - 2017-03-28
--------------------------------
CHANGES IN CUPS V2.2.3
- The IPP backend could get into an infinite loop for certain errors,
causing a hung queue (<rdar://problem/28008717>)
- The scheduler could pause responding to client requests in order to
save state changes to disk (<rdar://problem/28690656>)
- Added support for PPD finishing keywords (Issue #4960, Issue #4961,
Issue #4962)
- The IPP backend did not send a media-col attribute for just the source
or type (Issue #4963)
- IPP Everywhere print queues did not always support all print qualities
supported by the printer (Issue #4953)
- IPP Everywhere print queues did not always support all media types
supported by the printer (Issue #4953)
- The IPP Everywhere PPD generator did not return useful error messages
(Issue #4954)
- The IPP Everywhere finishings support did not work correctly with
common UI or command-line options (Issue #4976)
- Fixed an error handling issue for the network backends (Issue #4979)
- The default cupsd.conf file did not work on systems compiled without
Kerberos support (Issue #4947)
- The "reprint job" option was not available for some canceled jobs
(Issue #4915)
- Updated the job listing in the web interface (Issue #4978)
- Fixed some localization issues on macOS (<rdar://problem/27245567>)
CHANGES IN CUPS V2.2.2
- Fixed some issues with the Zebra ZPL printer driver (Issue #4898)
+1 -1
Ver Arquivo
@@ -1,4 +1,4 @@
INSTALL - CUPS v2.2.2 - 2017-01-17
INSTALL - CUPS v2.2.3 - 2017-03-28
----------------------------------
This file describes how to compile and install CUPS from source code. For more
+1 -1
Ver Arquivo
@@ -317,7 +317,7 @@ EPMFLAGS = -v --output-dir dist $(EPMARCH)
bsd deb epm pkg rpm slackware:
epm $(EPMFLAGS) -f $@ cups packaging/cups.list
.PHONEY: dist
.PHONY: dist
dist: all
$(RM) -r dist
$(MAKE) $(MFLAGS) epm
+1 -1
Ver Arquivo
@@ -1,4 +1,4 @@
README - CUPS v2.2.2 - 2017-01-17
README - CUPS v2.2.3 - 2017-03-28
---------------------------------
Looking for compile instructions? Read the file "INSTALL.txt" instead...
+5 -3
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* IPP backend for CUPS.
*
* Copyright 2007-2016 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -1469,7 +1469,7 @@ main(int argc, /* I - Number of command-line args */
while (!job_canceled && validate_job)
{
request = new_request(IPP_VALIDATE_JOB, version, uri, argv[2],
request = new_request(IPP_OP_VALIDATE_JOB, version, uri, argv[2],
monitor.job_name, num_options, options, compression,
copies_sup ? copies : 1, document_format, pc, ppd,
media_col_sup, doc_handling_sup, print_color_mode_sup);
@@ -1533,6 +1533,8 @@ main(int argc, /* I - Number of command-line args */
else if (ipp_status < IPP_REDIRECTION_OTHER_SITE ||
ipp_status == IPP_BAD_REQUEST)
break;
else if (job_auth == NULL && ipp_status > IPP_BAD_REQUEST)
goto cleanup;
}
/*
@@ -2216,7 +2218,7 @@ main(int argc, /* I - Number of command-line args */
return (CUPS_BACKEND_HOLD);
else if (ipp_status == IPP_INTERNAL_ERROR)
return (CUPS_BACKEND_STOP);
else if (ipp_status == IPP_CONFLICT)
else if (ipp_status == IPP_CONFLICT || ipp_status == IPP_STATUS_ERROR_REQUEST_ENTITY || ipp_status == IPP_STATUS_ERROR_REQUEST_VALUE)
return (CUPS_BACKEND_FAILED);
else if (ipp_status == IPP_REQUEST_VALUE ||
ipp_status == IPP_STATUS_ERROR_ATTRIBUTES_OR_VALUES ||
+2 -2
Ver Arquivo
@@ -77,7 +77,7 @@ backendDrainOutput(int print_fd, /* I - Print file descriptor */
* Read error - bail if we don't see EAGAIN or EINTR...
*/
if (errno != EAGAIN || errno != EINTR)
if (errno != EAGAIN && errno != EINTR)
{
fprintf(stderr, "DEBUG: Read failed: %s\n", strerror(errno));
_cupsLangPrintFilter(stderr, "ERROR", _("Unable to read print data."));
@@ -305,7 +305,7 @@ backendRunLoop(
* Read error - bail if we don't see EAGAIN or EINTR...
*/
if (errno != EAGAIN || errno != EINTR)
if (errno != EAGAIN && errno != EINTR)
{
fprintf(stderr, "DEBUG: Read failed: %s\n", strerror(errno));
_cupsLangPrintFilter(stderr, "ERROR",
externo
+10 -10
Ver Arquivo
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.68 for CUPS 2.2.2.
# Generated by GNU Autoconf 2.68 for CUPS 2.2.3.
#
# Report bugs to <https://github.com/apple/cups/issues>.
#
@@ -560,8 +560,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='CUPS'
PACKAGE_TARNAME='cups'
PACKAGE_VERSION='2.2.2'
PACKAGE_STRING='CUPS 2.2.2'
PACKAGE_VERSION='2.2.3'
PACKAGE_STRING='CUPS 2.2.3'
PACKAGE_BUGREPORT='https://github.com/apple/cups/issues'
PACKAGE_URL='https://www.cups.org/'
@@ -1448,7 +1448,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures CUPS 2.2.2 to adapt to many kinds of systems.
\`configure' configures CUPS 2.2.3 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1509,7 +1509,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of CUPS 2.2.2:";;
short | recursive ) echo "Configuration of CUPS 2.2.3:";;
esac
cat <<\_ACEOF
@@ -1689,7 +1689,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
CUPS configure 2.2.2
CUPS configure 2.2.3
generated by GNU Autoconf 2.68
Copyright (C) 2010 Free Software Foundation, Inc.
@@ -2153,7 +2153,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by CUPS $as_me 2.2.2, which was
It was created by CUPS $as_me 2.2.3, which was
generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
@@ -2527,7 +2527,7 @@ esac
ac_config_headers="$ac_config_headers config.h"
CUPS_VERSION="2.2.2"
CUPS_VERSION="2.2.3"
CUPS_REVISION=""
CUPS_BUILD="cups-$CUPS_VERSION"
@@ -10748,7 +10748,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by CUPS $as_me 2.2.2, which was
This file was extended by CUPS $as_me 2.2.3, which was
generated by GNU Autoconf 2.68. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -10811,7 +10811,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
CUPS config.status 2.2.2
CUPS config.status 2.2.3
configured by $0, generated by GNU Autoconf 2.68,
with options \\"\$ac_cs_config\\"
+2 -2
Ver Arquivo
@@ -1,7 +1,7 @@
dnl
dnl Configuration script for CUPS.
dnl
dnl Copyright 2007-2016 by Apple Inc.
dnl Copyright 2007-2017 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
@@ -15,7 +15,7 @@ dnl We need at least autoconf 2.60...
AC_PREREQ(2.60)
dnl Package name and version...
AC_INIT([CUPS], [2.2.2], [https://github.com/apple/cups/issues], [cups], [https://www.cups.org/])
AC_INIT([CUPS], [2.2.3], [https://github.com/apple/cups/issues], [cups], [https://www.cups.org/])
sinclude(config-scripts/cups-opsys.m4)
sinclude(config-scripts/cups-common.m4)
+3 -3
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* API definitions for CUPS.
*
* Copyright 2007-2016 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -47,10 +47,10 @@ extern "C" {
* Constants...
*/
# define CUPS_VERSION 2.0202
# define CUPS_VERSION 2.0203
# define CUPS_VERSION_MAJOR 2
# define CUPS_VERSION_MINOR 2
# define CUPS_VERSION_PATCH 2
# define CUPS_VERSION_PATCH 3
# define CUPS_BC_FD 3
/* Back-channel file descriptor for
+81 -1
Ver Arquivo
@@ -897,12 +897,14 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
"k-octets",
"k-octets-processed",
"last-document",
"materials-col-actual", /* IPP 3D */
"media-actual",
"media-col-actual",
"media-input-tray-check-actual",
"media-sheets",
"media-sheets-completed",
"more-info",
"multiple-object-handling-actual", /* IPP 3D */
"number-up-actual",
"orientation-requested-actual",
"output-bin-actual",
@@ -914,12 +916,17 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
"pages",
"pages-completed",
"pages-completed-current-copy",
"platform-temperature-actual", /* IPP 3D */
"presentation-direction-number-up-actual",
"print-accuracy-actual", /* IPP 3D */
"print-base-actual", /* IPP 3D */
"print-color-mode-actual",
"print-content-optimize-actual",
"print-objects-actual", /* IPP 3D */
"print-quality-actual",
"print-rendering-intent-actual",
"print-scaling-actual", /* IPP Paid Printing */
"print-supports-actual", /* IPP 3D */
"printer-resolution-actual",
"printer-up-time",
"separator-sheets-actual",
@@ -974,6 +981,20 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
"insert-sheet",
"insert-sheet-default",
"insert-sheet-supported",
"material-amount-units-supported", /* IPP 3D */
"material-diameter-supported", /* IPP 3D */
"material-purpose-supported", /* IPP 3D */
"material-rate-supported", /* IPP 3D */
"material-rate-units-supported", /* IPP 3D */
"material-shell-thickness-supported",/* IPP 3D */
"material-temperature-supported", /* IPP 3D */
"material-type-supported", /* IPP 3D */
"materials-col", /* IPP 3D */
"materials-col-database", /* IPP 3D */
"materials-col-default", /* IPP 3D */
"materials-col-ready", /* IPP 3D */
"materials-col-supported", /* IPP 3D */
"max-materials-col-supported", /* IPP 3D */
"max-stitching-locations-supported",
"media",
"media-back-coating-supported",
@@ -1006,6 +1027,9 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
"multiple-document-handling",
"multiple-document-handling-default",
"multiple-document-handling-supported",
"multiple-object-handling", /* IPP 3D */
"multiple-object-handling-default", /* IPP 3D */
"multiple-object-handling-supported",/* IPP 3D */
"number-up",
"number-up-default",
"number-up-supported",
@@ -1034,15 +1058,27 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
"pdl-init-file-name-subdirectory-supported",
"pdl-init-file-name-supported",
"pdl-init-file-supported",
"platform-temperature", /* IPP 3D */
"platform-temperature-default", /* IPP 3D */
"platform-temperature-supported", /* IPP 3D */
"presentation-direction-number-up",
"presentation-direction-number-up-default",
"presentation-direction-number-up-supported",
"print-accuracy", /* IPP 3D */
"print-accuracy-default", /* IPP 3D */
"print-accuracy-supported", /* IPP 3D */
"print-base", /* IPP 3D */
"print-base-default", /* IPP 3D */
"print-base-supported", /* IPP 3D */
"print-color-mode",
"print-color-mode-default",
"print-color-mode-supported",
"print-content-optimize",
"print-content-optimize-default",
"print-content-optimize-supported",
"print-objects", /* IPP 3D */
"print-objects-default", /* IPP 3D */
"print-objects-supported", /* IPP 3D */
"print-quality",
"print-quality-default",
"print-quality-supported",
@@ -1052,6 +1088,9 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
"print-scaling", /* IPP Paid Printing */
"print-scaling-default", /* IPP Paid Printing */
"print-scaling-supported", /* IPP Paid Printing */
"print-supports", /* IPP 3D */
"print-supports-default", /* IPP 3D */
"print-supports-supported", /* IPP 3D */
"printer-resolution",
"printer-resolution-default",
"printer-resolution-supported",
@@ -1166,10 +1205,12 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
"job-state-reasons",
"job-uri",
"job-uuid",
"materials-col-actual", /* IPP 3D */
"media-actual",
"media-col-actual",
"media-check-input-tray-actual",
"multiple-document-handling-actual",
"multiple-object-handling-actual", /* IPP 3D */
"number-of-documents",
"number-of-intervening-jobs",
"number-up-actual",
@@ -1181,12 +1222,17 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
"page-delivery-actual",
"page-order-received-actual",
"page-ranges-actual",
"platform-temperature-actual", /* IPP 3D */
"presentation-direction-number-up-actual",
"print-accuracy-actual", /* IPP 3D */
"print-base-actual", /* IPP 3D */
"print-color-mode-actual",
"print-content-optimize-actual",
"print-objects-actual", /* IPP 3D */
"print-quality-actual",
"print-rendering-intent-actual",
"print-scaling-actual", /* IPP Paid Printing */
"print-supports-actual", /* IPP 3D */
"printer-resolution-actual",
"separator-sheets-actual",
"sheet-collate-actual",
@@ -1208,6 +1254,7 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
};
static const char * const job_template[] =
{ /* job-template group */
"accuracy-units-supported", /* IPP 3D */
"confirmation-sheet-print", /* IPP FaxOut */
"confirmation-sheet-print-default",
"copies",
@@ -1315,6 +1362,20 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
"job-sheets-default",
"job-sheets-supported",
"logo-uri-schemes-supported",
"material-amount-units-supported", /* IPP 3D */
"material-diameter-supported", /* IPP 3D */
"material-purpose-supported", /* IPP 3D */
"material-rate-supported", /* IPP 3D */
"material-rate-units-supported", /* IPP 3D */
"material-shell-thickness-supported",/* IPP 3D */
"material-temperature-supported", /* IPP 3D */
"material-type-supported", /* IPP 3D */
"materials-col", /* IPP 3D */
"materials-col-database", /* IPP 3D */
"materials-col-default", /* IPP 3D */
"materials-col-ready", /* IPP 3D */
"materials-col-supported", /* IPP 3D */
"max-materials-col-supported", /* IPP 3D */
"max-save-info-supported",
"max-stitching-locations-supported",
"media",
@@ -1348,6 +1409,9 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
"multiple-document-handling",
"multiple-document-handling-default",
"multiple-document-handling-supported",
"multiple-object-handling", /* IPP 3D */
"multiple-object-handling-default", /* IPP 3D */
"multiple-object-handling-supported",/* IPP 3D */
"number-of-retries", /* IPP FaxOut */
"number-of-retries-default",
"number-of-retries-supported",
@@ -1385,15 +1449,27 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
"pdl-init-file-name-subdirectory-supported",
"pdl-init-file-name-supported",
"pdl-init-file-supported",
"platform-temperature", /* IPP 3D */
"platform-temperature-default", /* IPP 3D */
"platform-temperature-supported", /* IPP 3D */
"presentation-direction-number-up",
"presentation-direction-number-up-default",
"presentation-direction-number-up-supported",
"print-accuracy", /* IPP 3D */
"print-accuracy-default", /* IPP 3D */
"print-accuracy-supported", /* IPP 3D */
"print-base", /* IPP 3D */
"print-base-default", /* IPP 3D */
"print-base-supported", /* IPP 3D */
"print-color-mode",
"print-color-mode-default",
"print-color-mode-supported",
"print-content-optimize",
"print-content-optimize-default",
"print-content-optimize-supported",
"print-objects", /* IPP 3D */
"print-objects-default", /* IPP 3D */
"print-objects-supported", /* IPP 3D */
"print-quality",
"print-quality-default",
"print-quality-supported",
@@ -1403,6 +1479,9 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
"print-scaling", /* IPP Paid Printing */
"print-scaling-default", /* IPP Paid Printing */
"print-scaling-supported", /* IPP Paid Printing */
"print-supports", /* IPP 3D */
"print-supports-default", /* IPP 3D */
"print-supports-supported", /* IPP 3D */
"printer-resolution",
"printer-resolution-default",
"printer-resolution-supported",
@@ -1533,6 +1612,7 @@ ippCreateRequestedArray(ipp_t *request) /* I - IPP request */
"pages-per-minute",
"pages-per-minute-color",
"pdf-k-octets-supported", /* CUPS extension */
"pdf-features-supported", /* IPP 3D */
"pdf-versions-supported", /* CUPS extension */
"pdl-override-supported",
"port-monitor", /* CUPS extension */
@@ -2045,7 +2125,7 @@ ippOpString(ipp_op_t op) /* I - Operation ID */
* See if the operation ID is a known value...
*/
if (op >= IPP_OP_PRINT_JOB && op <= IPP_OP_VALIDATE_DOCUMENT)
if (op >= IPP_OP_PRINT_JOB && op < (ipp_op_t)(sizeof(ipp_std_ops) / sizeof(ipp_std_ops[0])))
return (ipp_std_ops[op]);
else if (op == IPP_OP_PRIVATE)
return ("windows-ext");
+7 -4
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* Internet Printing Protocol functions for CUPS.
*
* Copyright 2007-2015 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -2570,13 +2570,16 @@ 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) */
{
ipp_tag_t tag; /* Value tag */
/*
* 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)))
tag = ippGetValueTag(attr);
if (!attr || element < 0 || element >= attr->num_values || (tag != IPP_TAG_TEXTLANG && tag != IPP_TAG_NAMELANG && (tag < IPP_TAG_TEXT || tag > IPP_TAG_MIMETYPE)))
return (NULL);
/*
+6 -3
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* Private localization support for CUPS.
*
* Copyright 2007-2010 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -22,6 +22,9 @@
# include <stdio.h>
# include <cups/transcode.h>
# ifdef __APPLE__
# include <CoreFoundation/CoreFoundation.h>
# endif /* __APPLE__ */
# ifdef __cplusplus
extern "C" {
@@ -51,8 +54,8 @@ typedef struct _cups_message_s /**** Message catalog entry ****/
*/
# ifdef __APPLE__
extern const char *_cupsAppleLanguage(const char *locale, char *language,
size_t langsize);
extern const char *_cupsAppleLanguage(const char *locale, char *language, size_t langsize);
extern const char *_cupsAppleLocale(CFStringRef languageName, char *locale, size_t localesize);
# endif /* __APPLE__ */
extern void _cupsCharmapFlush(void);
extern const char *_cupsEncodingName(cups_encoding_t encoding);
+81 -49
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* I18N/language support for CUPS.
*
* Copyright 2007-2016 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -118,11 +118,13 @@ typedef struct
} _apple_language_locale_t;
static const _apple_language_locale_t apple_language_locale[] =
{ /* Locale to language ID LUT */
{ "en", "en_US" },
{ "nb", "no" },
{ "zh-Hans", "zh_CN" },
{ "zh-Hant", "zh_TW" }
{ /* Language to locale ID LUT */
{ "en", "en_US" },
{ "nb", "no" },
{ "nb_NO", "no" },
{ "zh-Hans", "zh_CN" },
{ "zh-Hant", "zh_TW" },
{ "zh-Hant_CN", "zh_TW" }
};
#endif /* __APPLE__ */
@@ -239,6 +241,75 @@ _cupsAppleLanguage(const char *locale, /* I - Locale ID */
return (language);
}
/*
* '_cupsAppleLocale()' - Get the locale associated with an Apple language ID.
*/
const char * /* O - Locale */
_cupsAppleLocale(CFStringRef languageName, /* I - Apple language ID */
char *locale, /* I - Buffer for locale */
size_t localesize) /* I - Size of buffer */
{
int i; /* Looping var */
CFStringRef localeName; /* Locale as a CF string */
localeName = CFLocaleCreateCanonicalLocaleIdentifierFromString(kCFAllocatorDefault, languageName);
if (localeName)
{
/*
* Copy the locale name and tweak as needed...
*/
if (!CFStringGetCString(localeName, locale, (CFIndex)localesize, kCFStringEncodingASCII))
*locale = '\0';
CFRelease(localeName);
/*
* Map new language identifiers to locales...
*/
for (i = 0;
i < (int)(sizeof(apple_language_locale) /
sizeof(apple_language_locale[0]));
i ++)
{
if (!strcmp(locale, apple_language_locale[i].language))
{
strlcpy(locale, apple_language_locale[i].locale, localesize);
break;
}
}
}
else
{
/*
* Just try the Apple language name...
*/
if (!CFStringGetCString(languageName, locale, (CFIndex)localesize, kCFStringEncodingASCII))
*locale = '\0';
}
if (!*locale)
return (NULL);
/*
* Convert language subtag into region subtag...
*/
if (locale[2] == '-')
locale[2] = '_';
if (!strchr(locale, '.'))
strlcat(locale, ".UTF-8", localesize);
return (locale);
}
#endif /* __APPLE__ */
@@ -1134,13 +1205,11 @@ _cupsMessageNew(void *context) /* I - User data */
static const char * /* O - Locale string */
appleLangDefault(void)
{
int i; /* Looping var */
CFBundleRef bundle; /* Main bundle (if any) */
CFArrayRef bundleList; /* List of localizations in bundle */
CFPropertyListRef localizationList = NULL;
/* List of localization data */
CFStringRef languageName; /* Current name */
CFStringRef localeName; /* Canonical from of name */
char *lang; /* LANG environment variable */
_cups_globals_t *cg = _cupsGlobals();
/* Pointer to library globals */
@@ -1225,49 +1294,11 @@ appleLangDefault(void)
if (languageName &&
CFGetTypeID(languageName) == CFStringGetTypeID())
{
localeName = CFLocaleCreateCanonicalLocaleIdentifierFromString(
kCFAllocatorDefault, languageName);
if (localeName)
{
CFStringGetCString(localeName, cg->language, sizeof(cg->language),
kCFStringEncodingASCII);
CFRelease(localeName);
if (_cupsAppleLocale(languageName, cg->language, sizeof(cg->language)))
DEBUG_printf(("3appleLangDefault: cg->language=\"%s\"",
cg->language));
/*
* Map new language identifiers to locales...
*/
for (i = 0;
i < (int)(sizeof(apple_language_locale) /
sizeof(apple_language_locale[0]));
i ++)
{
if (!strcmp(cg->language, apple_language_locale[i].language))
{
DEBUG_printf(("3appleLangDefault: mapping \"%s\" to \"%s\"...",
cg->language, apple_language_locale[i].locale));
strlcpy(cg->language, apple_language_locale[i].locale,
sizeof(cg->language));
break;
}
}
/*
* Convert language subtag into region subtag...
*/
if (cg->language[2] == '-')
cg->language[2] = '_';
if (!strchr(cg->language, '.'))
strlcat(cg->language, ".UTF-8", sizeof(cg->language));
}
else
DEBUG_puts("3appleLangDefault: Unable to get localeName.");
DEBUG_puts("3appleLangDefault: Unable to get locale.");
}
}
@@ -1371,10 +1402,11 @@ appleMessageLoad(const char *locale) /* I - Locale ID */
locale = "Japanese";
else if (!strncmp(locale, "es", 2))
locale = "Spanish";
else if (!strcmp(locale, "zh_HK"))
else if (!strcmp(locale, "zh_HK") || !strncmp(locale, "zh-Hant", 7))
{
/*
* <rdar://problem/22130168>
* <rdar://problem/27245567>
*
* Try zh_TW first, then zh... Sigh...
*/
+409 -250
Ver Arquivo
@@ -32,10 +32,10 @@
* Local functions...
*/
static void pwg_add_finishing(cups_array_t *finishings, ipp_finishings_t template, const char *name, const char *value);
static int pwg_compare_finishings(_pwg_finishings_t *a,
_pwg_finishings_t *b);
static void pwg_free_finishings(_pwg_finishings_t *f);
static void pwg_free_material(_pwg_material_t *m);
static void pwg_ppdize_name(const char *ipp, char *name, size_t namesize);
static void pwg_ppdize_resolution(ipp_attribute_t *attr, int element, int *xres, int *yres, char *name, size_t namesize);
static void pwg_unppdize_name(const char *ppd, char *name, size_t namesize,
@@ -49,21 +49,20 @@ static void pwg_unppdize_name(const char *ppd, char *name, size_t namesize,
* attributes and values and adds them to the specified IPP request.
*/
int /* O - New number of copies */
_cupsConvertOptions(ipp_t *request, /* I - IPP request */
ppd_file_t *ppd, /* I - PPD file */
_ppd_cache_t *pc, /* I - PPD cache info */
ipp_attribute_t *media_col_sup,
/* I - media-col-supported values */
ipp_attribute_t *doc_handling_sup,
/* I - multiple-document-handling-supported values */
ipp_attribute_t *print_color_mode_sup,
/* I - Printer supports print-color-mode */
const char *user, /* I - User info */
const char *format, /* I - document-format value */
int copies, /* I - Number of copies */
int num_options, /* I - Number of options */
cups_option_t *options) /* I - Options */
int /* O - New number of copies */
_cupsConvertOptions(
ipp_t *request, /* I - IPP request */
ppd_file_t *ppd, /* I - PPD file */
_ppd_cache_t *pc, /* I - PPD cache info */
ipp_attribute_t *media_col_sup, /* I - media-col-supported values */
ipp_attribute_t *doc_handling_sup, /* I - multiple-document-handling-supported values */
ipp_attribute_t *print_color_mode_sup,
/* I - Printer supports print-color-mode */
const char *user, /* I - User info */
const char *format, /* I - document-format value */
int copies, /* I - Number of copies */
int num_options, /* I - Number of options */
cups_option_t *options) /* I - Options */
{
int i; /* Looping var */
const char *keyword, /* PWG keyword */
@@ -198,41 +197,42 @@ _cupsConvertOptions(ipp_t *request, /* I - IPP request */
if ((keyword = cupsGetOption("PageSize", num_options, options)) == NULL)
keyword = cupsGetOption("media", num_options, options);
if ((size = _ppdCacheGetSize(pc, keyword)) != NULL)
media_source = _ppdCacheGetSource(pc, cupsGetOption("InputSlot", num_options, options));
media_type = _ppdCacheGetType(pc, cupsGetOption("MediaType", num_options, options));
size = _ppdCacheGetSize(pc, keyword);
if (size || media_source || media_type)
{
/*
* Add a media-col value...
*/
media_size = ippNew();
ippAddInteger(media_size, IPP_TAG_ZERO, IPP_TAG_INTEGER,
"x-dimension", size->width);
ippAddInteger(media_size, IPP_TAG_ZERO, IPP_TAG_INTEGER,
"y-dimension", size->length);
media_col = ippNew();
ippAddCollection(media_col, IPP_TAG_ZERO, "media-size", media_size);
media_source = _ppdCacheGetSource(pc, cupsGetOption("InputSlot",
num_options,
options));
media_type = _ppdCacheGetType(pc, cupsGetOption("MediaType",
num_options,
options));
if (size)
{
media_size = ippNew();
ippAddInteger(media_size, IPP_TAG_ZERO, IPP_TAG_INTEGER,
"x-dimension", size->width);
ippAddInteger(media_size, IPP_TAG_ZERO, IPP_TAG_INTEGER,
"y-dimension", size->length);
ippAddCollection(media_col, IPP_TAG_ZERO, "media-size", media_size);
}
for (i = 0; i < media_col_sup->num_values; i ++)
{
if (!strcmp(media_col_sup->values[i].string.text, "media-left-margin"))
if (size && !strcmp(media_col_sup->values[i].string.text, "media-left-margin"))
ippAddInteger(media_col, IPP_TAG_ZERO, IPP_TAG_INTEGER, "media-left-margin", size->left);
else if (!strcmp(media_col_sup->values[i].string.text, "media-bottom-margin"))
else if (size && !strcmp(media_col_sup->values[i].string.text, "media-bottom-margin"))
ippAddInteger(media_col, IPP_TAG_ZERO, IPP_TAG_INTEGER, "media-bottom-margin", size->bottom);
else if (!strcmp(media_col_sup->values[i].string.text, "media-right-margin"))
else if (size && !strcmp(media_col_sup->values[i].string.text, "media-right-margin"))
ippAddInteger(media_col, IPP_TAG_ZERO, IPP_TAG_INTEGER, "media-right-margin", size->right);
else if (!strcmp(media_col_sup->values[i].string.text, "media-top-margin"))
else if (size && !strcmp(media_col_sup->values[i].string.text, "media-top-margin"))
ippAddInteger(media_col, IPP_TAG_ZERO, IPP_TAG_INTEGER, "media-top-margin", size->top);
else if (!strcmp(media_col_sup->values[i].string.text, "media-source") && media_source)
else if (media_source && !strcmp(media_col_sup->values[i].string.text, "media-source"))
ippAddString(media_col, IPP_TAG_ZERO, IPP_TAG_KEYWORD, "media-source", NULL, media_source);
else if (!strcmp(media_col_sup->values[i].string.text, "media-type") && media_type)
else if (media_type && !strcmp(media_col_sup->values[i].string.text, "media-type"))
ippAddString(media_col, IPP_TAG_ZERO, IPP_TAG_KEYWORD, "media-type", NULL, media_type);
}
@@ -503,53 +503,6 @@ _ppdCacheCreateWithFile(
_cupsSetError(IPP_STATUS_ERROR_INTERNAL, _("Bad PPD cache file."), 1);
goto create_error;
}
else if (!_cups_strcasecmp(line, "3D"))
{
pc->cups_3d = _cupsStrAlloc(value);
}
else if (!_cups_strcasecmp(line, "LayerOrder"))
{
pc->cups_layer_order = _cupsStrAlloc(value);
}
else if (!_cups_strcasecmp(line, "Accuracy"))
{
sscanf(value, "%d%d%d", pc->cups_accuracy + 0, pc->cups_accuracy + 1, pc->cups_accuracy + 2);
}
else if (!_cups_strcasecmp(line, "Volume"))
{
sscanf(value, "%d%d%d", pc->cups_volume + 0, pc->cups_volume + 1, pc->cups_volume + 2);
}
else if (!_cups_strcasecmp(line, "Material"))
{
/*
* Material key "name" name=value ... name=value
*/
if ((valueptr = strchr(value, ' ')) != NULL)
{
_pwg_material_t *material = (_pwg_material_t *)calloc(1, sizeof(_pwg_material_t));
*valueptr++ = '\0';
material->key = _cupsStrAlloc(value);
if (*valueptr == '\"')
{
value = valueptr + 1;
if ((valueptr = strchr(value, '\"')) != NULL)
{
*valueptr++ = '\0';
material->name = _cupsStrAlloc(value);
material->num_props = cupsParseOptions(valueptr, 0, &material->props);
}
}
if (!pc->materials)
pc->materials = cupsArrayNew3(NULL, NULL, NULL, 0, NULL, (cups_afree_func_t)pwg_free_material);
cupsArrayAdd(pc->materials, material);
}
}
else if (!_cups_strcasecmp(line, "Filter"))
{
if (!pc->filters)
@@ -1714,6 +1667,10 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
if ((ppd_attr = ppdFindAttr(ppd, "cupsIPPFinishings", NULL)) != NULL)
{
/*
* Have proper vendor mapping of IPP finishings values to PPD options...
*/
pc->finishings = cupsArrayNew3((cups_array_func_t)pwg_compare_finishings,
NULL, NULL, 0, NULL,
(cups_afree_func_t)pwg_free_finishings);
@@ -1733,6 +1690,114 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
while ((ppd_attr = ppdFindNextAttr(ppd, "cupsIPPFinishings",
NULL)) != NULL);
}
else
{
/*
* No IPP mapping data, try to map common/standard PPD keywords...
*/
ppd_option_t *ppd_option; /* PPD option */
pc->finishings = cupsArrayNew3((cups_array_func_t)pwg_compare_finishings, NULL, NULL, 0, NULL, (cups_afree_func_t)pwg_free_finishings);
if ((ppd_option = ppdFindOption(ppd, "StapleLocation")) != NULL)
{
/*
* Add staple finishings...
*/
if (ppdFindChoice(ppd_option, "SinglePortrait"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_STAPLE_TOP_LEFT, "StapleLocation", "SinglePortrait");
if (ppdFindChoice(ppd_option, "UpperLeft")) /* Ricoh extension */
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_STAPLE_TOP_LEFT, "StapleLocation", "UpperLeft");
if (ppdFindChoice(ppd_option, "UpperRight")) /* Ricoh extension */
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_STAPLE_TOP_RIGHT, "StapleLocation", "UpperRight");
if (ppdFindChoice(ppd_option, "SingleLandscape"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_STAPLE_BOTTOM_LEFT, "StapleLocation", "SingleLandscape");
if (ppdFindChoice(ppd_option, "DualLandscape"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_STAPLE_DUAL_LEFT, "StapleLocation", "DualLandscape");
}
if ((ppd_option = ppdFindOption(ppd, "RIPunch")) != NULL)
{
/*
* Add (Ricoh) punch finishings...
*/
if (ppdFindChoice(ppd_option, "Left2"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_PUNCH_DUAL_LEFT, "RIPunch", "Left2");
if (ppdFindChoice(ppd_option, "Left3"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_PUNCH_TRIPLE_LEFT, "RIPunch", "Left3");
if (ppdFindChoice(ppd_option, "Left4"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_PUNCH_QUAD_LEFT, "RIPunch", "Left4");
if (ppdFindChoice(ppd_option, "Right2"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_PUNCH_DUAL_RIGHT, "RIPunch", "Right2");
if (ppdFindChoice(ppd_option, "Right3"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_PUNCH_TRIPLE_RIGHT, "RIPunch", "Right3");
if (ppdFindChoice(ppd_option, "Right4"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_PUNCH_QUAD_RIGHT, "RIPunch", "Right4");
if (ppdFindChoice(ppd_option, "Upper2"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_PUNCH_DUAL_TOP, "RIPunch", "Upper2");
if (ppdFindChoice(ppd_option, "Upper3"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_PUNCH_TRIPLE_TOP, "RIPunch", "Upper3");
if (ppdFindChoice(ppd_option, "Upper4"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_PUNCH_QUAD_TOP, "RIPunch", "Upper4");
}
if ((ppd_option = ppdFindOption(ppd, "BindEdge")) != NULL)
{
/*
* Add bind finishings...
*/
if (ppdFindChoice(ppd_option, "Left"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_BIND_LEFT, "BindEdge", "Left");
if (ppdFindChoice(ppd_option, "Right"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_BIND_RIGHT, "BindEdge", "Right");
if (ppdFindChoice(ppd_option, "Top"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_BIND_TOP, "BindEdge", "Top");
if (ppdFindChoice(ppd_option, "Bottom"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_BIND_BOTTOM, "BindEdge", "Bottom");
}
if ((ppd_option = ppdFindOption(ppd, "FoldType")) != NULL)
{
/*
* Add (Adobe) fold finishings...
*/
if (ppdFindChoice(ppd_option, "ZFold"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_FOLD_Z, "FoldType", "ZFold");
if (ppdFindChoice(ppd_option, "Saddle"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_FOLD_HALF, "FoldType", "Saddle");
if (ppdFindChoice(ppd_option, "DoubleGate"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_FOLD_DOUBLE_GATE, "FoldType", "DoubleGate");
if (ppdFindChoice(ppd_option, "LeftGate"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_FOLD_LEFT_GATE, "FoldType", "LeftGate");
if (ppdFindChoice(ppd_option, "RightGate"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_FOLD_RIGHT_GATE, "FoldType", "RightGate");
if (ppdFindChoice(ppd_option, "Letter"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_FOLD_LETTER, "FoldType", "Letter");
if (ppdFindChoice(ppd_option, "XFold"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_FOLD_POSTER, "FoldType", "XFold");
}
if ((ppd_option = ppdFindOption(ppd, "RIFoldType")) != NULL)
{
/*
* Add (Ricoh) fold finishings...
*/
if (ppdFindChoice(ppd_option, "OutsideTwoFold"))
pwg_add_finishing(pc->finishings, IPP_FINISHINGS_FOLD_LETTER, "RIFoldType", "OutsideTwoFold");
}
if (cupsArrayCount(pc->finishings) == 0)
{
cupsArrayDelete(pc->finishings);
pc->finishings = NULL;
}
}
/*
* Max copies...
@@ -1781,42 +1846,6 @@ _ppdCacheCreateWithPPD(ppd_file_t *ppd) /* I - PPD file */
if ((ppd_attr = ppdFindAttr(ppd, "APPrinterIconPath", NULL)) != NULL)
cupsArrayAdd(pc->support_files, ppd_attr->value);
/*
* 3D stuff...
*/
if ((ppd_attr = ppdFindAttr(ppd, "cups3D", NULL)) != NULL)
pc->cups_3d = _cupsStrAlloc(ppd_attr->value);
if ((ppd_attr = ppdFindAttr(ppd, "cupsLayerOrder", NULL)) != NULL)
pc->cups_layer_order = _cupsStrAlloc(ppd_attr->value);
if ((ppd_attr = ppdFindAttr(ppd, "cupsAccuracy", NULL)) != NULL)
sscanf(ppd_attr->value, "%d%d%d", pc->cups_accuracy + 0, pc->cups_accuracy + 1, pc->cups_accuracy + 2);
if ((ppd_attr = ppdFindAttr(ppd, "cupsVolume", NULL)) != NULL)
sscanf(ppd_attr->value, "%d%d%d", pc->cups_volume + 0, pc->cups_volume + 1, pc->cups_volume + 2);
for (ppd_attr = ppdFindAttr(ppd, "cupsMaterial", NULL);
ppd_attr;
ppd_attr = ppdFindNextAttr(ppd, "cupsMaterial", NULL))
{
/*
* *cupsMaterial key/name: "name=value ... name=value"
*/
_pwg_material_t *material = (_pwg_material_t *)calloc(1, sizeof(_pwg_material_t));
material->key = _cupsStrAlloc(ppd_attr->name);
material->name = _cupsStrAlloc(ppd_attr->text);
material->num_props = cupsParseOptions(ppd_attr->value, 0, &material->props);
if (!pc->materials)
pc->materials = cupsArrayNew3(NULL, NULL, NULL, 0, NULL, (cups_afree_func_t)pwg_free_material);
cupsArrayAdd(pc->materials, material);
}
/*
* Return the cache data...
*/
@@ -1924,11 +1953,6 @@ _ppdCacheDestroy(_ppd_cache_t *pc) /* I - PPD cache and mapping data */
cupsArrayDelete(pc->support_files);
_cupsStrFree(pc->cups_3d);
_cupsStrFree(pc->cups_layer_order);
cupsArrayDelete(pc->materials);
free(pc);
}
@@ -2686,7 +2710,6 @@ _ppdCacheWriteFile(
cups_option_t *option; /* Current option */
const char *value; /* Filter/pre-filter value */
char newfile[1024]; /* New filename */
_pwg_material_t *m; /* Material */
/*
@@ -2867,32 +2890,6 @@ _ppdCacheWriteFile(
value = (char *)cupsArrayNext(pc->support_files))
cupsFilePutConf(fp, "SupportFile", value);
/*
* 3D stuff...
*/
if (pc->cups_3d)
cupsFilePutConf(fp, "3D", pc->cups_3d);
if (pc->cups_layer_order)
cupsFilePutConf(fp, "LayerOrder", pc->cups_layer_order);
if (pc->cups_accuracy[0] || pc->cups_accuracy[0] || pc->cups_accuracy[2])
cupsFilePrintf(fp, "Accuracy %d %d %d\n", pc->cups_accuracy[0], pc->cups_accuracy[1], pc->cups_accuracy[2]);
if (pc->cups_volume[0] || pc->cups_volume[0] || pc->cups_volume[2])
cupsFilePrintf(fp, "Volume %d %d %d\n", pc->cups_volume[0], pc->cups_volume[1], pc->cups_volume[2]);
for (m = (_pwg_material_t *)cupsArrayFirst(pc->materials);
m;
m = (_pwg_material_t *)cupsArrayNext(pc->materials))
{
cupsFilePrintf(fp, "Material %s \"%s\"", m->key, m->name);
for (i = 0; i < m->num_props; i ++)
cupsFilePrintf(fp, " %s=%s", m->props[i].name, m->props[i].value);
cupsFilePuts(fp, "\n");
}
/*
* IPP attributes, if any...
*/
@@ -2934,6 +2931,7 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
cups_array_t *sizes; /* Media sizes we've added */
ipp_attribute_t *attr, /* xxx-supported */
*defattr, /* xxx-default */
*quality, /* print-quality-supported */
*x_dim, *y_dim; /* Media dimensions */
ipp_t *media_size; /* Media size collection */
char make[256], /* Make and model */
@@ -3032,15 +3030,27 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
if (buffer)
*buffer = '\0';
if (!buffer || bufsize < 1 || !response)
if (!buffer || bufsize < 1)
{
_cupsSetError(IPP_STATUS_ERROR_INTERNAL, strerror(EINVAL), 0);
return (NULL);
}
if (!response)
{
_cupsSetError(IPP_STATUS_ERROR_INTERNAL, _("No IPP attributes."), 1);
return (NULL);
}
/*
* Open a temporary file for the PPD...
*/
if ((fp = cupsTempFile2(buffer, (int)bufsize)) == NULL)
{
_cupsSetError(IPP_STATUS_ERROR_INTERNAL, strerror(errno), 0);
return (NULL);
}
/*
* Standard stuff for PPD file...
@@ -3410,6 +3420,19 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
{ "cardboard", _("Cardboard") },
{ "cardstock", _("Cardstock") },
{ "cd", _("CD") },
{ "com.hp.advanced-photo", _("Advanced Photo Paper") }, /* HP */
{ "com.hp.brochure-glossy", _("Glossy Brochure Paper") }, /* HP */
{ "com.hp.brochure-matte", _("Matte Brochure Paper") }, /* HP */
{ "com.hp.cover-matte", _("Matte Cover Paper") }, /* HP */
{ "com.hp.ecosmart-lite", _("Office Recycled Paper") }, /* HP */
{ "com.hp.everyday-glossy", _("Everyday Glossy Photo Paper") }, /* HP */
{ "com.hp.everyday-matte", _("Everyday Matte Paper") }, /* HP */
{ "com.hp.extra-heavy", _("Extra Heavyweight Paper") }, /* HP */
{ "com.hp.intermediate", _("Multipurpose Paper") }, /* HP */
{ "com.hp.mid-weight", _("Mid-Weight Paper") }, /* HP */
{ "com.hp.premium-inkjet", _("Premium Inkjet Paper") }, /* HP */
{ "com.hp.premium-photo", _("Premium Photo Glossy Paper") }, /* HP */
{ "com.hp.premium-presentation-matte", _("Premium Presentation Matte Paper") }, /* HP */
{ "continuous", _("Continuous") },
{ "continuous-long", _("Continuous Long") },
{ "continuous-short", _("Continuous Short") },
@@ -3457,6 +3480,10 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
{ "gravure-cylinder", _("Gravure Cylinder") },
{ "image-setter-paper", _("Image Setter Paper") },
{ "imaging-cylinder", _("Imaging Cylinder") },
{ "jp.co.canon_photo-paper-plus-glossy-ii", _("Photo Paper Plus Glossy II") }, /* Canon */
{ "jp.co.canon_photo-paper-pro-platinum", _("Photo Paper Pro Platinum") }, /* Canon */
{ "jp.co.canon-photo-paper-plus-glossy-ii", _("Photo Paper Plus Glossy II") }, /* Canon */
{ "jp.co.canon-photo-paper-pro-platinum", _("Photo Paper Pro Platinum") }, /* Canon */
{ "labels", _("Labels") },
{ "labels-colored", _("Colored Labels") },
{ "labels-glossy", _("Glossy Labels") },
@@ -3480,8 +3507,9 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
{ "multi-part-form", _("Multi Part Form") },
{ "other", _("Other") },
{ "paper", _("Paper") },
{ "photo", _("Photo Paper") }, /* HP mis-spelling */
{ "photographic", _("Photo Paper") },
{ "photographic-archival", _("Photographic Archival") },
{ "photographic-archival", _("Archival Photo Paper") },
{ "photographic-film", _("Photo Film") },
{ "photographic-glossy", _("Glossy Photo Paper") },
{ "photographic-high-gloss", _("High Gloss Photo Paper") },
@@ -3508,14 +3536,14 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
{ "single-face", _("Single Face") },
{ "single-wall", _("Single Wall Cardboard") },
{ "sleeve", _("Sleeve") },
{ "stationery", _("Stationery") },
{ "stationery-archival", _("Stationery Archival") },
{ "stationery", _("Plain Paper") },
{ "stationery-archival", _("Archival Paper") },
{ "stationery-coated", _("Coated Paper") },
{ "stationery-cotton", _("Stationery Cotton") },
{ "stationery-cotton", _("Cotton Paper") },
{ "stationery-fine", _("Vellum Paper") },
{ "stationery-heavyweight", _("Heavyweight Paper") },
{ "stationery-heavyweight-coated", _("Stationery Heavyweight Coated") },
{ "stationery-inkjet", _("Stationery Inkjet Paper") },
{ "stationery-heavyweight-coated", _("Heavyweight Coated Paper") },
{ "stationery-inkjet", _("Inkjet Paper") },
{ "stationery-letterhead", _("Letterhead") },
{ "stationery-lightweight", _("Lightweight Paper") },
{ "stationery-preprinted", _("Preprinted Paper") },
@@ -3531,14 +3559,20 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
cupsFilePrintf(fp, "*OpenUI *MediaType: PickOne\n"
"*OrderDependency: 10 AnySetup *MediaType\n"
"*DefaultMediaType: %s\n", ppdname);
for (i = 0; i < (int)(sizeof(media_types) / sizeof(media_types[0])); i ++)
for (i = 0; i < count; i ++)
{
if (!ippContainsString(attr, media_types[i][0]))
continue;
const char *keyword = ippGetString(attr, i, NULL);
pwg_ppdize_name(media_types[i][0], ppdname, sizeof(ppdname));
pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
cupsFilePrintf(fp, "*MediaType %s/%s: \"<</MediaType(%s)>>setpagedevice\"\n", ppdname, _cupsLangString(lang, media_types[i][1]), ppdname);
for (j = 0; j < (int)(sizeof(media_types) / sizeof(media_types[0])); j ++)
if (!strcmp(keyword, media_types[j][0]))
break;
if (j < (int)(sizeof(media_types) / sizeof(media_types[0])))
cupsFilePrintf(fp, "*MediaType %s/%s: \"<</MediaType(%s)>>setpagedevice\"\n", ppdname, _cupsLangString(lang, media_types[j][1]), ppdname);
else
cupsFilePrintf(fp, "*MediaType %s/%s: \"<</MediaType(%s)>>setpagedevice\"\n", ppdname, keyword, ppdname);
}
cupsFilePuts(fp, "*CloseUI: *MediaType\n");
}
@@ -3747,94 +3781,187 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
/*
* Finishing options...
*
* Eventually need to re-add support for finishings-col-database, however
* it is difficult to map arbitrary finishing-template values to PPD options
* and have the right constraints apply (e.g. stapling vs. folding vs.
* punching, etc.)
*/
if ((attr = ippFindAttribute(response, "finishings-col-database", IPP_TAG_BEGIN_COLLECTION)) != NULL)
if ((attr = ippFindAttribute(response, "finishings-supported", IPP_TAG_ENUM)) != NULL)
{
ipp_t *col; /* Collection value */
ipp_attribute_t *template; /* "finishing-template" member */
const char *name; /* String name */
int value; /* Enum value, if any */
int value; /* Enum value */
cups_array_t *names; /* Names we've added */
count = ippGetCount(attr);
names = cupsArrayNew3((cups_array_func_t)strcmp, NULL, NULL, 0, (cups_acopy_func_t)strdup, (cups_afree_func_t)free);
cupsFilePrintf(fp, "*OpenUI *cupsFinishingTemplate/%s: PickMany\n"
"*OrderDependency: 10 AnySetup *cupsFinishingTemplate\n"
"*DefaultcupsFinishingTemplate: none\n"
"*cupsFinishingTemplate none/%s: \"\"\n"
"*cupsIPPFinishings 3/none: \"*cupsFinishingTemplate none\"\n", _cupsLangString(lang, _("Finishing")), _cupsLangString(lang, _("No Finishing")));
/*
* Staple/Bind/Stitch
*/
for (i = 0; i < count; i ++)
{
col = ippGetCollection(attr, i);
template = ippFindAttribute(col, "finishing-template", IPP_TAG_ZERO);
value = ippGetInteger(attr, i);
name = ippEnumString("finishings", value);
if ((name = ippGetString(template, 0, NULL)) == NULL || !strcmp(name, "none"))
continue;
if (!strncmp(name, "staple-", 7) || !strncmp(name, "bind-", 5) || !strncmp(name, "edge-stitch-", 12) || !strcmp(name, "saddle-stitch"))
break;
}
if (cupsArrayFind(names, (char *)name))
continue; /* Already did this finishing template */
if (i < count)
{
cupsFilePrintf(fp, "*OpenUI *StapleLocation/%s: PickOne\n", _cupsLangString(lang, _("Staple")));
cupsFilePuts(fp, "*OrderDependency: 10 AnySetup *StapleLocation\n");
cupsFilePuts(fp, "*DefaultStapleLocation: None\n");
cupsFilePrintf(fp, "*StapleLocation None/%s: \"\"\n", _cupsLangString(lang, _("None")));
cupsArrayAdd(names, (char *)name);
for (j = 0; j < (int)(sizeof(finishings) / sizeof(finishings[0])); j ++)
for (; i < count; i ++)
{
if (!strcmp(finishings[j][0], name))
{
cupsFilePrintf(fp, "*cupsFinishingTemplate %s/%s: \"\"\n", name, _cupsLangString(lang, finishings[j][1]));
value = ippGetInteger(attr, i);
name = ippEnumString("finishings", value);
value = ippEnumValue("finishings", name);
if (strncmp(name, "staple-", 7) && strncmp(name, "bind-", 5) && strncmp(name, "edge-stitch-", 12) && strcmp(name, "saddle-stitch"))
continue;
if (value)
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*cupsFinishingTemplate %s\"\n", value, name, name);
break;
}
if (cupsArrayFind(names, (char *)name))
continue; /* Already did this finishing template */
cupsArrayAdd(names, (char *)name);
for (j = 0; j < (int)(sizeof(finishings) / sizeof(finishings[0])); j ++)
{
if (!strcmp(finishings[j][0], name))
{
cupsFilePrintf(fp, "*StapleLocation %s/%s: \"\"\n", name, _cupsLangString(lang, finishings[j][1]));
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*StapleLocation %s\"\n", value, name, name);
break;
}
}
}
cupsFilePuts(fp, "*CloseUI: *StapleLocation\n");
}
/*
* Fold
*/
for (i = 0; i < count; i ++)
{
value = ippGetInteger(attr, i);
name = ippEnumString("finishings", value);
if (!strncmp(name, "fold-", 5))
break;
}
if (i < count)
{
cupsFilePrintf(fp, "*OpenUI *FoldType/%s: PickOne\n", _cupsLangString(lang, _("Fold")));
cupsFilePuts(fp, "*OrderDependency: 10 AnySetup *FoldType\n");
cupsFilePuts(fp, "*DefaultFoldType: None\n");
cupsFilePrintf(fp, "*FoldType None/%s: \"\"\n", _cupsLangString(lang, _("None")));
for (; i < count; i ++)
{
value = ippGetInteger(attr, i);
name = ippEnumString("finishings", value);
if (strncmp(name, "fold-", 5))
continue;
if (cupsArrayFind(names, (char *)name))
continue; /* Already did this finishing template */
cupsArrayAdd(names, (char *)name);
for (j = 0; j < (int)(sizeof(finishings) / sizeof(finishings[0])); j ++)
{
if (!strcmp(finishings[j][0], name))
{
cupsFilePrintf(fp, "*FoldType %s/%s: \"\"\n", name, _cupsLangString(lang, finishings[j][1]));
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*FoldType %s\"\n", value, name, name);
break;
}
}
}
cupsFilePuts(fp, "*CloseUI: *FoldType\n");
}
/*
* Punch
*/
for (i = 0; i < count; i ++)
{
value = ippGetInteger(attr, i);
name = ippEnumString("finishings", value);
if (!strncmp(name, "punch-", 6))
break;
}
if (i < count)
{
cupsFilePrintf(fp, "*OpenUI *PunchMedia/%s: PickOne\n", _cupsLangString(lang, _("Punch")));
cupsFilePuts(fp, "*OrderDependency: 10 AnySetup *PunchMedia\n");
cupsFilePuts(fp, "*DefaultPunchMedia: None\n");
cupsFilePrintf(fp, "*PunchMedia None/%s: \"\"\n", _cupsLangString(lang, _("None")));
for (i = 0; i < count; i ++)
{
value = ippGetInteger(attr, i);
name = ippEnumString("finishings", value);
if (strncmp(name, "punch-", 6))
continue;
if (cupsArrayFind(names, (char *)name))
continue; /* Already did this finishing template */
cupsArrayAdd(names, (char *)name);
for (j = 0; j < (int)(sizeof(finishings) / sizeof(finishings[0])); j ++)
{
if (!strcmp(finishings[j][0], name))
{
cupsFilePrintf(fp, "*PunchMedia %s/%s: \"\"\n", name, _cupsLangString(lang, finishings[j][1]));
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*PunchMedia %s\"\n", value, name, name);
break;
}
}
}
cupsFilePuts(fp, "*CloseUI: *PunchMedia\n");
}
/*
* Booklet
*/
if (ippContainsInteger(attr, IPP_FINISHINGS_BOOKLET_MAKER))
{
cupsFilePrintf(fp, "*OpenUI *Booklet/%s: Boolean\n", _cupsLangString(lang, _("Booklet")));
cupsFilePuts(fp, "*OrderDependency: 10 AnySetup *Booklet\n");
cupsFilePuts(fp, "*DefaultBooklet: False\n");
cupsFilePuts(fp, "*Booklet False: \"\"\n");
cupsFilePuts(fp, "*Booklet True: \"\"\n");
cupsFilePrintf(fp, "*cupsIPPFinishings %d/booklet-maker: \"*Booklet True\"\n", IPP_FINISHINGS_BOOKLET_MAKER);
cupsFilePuts(fp, "*CloseUI: *Booklet\n");
}
cupsArrayDelete(names);
cupsFilePuts(fp, "*CloseUI: *cupsFinishingTemplate\n");
}
else if ((attr = ippFindAttribute(response, "finishings-supported", IPP_TAG_ENUM)) != NULL && (count = ippGetCount(attr)) > 1 )
{
const char *name; /* String name */
int value; /* Enum value, if any */
count = ippGetCount(attr);
cupsFilePrintf(fp, "*OpenUI *cupsFinishingTemplate/%s: PickMany\n"
"*OrderDependency: 10 AnySetup *cupsFinishingTemplate\n"
"*DefaultcupsFinishingTemplate: none\n"
"*cupsFinishingTemplate none/%s: \"\"\n"
"*cupsIPPFinishings 3/none: \"*cupsFinishingTemplate none\"\n", _cupsLangString(lang, _("Finishing")), _cupsLangString(lang, _("No Finishing")));
for (i = 0; i < count; i ++)
{
if ((value = ippGetInteger(attr, i)) == 3)
continue;
name = ippEnumString("finishings", value);
for (j = 0; j < (int)(sizeof(finishings) / sizeof(finishings[0])); j ++)
{
if (!strcmp(finishings[j][0], name))
{
cupsFilePrintf(fp, "*cupsFinishingTemplate %s/%s: \"\"\n", name, _cupsLangString(lang, finishings[j][1]));
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*cupsFinishingTemplate %s\"\n", value, name, name);
break;
}
}
}
cupsFilePuts(fp, "*CloseUI: *cupsFinishingTemplate\n");
}
/*
* cupsPrintQuality and DefaultResolution...
*/
quality = ippFindAttribute(response, "print-quality-supported", IPP_TAG_ENUM);
if ((attr = ippFindAttribute(response, "pwg-raster-document-resolution-supported", IPP_TAG_RESOLUTION)) != NULL)
{
count = ippGetCount(attr);
@@ -3845,16 +3972,19 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
cupsFilePrintf(fp, "*OpenUI *cupsPrintQuality/%s: PickOne\n"
"*OrderDependency: 10 AnySetup *cupsPrintQuality\n"
"*DefaultcupsPrintQuality: Normal\n", _cupsLangString(lang, _("Print Quality")));
if (count > 2)
if (count > 2 || ippContainsInteger(quality, IPP_QUALITY_DRAFT))
{
pwg_ppdize_resolution(attr, 0, &xres, &yres, NULL, 0);
cupsFilePrintf(fp, "*cupsPrintQuality Draft/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Draft")), xres, yres);
}
pwg_ppdize_resolution(attr, count / 2, &xres, &yres, NULL, 0);
cupsFilePrintf(fp, "*cupsPrintQuality Normal/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Normal")), xres, yres);
if (count > 1)
if (count > 1 || ippContainsInteger(quality, IPP_QUALITY_HIGH))
{
pwg_ppdize_resolution(attr, count - 1, &xres, &yres, NULL, 0);
if (count > 1)
pwg_ppdize_resolution(attr, count - 1, &xres, &yres, NULL, 0);
else
pwg_ppdize_resolution(attr, 0, &xres, &yres, NULL, 0);
cupsFilePrintf(fp, "*cupsPrintQuality High/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("High")), xres, yres);
}
@@ -3901,21 +4031,40 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
"*DefaultcupsPrintQuality: Normal\n", _cupsLangString(lang, _("Print Quality")));
if ((lowdpi & 1) == 0)
cupsFilePrintf(fp, "*cupsPrintQuality Draft/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Draft")), lowdpi, lowdpi / 2);
else if (ippContainsInteger(quality, IPP_QUALITY_DRAFT))
cupsFilePrintf(fp, "*cupsPrintQuality Draft/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Draft")), lowdpi, lowdpi);
cupsFilePrintf(fp, "*cupsPrintQuality Normal/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Normal")), lowdpi, lowdpi);
if (hidpi > lowdpi)
if (hidpi > lowdpi || ippContainsInteger(quality, IPP_QUALITY_HIGH))
cupsFilePrintf(fp, "*cupsPrintQuality High/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("High")), hidpi, hidpi);
cupsFilePuts(fp, "*CloseUI: *cupsPrintQuality\n");
}
}
else if (is_apple || is_pwg)
goto bad_ppd;
else if ((attr = ippFindAttribute(response, "printer-resolution-default", IPP_TAG_RESOLUTION)) != NULL)
{
pwg_ppdize_resolution(attr, 0, &xres, &yres, ppdname, sizeof(ppdname));
cupsFilePrintf(fp, "*DefaultResolution: %s\n", ppdname);
}
else
cupsFilePuts(fp, "*DefaultResolution: 300dpi\n");
{
if ((attr = ippFindAttribute(response, "printer-resolution-default", IPP_TAG_RESOLUTION)) != NULL)
{
pwg_ppdize_resolution(attr, 0, &xres, &yres, ppdname, sizeof(ppdname));
}
else
{
xres = yres = 300;
strlcpy(ppdname, "300dpi", sizeof(ppdname));
}
cupsFilePrintf(fp, "*DefaultResolution: %s\n", ppdname);
cupsFilePrintf(fp, "*OpenUI *cupsPrintQuality/%s: PickOne\n"
"*OrderDependency: 10 AnySetup *cupsPrintQuality\n"
"*DefaultcupsPrintQuality: Normal\n", _cupsLangString(lang, _("Print Quality")));
if (ippContainsInteger(quality, IPP_QUALITY_DRAFT))
cupsFilePrintf(fp, "*cupsPrintQuality Draft/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Draft")), xres, yres);
cupsFilePrintf(fp, "*cupsPrintQuality Normal/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("Normal")), xres, yres);
if (ippContainsInteger(quality, IPP_QUALITY_HIGH))
cupsFilePrintf(fp, "*cupsPrintQuality High/%s: \"<</HWResolution[%d %d]>>setpagedevice\"\n", _cupsLangString(lang, _("High")), xres, yres);
cupsFilePuts(fp, "*CloseUI: *cupsPrintQuality\n");
}
/*
* Close up and return...
@@ -3935,6 +4084,8 @@ _ppdCreateFromIPP(char *buffer, /* I - Filename buffer */
unlink(buffer);
*buffer = '\0';
_cupsSetError(IPP_STATUS_ERROR_INTERNAL, _("Printer does not support required IPP attributes or document formats."), 1);
return (NULL);
}
@@ -4094,11 +4245,35 @@ _pwgPageSizeForMedia(
}
/*
* 'pwg_add_finishing()' - Add a finishings value.
*/
static void
pwg_add_finishing(
cups_array_t *finishings, /* I - Finishings array */
ipp_finishings_t template, /* I - Finishing template */
const char *name, /* I - PPD option */
const char *value) /* I - PPD choice */
{
_pwg_finishings_t *f; /* New finishings value */
if ((f = (_pwg_finishings_t *)calloc(1, sizeof(_pwg_finishings_t))) != NULL)
{
f->value = template;
f->num_options = cupsAddOption(name, value, 0, &f->options);
cupsArrayAdd(finishings, f);
}
}
/*
* 'pwg_compare_finishings()' - Compare two finishings values.
*/
static int /* O- Result of comparison */
static int /* O - Result of comparison */
pwg_compare_finishings(
_pwg_finishings_t *a, /* I - First finishings value */
_pwg_finishings_t *b) /* I - Second finishings value */
@@ -4120,22 +4295,6 @@ pwg_free_finishings(
}
/*
* 'pwg_free_material()' - Free a material value.
*/
static void
pwg_free_material(_pwg_material_t *m) /* I - Material value */
{
_cupsStrFree(m->key);
_cupsStrFree(m->name);
cupsFreeOptions(m->num_props, m->props);
free(m);
}
/*
* 'pwg_ppdize_name()' - Convert an IPP keyword to a PPD keyword.
*/
+2 -2
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* PPD localization routines for CUPS.
*
* Copyright 2007-2016 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -665,7 +665,7 @@ _ppdLocalizedAttr(ppd_file_t *ppd, /* I - PPD file */
/*
* <rdar://problem/22130168>
*
* Hong Kong locale needs special handling... Sigh...
* Multiple locales need special handling... Sigh...
*/
if (!strcmp(ll_CC, "zh_HK"))
+3 -16
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* Private PPD definitions for CUPS.
*
* Copyright 2007-2015 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -47,7 +47,7 @@ extern "C" {
* Constants...
*/
# define _PPD_CACHE_VERSION 7 /* Version number in cache file */
# define _PPD_CACHE_VERSION 8 /* Version number in cache file */
/*
@@ -100,7 +100,7 @@ typedef enum _pwg_print_color_mode_e /**** PWG print-color-mode indices ****/
{
_PWG_PRINT_COLOR_MODE_MONOCHROME = 0, /* print-color-mode=monochrome */
_PWG_PRINT_COLOR_MODE_COLOR, /* print-color-mode=color */
/* Other proposed values are not supported by CUPS yet. */
/* Other values are not supported by CUPS yet. */
_PWG_PRINT_COLOR_MODE_MAX
} _pwg_print_color_mode_t;
@@ -119,14 +119,6 @@ typedef struct _pwg_finishings_s /**** PWG finishings mapping data ****/
cups_option_t *options; /* Options to apply */
} _pwg_finishings_t;
typedef struct _pwg_material_s /**** PWG material mapping data ****/
{
char *key, /* material-key value */
*name; /* material-name value */
int num_props; /* Number of properties */
cups_option_t *props; /* Material properties */
} _pwg_material_t;
struct _ppd_cache_s /**** PPD cache and PWG conversion data ****/
{
int num_bins; /* Number of output bins */
@@ -166,11 +158,6 @@ struct _ppd_cache_s /**** PPD cache and PWG conversion data ****/
cups_array_t *mandatory; /* cupsMandatory value */
char *charge_info_uri; /* cupsChargeInfoURI value */
cups_array_t *support_files; /* Support files - ICC profiles, etc. */
char *cups_3d, /* cups3D value */
*cups_layer_order; /* cupsLayerOrder value */
int cups_accuracy[3]; /* cupsAccuracy value - x, y, and z in nanometers */
int cups_volume[3]; /* cupsVolume value - x, y, and z in millimeters */
cups_array_t *materials; /* cupsMaterial values */
};
+18 -2
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* PPD file routines for CUPS.
*
* Copyright 2007-2015 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -579,12 +579,28 @@ _ppdOpen(
/*
* <rdar://problem/22130168>
* <rdar://problem/27245567>
*
* Need to use a different base language for some locales...
*/
if (!strcmp(lang->language, "zh_HK"))
strlcpy(ll, "zh_TW.", sizeof(ll));
{ /* Traditional Chinese + variants */
strlcpy(ll_CC, "zh_TW.", sizeof(ll_CC));
strlcpy(ll, "zh_", sizeof(ll));
}
else if (!strncmp(lang->language, "zh", 2))
strlcpy(ll, "zh_", sizeof(ll)); /* Any Chinese variant */
else if (!strncmp(lang->language, "jp", 2))
{ /* Any Japanese variant */
strlcpy(ll_CC, "ja", sizeof(ll_CC));
strlcpy(ll, "jp", sizeof(ll));
}
else if (!strncmp(lang->language, "nb", 2) || !strncmp(lang->language, "no", 2))
{ /* Any Norwegian variant */
strlcpy(ll_CC, "nb", sizeof(ll_CC));
strlcpy(ll, "no", sizeof(ll));
}
else
snprintf(ll, sizeof(ll), "%2.2s.", lang->language);
+1 -1
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* PWG media name API implementation for CUPS.
*
* Copyright 2009-2016 by Apple Inc.
* Copyright 2009-2017 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
+1 -1
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* PPD test program for CUPS.
*
* Copyright 2007-2015 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
+16 -2
Ver Arquivo
@@ -41,6 +41,8 @@ static int tls_auto_create = 0;
static char *tls_common_name = NULL;
/* Default common name */
#ifdef HAVE_SECKEYCHAINOPEN
static int tls_cups_keychain = 0;
/* Opened the CUPS keychain? */
static SecKeychainRef tls_keychain = NULL;
/* Server cert keychain */
#else
@@ -1747,6 +1749,7 @@ http_cdsa_copy_server(
CFMutableDictionaryRef query = NULL; /* Query qualifiers */
CFArrayRef list = NULL; /* Keychain list */
SecKeychainRef syschain = NULL;/* System keychain */
SecKeychainStatus status = 0; /* Keychain status */
DEBUG_printf(("3http_cdsa_copy_server(common_name=\"%s\")", common_name));
@@ -1769,6 +1772,11 @@ http_cdsa_copy_server(
_cupsMutexLock(&tls_mutex);
err = SecKeychainGetStatus(tls_keychain, &status);
if (err == noErr && !(status & kSecUnlockStateStatus) && tls_cups_keychain)
SecKeychainUnlock(tls_keychain, _CUPS_CDSA_PASSLEN, _CUPS_CDSA_PASSWORD, TRUE);
CFDictionaryAddValue(query, kSecClass, kSecClassIdentity);
CFDictionaryAddValue(query, kSecMatchPolicy, policy);
CFDictionaryAddValue(query, kSecReturnRef, kCFBooleanTrue);
@@ -1901,9 +1909,15 @@ http_cdsa_open_keychain(
*/
if (!path)
{
path = http_cdsa_default_path(filename, filesize);
tls_cups_keychain = 1;
}
else
{
strlcpy(filename, path, filesize);
tls_cups_keychain = 0;
}
/*
* Save the interaction setting and disable while we open the keychain...
@@ -1912,7 +1926,7 @@ http_cdsa_open_keychain(
SecKeychainGetUserInteractionAllowed(&interaction);
SecKeychainSetUserInteractionAllowed(FALSE);
if (access(path, R_OK))
if (access(path, R_OK) && tls_cups_keychain)
{
/*
* Create a new keychain at the given path...
@@ -1931,7 +1945,7 @@ http_cdsa_open_keychain(
if (err == noErr)
err = SecKeychainGetStatus(keychain, &status);
if (err == noErr && !(status & kSecUnlockStateStatus))
if (err == noErr && !(status & kSecUnlockStateStatus) && tls_cups_keychain)
err = SecKeychainUnlock(keychain, _CUPS_CDSA_PASSLEN, _CUPS_CDSA_PASSWORD, TRUE);
}
+467 -401
Ver Arquivo
Diferenças do arquivo suprimidas por serem muito extensas Carregar Diff
+82 -66
Ver Arquivo
@@ -473,13 +473,13 @@
"0" = "0";
"1" = "1";
"1 inch/sec." = "1 inch/sec.";
"1.25x0.25\"" = "1.25x0.25\"";
"1.25x2.25\"" = "1.25x2.25\"";
"1.25x0.25\"" = "1.25x0.25";
"1.25x2.25\"" = "1.25x2.25";
"1.5 inch/sec." = "1.5 inch/sec.";
"1.50x0.25\"" = "1.50x0.25\"";
"1.50x0.50\"" = "1.50x0.50\"";
"1.50x1.00\"" = "1.50x1.00\"";
"1.50x2.00\"" = "1.50x2.00\"";
"1.50x0.25\"" = "1.50x0.25";
"1.50x0.50\"" = "1.50x0.50";
"1.50x1.00\"" = "1.50x1.00";
"1.50x2.00\"" = "1.50x2.00";
"10" = "10";
"10 inches/sec." = "10 inches/sec.";
"10 x 11" = "10 x 11";
@@ -519,24 +519,24 @@
"2-Hole Punch (Reverse Landscape)" = "2-Hole Punch (Reverse Landscape)";
"2-Hole Punch (Reverse Portrait)" = "2-Hole Punch (Reverse Portrait)";
"2-Sided Printing" = "2-Sided Printing";
"2.00x0.37\"" = "2.00x0.37\"";
"2.00x0.50\"" = "2.00x0.50\"";
"2.00x1.00\"" = "2.00x1.00\"";
"2.00x1.25\"" = "2.00x1.25\"";
"2.00x2.00\"" = "2.00x2.00\"";
"2.00x3.00\"" = "2.00x3.00\"";
"2.00x4.00\"" = "2.00x4.00\"";
"2.00x5.50\"" = "2.00x5.50\"";
"2.25x0.50\"" = "2.25x0.50\"";
"2.25x1.25\"" = "2.25x1.25\"";
"2.25x4.00\"" = "2.25x4.00\"";
"2.25x5.50\"" = "2.25x5.50\"";
"2.38x5.50\"" = "2.38x5.50\"";
"2.00x0.37\"" = "2.00x0.37";
"2.00x0.50\"" = "2.00x0.50";
"2.00x1.00\"" = "2.00x1.00";
"2.00x1.25\"" = "2.00x1.25";
"2.00x2.00\"" = "2.00x2.00";
"2.00x3.00\"" = "2.00x3.00";
"2.00x4.00\"" = "2.00x4.00";
"2.00x5.50\"" = "2.00x5.50";
"2.25x0.50\"" = "2.25x0.50";
"2.25x1.25\"" = "2.25x1.25";
"2.25x4.00\"" = "2.25x4.00";
"2.25x5.50\"" = "2.25x5.50";
"2.38x5.50\"" = "2.38x5.50";
"2.5 inches/sec." = "2.5 inches/sec.";
"2.50x1.00\"" = "2.50x1.00\"";
"2.50x2.00\"" = "2.50x2.00\"";
"2.75x1.25\"" = "2.75x1.25\"";
"2.9 x 1\"" = "2.9 x 1\"";
"2.50x1.00\"" = "2.50x1.00";
"2.50x2.00\"" = "2.50x2.00";
"2.75x1.25\"" = "2.75x1.25";
"2.9 x 1\"" = "2.9 x 1";
"20" = "20";
"20 mm/sec." = "20 mm/sec.";
"200 mm/sec." = "200 mm/sec.";
@@ -560,19 +560,19 @@
"3-Hole Punch (Portrait)" = "3-Hole Punch (Portrait)";
"3-Hole Punch (Reverse Landscape)" = "3-Hole Punch (Reverse Landscape)";
"3-Hole Punch (Reverse Portrait)" = "3-Hole Punch (Reverse Portrait)";
"3.00x1.00\"" = "3.00x1.00\"";
"3.00x1.25\"" = "3.00x1.25\"";
"3.00x2.00\"" = "3.00x2.00\"";
"3.00x3.00\"" = "3.00x3.00\"";
"3.00x5.00\"" = "3.00x5.00\"";
"3.25x2.00\"" = "3.25x2.00\"";
"3.25x5.00\"" = "3.25x5.00\"";
"3.25x5.50\"" = "3.25x5.50\"";
"3.25x5.83\"" = "3.25x5.83\"";
"3.25x7.83\"" = "3.25x7.83\"";
"3.00x1.00\"" = "3.00x1.00";
"3.00x1.25\"" = "3.00x1.25";
"3.00x2.00\"" = "3.00x2.00";
"3.00x3.00\"" = "3.00x3.00";
"3.00x5.00\"" = "3.00x5.00";
"3.25x2.00\"" = "3.25x2.00";
"3.25x5.00\"" = "3.25x5.00";
"3.25x5.50\"" = "3.25x5.50";
"3.25x5.83\"" = "3.25x5.83";
"3.25x7.83\"" = "3.25x7.83";
"3.5 x 5" = "3.5 x 5";
"3.5\" Disk" = "3.5\" Disk";
"3.50x1.00\"" = "3.50x1.00\"";
"3.5\" Disk" = "3.5 Disk";
"3.50x1.00\"" = "3.50x1.00";
"30" = "30";
"30 mm/sec." = "30 mm/sec.";
"300 mm/sec." = "300 mm/sec.";
@@ -586,15 +586,15 @@
"4-Hole Punch (Portrait)" = "4-Hole Punch (Portrait)";
"4-Hole Punch (Reverse Landscape)" = "4-Hole Punch (Reverse Landscape)";
"4-Hole Punch (Reverse Portrait)" = "4-Hole Punch (Reverse Portrait)";
"4.00x1.00\"" = "4.00x1.00\"";
"4.00x13.00\"" = "4.00x13.00\"";
"4.00x2.00\"" = "4.00x2.00\"";
"4.00x2.50\"" = "4.00x2.50\"";
"4.00x3.00\"" = "4.00x3.00\"";
"4.00x4.00\"" = "4.00x4.00\"";
"4.00x5.00\"" = "4.00x5.00\"";
"4.00x6.00\"" = "4.00x6.00\"";
"4.00x6.50\"" = "4.00x6.50\"";
"4.00x1.00\"" = "4.00x1.00";
"4.00x13.00\"" = "4.00x13.00";
"4.00x2.00\"" = "4.00x2.00";
"4.00x2.50\"" = "4.00x2.50";
"4.00x3.00\"" = "4.00x3.00";
"4.00x4.00\"" = "4.00x4.00";
"4.00x5.00\"" = "4.00x5.00";
"4.00x6.00\"" = "4.00x6.00";
"4.00x6.50\"" = "4.00x6.50";
"40" = "40";
"40 mm/sec." = "40 mm/sec.";
"45" = "45";
@@ -605,13 +605,13 @@
"55" = "55";
"6" = "6";
"6 inches/sec." = "6 inches/sec.";
"6.00x1.00\"" = "6.00x1.00\"";
"6.00x2.00\"" = "6.00x2.00\"";
"6.00x3.00\"" = "6.00x3.00\"";
"6.00x4.00\"" = "6.00x4.00\"";
"6.00x5.00\"" = "6.00x5.00\"";
"6.00x6.00\"" = "6.00x6.00\"";
"6.00x6.50\"" = "6.00x6.50\"";
"6.00x1.00\"" = "6.00x1.00";
"6.00x2.00\"" = "6.00x2.00";
"6.00x3.00\"" = "6.00x3.00";
"6.00x4.00\"" = "6.00x4.00";
"6.00x5.00\"" = "6.00x5.00";
"6.00x6.00\"" = "6.00x6.00";
"6.00x6.50\"" = "6.00x6.50";
"60" = "60";
"60 mm/sec." = "60 mm/sec.";
"600dpi" = "600dpi";
@@ -626,13 +626,13 @@
"8" = "8";
"8 inches/sec." = "8 inches/sec.";
"8 x 10" = "8 x 10";
"8.00x1.00\"" = "8.00x1.00\"";
"8.00x2.00\"" = "8.00x2.00\"";
"8.00x3.00\"" = "8.00x3.00\"";
"8.00x4.00\"" = "8.00x4.00\"";
"8.00x5.00\"" = "8.00x5.00\"";
"8.00x6.00\"" = "8.00x6.00\"";
"8.00x6.50\"" = "8.00x6.50\"";
"8.00x1.00\"" = "8.00x1.00";
"8.00x2.00\"" = "8.00x2.00";
"8.00x3.00\"" = "8.00x3.00";
"8.00x4.00\"" = "8.00x4.00";
"8.00x5.00\"" = "8.00x5.00";
"8.00x6.00\"" = "8.00x6.00";
"8.00x6.50\"" = "8.00x6.50";
"80" = "80";
"80 mm/sec." = "80 mm/sec.";
"85" = "85";
@@ -690,6 +690,7 @@
"Add RSS Subscription" = "Add RSS Subscription";
"Address" = "Address";
"Administration" = "Administration";
"Advanced Photo Paper" = "Advanced Photo Paper";
"Alternate" = "Alternate";
"Alternate Roll" = "Alternate Roll";
"Aluminum" = "Aluminum";
@@ -698,6 +699,8 @@
"Applicator" = "Applicator";
"Archival Envelope" = "Archival Envelope";
"Archival Fabric" = "Archival Fabric";
"Archival Paper" = "Archival Paper";
"Archival Photo Paper" = "Archival Photo Paper";
"Attempt to set %s printer-state to bad value %d." = "Attempt to set %s printer-state to bad value %d.";
"Attribute \"%s\" is in the wrong group." = "Attribute “%s” is in the wrong group.";
"Attribute \"%s\" is the wrong value type." = "Attribute “%s” is the wrong value type.";
@@ -768,6 +771,7 @@
"Bind (Reverse Portrait)" = "Bind (Reverse Portrait)";
"Bond Envelope" = "Bond Envelope";
"Bond Paper" = "Bond Paper";
"Booklet" = "Booklet";
"Booklet Maker" = "Booklet Maker";
"Boolean expected for waiteof option \"%s\"." = "Boolean expected for waiteof option “%s”.";
"Bottom" = "Bottom";
@@ -808,6 +812,7 @@
"Control file sent successfully." = "Control file sent successfully.";
"Copying print data." = "Copying print data.";
"Cotton Envelope" = "Cotton Envelope";
"Cotton Paper" = "Cotton Paper";
"Cover" = "Cover";
"Created" = "Created";
"Credentials do not validate against site CA certificate." = "Credentials do not validate against site CA certificate.";
@@ -929,10 +934,13 @@
"Every 8 Labels" = "Every 8 Labels";
"Every 9 Labels" = "Every 9 Labels";
"Every Label" = "Every Label";
"Everyday Glossy Photo Paper" = "Everyday Glossy Photo Paper";
"Everyday Matte Paper" = "Everyday Matte Paper";
"Executive" = "Executive";
"Expectation Failed" = "Expectation Failed";
"Export Printers to Samba" = "Export Printers to Samba";
"Expressions:" = "Expressions:";
"Extra Heavyweight Paper" = "Extra Heavyweight Paper";
"FAIL" = "FAIL";
"Fabric" = "Fabric";
"Face Down" = "Face Down";
@@ -951,7 +959,6 @@
"Film" = "Film";
"Fine Envelope" = "Fine Envelope";
"Finished page %d." = "Finished page %d.";
"Finishing" = "Finishing";
"Flexo Base" = "Flexo Base";
"Flexo Photo Polymer" = "Flexo Photo Polymer";
"Flute" = "Flute";
@@ -969,6 +976,7 @@
"Glass Opaque" = "Glass Opaque";
"Glass Surfaced" = "Glass Surfaced";
"Glass Textured" = "Glass Textured";
"Glossy Brochure Paper" = "Glossy Brochure Paper";
"Glossy Fabric" = "Glossy Fabric";
"Glossy Labels" = "Glossy Labels";
"Glossy Optical Disc" = "Glossy Optical Disc";
@@ -983,6 +991,7 @@
"Half Z Fold" = "Half Z Fold";
"Hanging Folder" = "Hanging Folder";
"Hash buffer too small." = "Hash buffer too small.";
"Heavyweight Coated Paper" = "Heavyweight Coated Paper";
"Heavyweight Envelope" = "Heavyweight Envelope";
"Heavyweight Paper" = "Heavyweight Paper";
"Help file not in index." = "Help file not in index.";
@@ -1024,6 +1033,7 @@
"Imaging Cylinder" = "Imaging Cylinder";
"Inkjet Envelope" = "Inkjet Envelope";
"Inkjet Labels" = "Inkjet Labels";
"Inkjet Paper" = "Inkjet Paper";
"Installable Options" = "Installable Options";
"Installed" = "Installed";
"IntelliBar Label Printer" = "IntelliBar Label Printer";
@@ -1112,6 +1122,8 @@
"Main Roll" = "Main Roll";
"Manual" = "Manual";
"Manual Feed" = "Manual Feed";
"Matte Brochure Paper" = "Matte Brochure Paper";
"Matte Cover Paper" = "Matte Cover Paper";
"Matte Fabric" = "Matte Fabric";
"Matte Labels" = "Matte Labels";
"Matte Optical Disc" = "Matte Optical Disc";
@@ -1128,6 +1140,7 @@
"Metal Matte" = "Metal Matte";
"Metal Satin" = "Metal Satin";
"Metal Semi Gloss" = "Metal Semi Gloss";
"Mid-Weight Paper" = "Mid-Weight Paper";
"Middle" = "Middle";
"Missing CloseGroup" = "Missing CloseGroup";
"Missing PPD-Adobe-4.x header" = "Missing PPD-Adobe-4.x header";
@@ -1164,6 +1177,7 @@
"Multi-Hole Punch (Reverse Landscape)" = "Multi-Hole Punch (Reverse Landscape)";
"Multi-Hole Punch (Reverse Portrait)" = "Multi-Hole Punch (Reverse Portrait)";
"Multipurpose" = "Multipurpose";
"Multipurpose Paper" = "Multipurpose Paper";
"My Mailbox" = "My Mailbox";
"NULL PPD file pointer" = "NULL PPD file pointer";
"Name OID uses indefinite length" = "Name OID uses indefinite length";
@@ -1173,7 +1187,7 @@
"New credentials are older than stored credentials." = "New credentials are older than stored credentials.";
"No" = "No";
"No Content" = "No Content";
"No Finishing" = "No Finishing";
"No IPP attributes." = "No IPP attributes.";
"No PPD name" = "No PPD name";
"No VarBind SEQUENCE" = "No VarBind SEQUENCE";
"No Windows printer drivers are installed." = "No Windows printer drivers are installed.";
@@ -1208,6 +1222,7 @@
"No version number" = "No version number";
"Non-continuous (Mark sensing)" = "Non-continuous (Mark sensing)";
"Non-continuous (Web sensing)" = "Non-continuous (Web sensing)";
"None" = "None";
"Normal" = "Normal";
"Not Found" = "Not Found";
"Not Implemented" = "Not Implemented";
@@ -1219,6 +1234,7 @@
"Note: this program only validates the DSC comments, not the PostScript itself." = "Note: this program only validates the DSC comments, not the PostScript itself.";
"OK" = "OK";
"Off (1-Sided)" = "Off (1-Sided)";
"Office Recycled Paper" = "Office Recycled Paper";
"Oki" = "Oki";
"Online Help" = "Online Help";
"Only local users can create a local printer." = "Only local users can create a local printer.";
@@ -1265,7 +1281,8 @@
"Photo Film" = "Photo Film";
"Photo Labels" = "Photo Labels";
"Photo Paper" = "Photo Paper";
"Photographic Archival" = "Photographic Archival";
"Photo Paper Plus Glossy II" = "Photo Paper Plus Glossy II";
"Photo Paper Pro Platinum" = "Photo Paper Pro Platinum";
"Plain Envelope" = "Plain Envelope";
"Plain Paper" = "Plain Paper";
"Plastic" = "Plastic";
@@ -1287,6 +1304,9 @@
"Postcard Long Edge" = "Postcard Long Edge";
"Poster Fold" = "Poster Fold";
"Pre Cut Tabs" = "Pre Cut Tabs";
"Premium Inkjet Paper" = "Premium Inkjet Paper";
"Premium Photo Glossy Paper" = "Premium Photo Glossy Paper";
"Premium Presentation Matte Paper" = "Premium Presentation Matte Paper";
"Preparing to print." = "Preparing to print.";
"Preprinted Envelope" = "Preprinted Envelope";
"Preprinted Paper" = "Preprinted Paper";
@@ -1313,6 +1333,7 @@
"Printer Settings" = "Printer Settings";
"Printer cannot print supplied content." = "Printer cannot print supplied content.";
"Printer cannot print with supplied options." = "Printer cannot print with supplied options.";
"Printer does not support required IPP attributes or document formats." = "Printer does not support required IPP attributes or document formats.";
"Printer:" = "Printer:";
"Printers" = "Printers";
"Printing page %d, %u%% complete." = "Printing page %d, %u%% complete.";
@@ -1417,11 +1438,6 @@
"Starting Banner" = "Starting Banner";
"Starting page %d." = "Starting page %d.";
"Statement" = "Statement";
"Stationery" = "Stationery";
"Stationery Archival" = "Stationery Archival";
"Stationery Cotton" = "Stationery Cotton";
"Stationery Heavyweight Coated" = "Stationery Heavyweight Coated";
"Stationery Inkjet Paper" = "Stationery Inkjet Paper";
"Subscription #%d does not exist." = "Subscription #%d does not exist.";
"Substitutions:" = "Substitutions:";
"Super A" = "Super A";
+69 -21
Ver Arquivo
@@ -32,7 +32,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 1.4.6\n"
"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
"POT-Creation-Date: 2017-01-03 16:43-0500\n"
"POT-Creation-Date: 2017-03-11 10:02-0500\n"
"PO-Revision-Date: 2012-09-29 11:21+0200\n"
"Last-Translator: Àngel Mompó <mecatxis@gmail.com>\n"
"Language-Team: Catalan <ca@dodds.net>\n"
@@ -2701,6 +2701,9 @@ msgstr "Adreça"
msgid "Administration"
msgstr "Administració"
msgid "Advanced Photo Paper"
msgstr ""
msgid "Alternate"
msgstr ""
@@ -2725,6 +2728,12 @@ msgstr ""
msgid "Archival Fabric"
msgstr ""
msgid "Archival Paper"
msgstr ""
msgid "Archival Photo Paper"
msgstr ""
#, c-format
msgid "Attempt to set %s printer-state to bad value %d."
msgstr ""
@@ -2958,6 +2967,9 @@ msgstr ""
msgid "Bond Paper"
msgstr "Paper de valors"
msgid "Booklet"
msgstr ""
msgid "Booklet Maker"
msgstr ""
@@ -3086,6 +3098,9 @@ msgstr "Es copien les dades d'impressió."
msgid "Cotton Envelope"
msgstr ""
msgid "Cotton Paper"
msgstr ""
msgid "Cover"
msgstr ""
@@ -3474,6 +3489,12 @@ msgstr "Cada 9 etiquetes"
msgid "Every Label"
msgstr "Cada etiqueta"
msgid "Everyday Glossy Photo Paper"
msgstr ""
msgid "Everyday Matte Paper"
msgstr ""
msgid "Executive"
msgstr "Executiu"
@@ -3486,6 +3507,9 @@ msgstr "Exportar les impressores al Samba"
msgid "Expressions:"
msgstr ""
msgid "Extra Heavyweight Paper"
msgstr ""
msgid "FAIL"
msgstr "ERROR"
@@ -3549,9 +3573,6 @@ msgstr ""
msgid "Finished page %d."
msgstr "S'ha acabat la pàgina %d."
msgid "Finishing"
msgstr ""
msgid "Flexo Base"
msgstr ""
@@ -3603,6 +3624,9 @@ msgstr ""
msgid "Glass Textured"
msgstr ""
msgid "Glossy Brochure Paper"
msgstr ""
msgid "Glossy Fabric"
msgstr ""
@@ -3645,6 +3669,9 @@ msgstr "Carpeta per penjar"
msgid "Hash buffer too small."
msgstr ""
msgid "Heavyweight Coated Paper"
msgstr ""
msgid "Heavyweight Envelope"
msgstr ""
@@ -3771,6 +3798,9 @@ msgstr ""
msgid "Inkjet Labels"
msgstr ""
msgid "Inkjet Paper"
msgstr ""
msgid "Installable Options"
msgstr "Opcions instal·lables"
@@ -4046,6 +4076,12 @@ msgstr ""
msgid "Manual Feed"
msgstr "Alimentació manual"
msgid "Matte Brochure Paper"
msgstr ""
msgid "Matte Cover Paper"
msgstr ""
msgid "Matte Fabric"
msgstr ""
@@ -4094,6 +4130,9 @@ msgstr ""
msgid "Metal Semi Gloss"
msgstr ""
msgid "Mid-Weight Paper"
msgstr ""
msgid "Middle"
msgstr ""
@@ -4214,6 +4253,9 @@ msgstr ""
msgid "Multipurpose"
msgstr ""
msgid "Multipurpose Paper"
msgstr ""
msgid "My Mailbox"
msgstr ""
@@ -4241,7 +4283,7 @@ msgstr "No"
msgid "No Content"
msgstr "No hi ha contingut"
msgid "No Finishing"
msgid "No IPP attributes."
msgstr ""
msgid "No PPD name"
@@ -4349,6 +4391,9 @@ msgstr "Discontinu (sensible a les marques)"
msgid "Non-continuous (Web sensing)"
msgstr "Discontinu (Sensible al web)"
msgid "None"
msgstr ""
msgid "Normal"
msgstr "Normal"
@@ -4385,6 +4430,9 @@ msgstr "D'acord"
msgid "Off (1-Sided)"
msgstr "Inactiu (Una cara)"
msgid "Office Recycled Paper"
msgstr ""
msgid "Oki"
msgstr "Oki"
@@ -4527,7 +4575,10 @@ msgstr "Etiquetes de fotografia"
msgid "Photo Paper"
msgstr ""
msgid "Photographic Archival"
msgid "Photo Paper Plus Glossy II"
msgstr ""
msgid "Photo Paper Pro Platinum"
msgstr ""
msgid "Plain Envelope"
@@ -4593,6 +4644,15 @@ msgstr ""
msgid "Pre Cut Tabs"
msgstr ""
msgid "Premium Inkjet Paper"
msgstr ""
msgid "Premium Photo Glossy Paper"
msgstr ""
msgid "Premium Presentation Matte Paper"
msgstr ""
msgid "Preparing to print."
msgstr ""
@@ -4672,6 +4732,9 @@ msgstr "La impressora no pot imprimir el contingut subministrat."
msgid "Printer cannot print with supplied options."
msgstr ""
msgid "Printer does not support required IPP attributes or document formats."
msgstr ""
msgid "Printer:"
msgstr "Impressora:"
@@ -4989,21 +5052,6 @@ msgstr "S'està començant la pàgina %d."
msgid "Statement"
msgstr "Declaració"
msgid "Stationery"
msgstr ""
msgid "Stationery Archival"
msgstr ""
msgid "Stationery Cotton"
msgstr ""
msgid "Stationery Heavyweight Coated"
msgstr ""
msgid "Stationery Inkjet Paper"
msgstr ""
#, c-format
msgid "Subscription #%d does not exist."
msgstr "La subscripció #%d no existeix."
+69 -21
Ver Arquivo
@@ -29,7 +29,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 1.6\n"
"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
"POT-Creation-Date: 2017-01-03 16:43-0500\n"
"POT-Creation-Date: 2017-03-11 10:02-0500\n"
"PO-Revision-Date: 2012-09-14 10:26+0100\n"
"Last-Translator: Jan Bartos <jan.bartos@madeta.cz>\n"
"Language-Team: Czech\n"
@@ -2509,6 +2509,9 @@ msgstr "Adresa"
msgid "Administration"
msgstr "Administrace"
msgid "Advanced Photo Paper"
msgstr ""
msgid "Alternate"
msgstr ""
@@ -2533,6 +2536,12 @@ msgstr ""
msgid "Archival Fabric"
msgstr ""
msgid "Archival Paper"
msgstr ""
msgid "Archival Photo Paper"
msgstr ""
#, c-format
msgid "Attempt to set %s printer-state to bad value %d."
msgstr ""
@@ -2765,6 +2774,9 @@ msgstr ""
msgid "Bond Paper"
msgstr "Kancelářský papír"
msgid "Booklet"
msgstr ""
msgid "Booklet Maker"
msgstr ""
@@ -2890,6 +2902,9 @@ msgstr ""
msgid "Cotton Envelope"
msgstr ""
msgid "Cotton Paper"
msgstr ""
msgid "Cover"
msgstr ""
@@ -3271,6 +3286,12 @@ msgstr "Každých 9 štítků"
msgid "Every Label"
msgstr "Každý štítek"
msgid "Everyday Glossy Photo Paper"
msgstr ""
msgid "Everyday Matte Paper"
msgstr ""
msgid "Executive"
msgstr ""
@@ -3283,6 +3304,9 @@ msgstr "Export tiskáren do Samby"
msgid "Expressions:"
msgstr ""
msgid "Extra Heavyweight Paper"
msgstr ""
msgid "FAIL"
msgstr ""
@@ -3346,9 +3370,6 @@ msgstr ""
msgid "Finished page %d."
msgstr ""
msgid "Finishing"
msgstr ""
msgid "Flexo Base"
msgstr ""
@@ -3400,6 +3421,9 @@ msgstr ""
msgid "Glass Textured"
msgstr ""
msgid "Glossy Brochure Paper"
msgstr ""
msgid "Glossy Fabric"
msgstr ""
@@ -3442,6 +3466,9 @@ msgstr "Závěsná složka"
msgid "Hash buffer too small."
msgstr ""
msgid "Heavyweight Coated Paper"
msgstr ""
msgid "Heavyweight Envelope"
msgstr ""
@@ -3565,6 +3592,9 @@ msgstr ""
msgid "Inkjet Labels"
msgstr ""
msgid "Inkjet Paper"
msgstr ""
msgid "Installable Options"
msgstr "Možnosti instalace"
@@ -3840,6 +3870,12 @@ msgstr ""
msgid "Manual Feed"
msgstr "Ruční podávání"
msgid "Matte Brochure Paper"
msgstr ""
msgid "Matte Cover Paper"
msgstr ""
msgid "Matte Fabric"
msgstr ""
@@ -3888,6 +3924,9 @@ msgstr ""
msgid "Metal Semi Gloss"
msgstr ""
msgid "Mid-Weight Paper"
msgstr ""
msgid "Middle"
msgstr ""
@@ -4004,6 +4043,9 @@ msgstr ""
msgid "Multipurpose"
msgstr ""
msgid "Multipurpose Paper"
msgstr ""
msgid "My Mailbox"
msgstr ""
@@ -4031,7 +4073,7 @@ msgstr "Ne"
msgid "No Content"
msgstr "Žádný obsah"
msgid "No Finishing"
msgid "No IPP attributes."
msgstr ""
msgid "No PPD name"
@@ -4137,6 +4179,9 @@ msgstr "Není souvislý (Mark Sensing)"
msgid "Non-continuous (Web sensing)"
msgstr "Není souvislý (Web Sensing)"
msgid "None"
msgstr ""
msgid "Normal"
msgstr "Normální"
@@ -4172,6 +4217,9 @@ msgstr "OK"
msgid "Off (1-Sided)"
msgstr "Vypnuto (jednostranný)"
msgid "Office Recycled Paper"
msgstr ""
msgid "Oki"
msgstr "Oki"
@@ -4314,7 +4362,10 @@ msgstr "Foto-samolepky"
msgid "Photo Paper"
msgstr ""
msgid "Photographic Archival"
msgid "Photo Paper Plus Glossy II"
msgstr ""
msgid "Photo Paper Pro Platinum"
msgstr ""
msgid "Plain Envelope"
@@ -4380,6 +4431,15 @@ msgstr ""
msgid "Pre Cut Tabs"
msgstr ""
msgid "Premium Inkjet Paper"
msgstr ""
msgid "Premium Photo Glossy Paper"
msgstr ""
msgid "Premium Presentation Matte Paper"
msgstr ""
msgid "Preparing to print."
msgstr ""
@@ -4459,6 +4519,9 @@ msgstr ""
msgid "Printer cannot print with supplied options."
msgstr ""
msgid "Printer does not support required IPP attributes or document formats."
msgstr ""
msgid "Printer:"
msgstr "Tiskárna:"
@@ -4775,21 +4838,6 @@ msgstr ""
msgid "Statement"
msgstr "Prohlášení"
msgid "Stationery"
msgstr ""
msgid "Stationery Archival"
msgstr ""
msgid "Stationery Cotton"
msgstr ""
msgid "Stationery Heavyweight Coated"
msgstr ""
msgid "Stationery Inkjet Paper"
msgstr ""
#, c-format
msgid "Subscription #%d does not exist."
msgstr ""
+76 -22
Ver Arquivo
@@ -29,7 +29,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 2.0\n"
"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
"POT-Creation-Date: 2017-01-03 16:43-0500\n"
"POT-Creation-Date: 2017-03-11 10:02-0500\n"
"PO-Revision-Date: 2016-09-17 18:45+0200\n"
"Last-Translator: Joachim Schwender <joachim.schwender@web.de>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -2585,6 +2585,9 @@ msgstr "Adresse"
msgid "Administration"
msgstr "Verwaltung"
msgid "Advanced Photo Paper"
msgstr ""
msgid "Alternate"
msgstr ""
@@ -2609,6 +2612,12 @@ msgstr ""
msgid "Archival Fabric"
msgstr ""
msgid "Archival Paper"
msgstr ""
msgid "Archival Photo Paper"
msgstr ""
#, c-format
msgid "Attempt to set %s printer-state to bad value %d."
msgstr "Versuch den %s Druckerstatus auf einen ungültigen %d Wert zu setzen."
@@ -2841,6 +2850,9 @@ msgstr ""
msgid "Bond Paper"
msgstr "Papier bündeln"
msgid "Booklet"
msgstr ""
msgid "Booklet Maker"
msgstr ""
@@ -2969,6 +2981,9 @@ msgstr "Kopiere Druckdaten."
msgid "Cotton Envelope"
msgstr ""
msgid "Cotton Paper"
msgstr ""
msgid "Cover"
msgstr ""
@@ -3351,6 +3366,12 @@ msgstr "Alle 9 Etiketten"
msgid "Every Label"
msgstr "Bei jedem Etikett"
msgid "Everyday Glossy Photo Paper"
msgstr ""
msgid "Everyday Matte Paper"
msgstr ""
msgid "Executive"
msgstr ""
@@ -3363,6 +3384,9 @@ msgstr "Drucker zu Samba exportieren"
msgid "Expressions:"
msgstr "Ausdrücke:"
msgid "Extra Heavyweight Paper"
msgstr ""
msgid "FAIL"
msgstr "FEHLER"
@@ -3426,9 +3450,6 @@ msgstr ""
msgid "Finished page %d."
msgstr "Seite %d fertiggestellt."
msgid "Finishing"
msgstr "Endverarbeitung"
msgid "Flexo Base"
msgstr ""
@@ -3480,6 +3501,9 @@ msgstr ""
msgid "Glass Textured"
msgstr ""
msgid "Glossy Brochure Paper"
msgstr ""
msgid "Glossy Fabric"
msgstr ""
@@ -3522,6 +3546,9 @@ msgstr "Hängeordner"
msgid "Hash buffer too small."
msgstr "Hash Puffer zu klein."
msgid "Heavyweight Coated Paper"
msgstr ""
msgid "Heavyweight Envelope"
msgstr "Schwerer Umschlag"
@@ -3645,6 +3672,9 @@ msgstr "Tintenstrahl-Umschäge"
msgid "Inkjet Labels"
msgstr "Tintenstrahl-Etiketten"
msgid "Inkjet Paper"
msgstr ""
msgid "Installable Options"
msgstr "Installationsoptionen"
@@ -3921,6 +3951,12 @@ msgstr ""
msgid "Manual Feed"
msgstr "Manuelle Papierzufuhr"
msgid "Matte Brochure Paper"
msgstr ""
msgid "Matte Cover Paper"
msgstr ""
msgid "Matte Fabric"
msgstr ""
@@ -3969,6 +4005,9 @@ msgstr ""
msgid "Metal Semi Gloss"
msgstr ""
msgid "Mid-Weight Paper"
msgstr ""
msgid "Middle"
msgstr ""
@@ -4085,6 +4124,9 @@ msgstr ""
msgid "Multipurpose"
msgstr "Mehrzweck"
msgid "Multipurpose Paper"
msgstr ""
msgid "My Mailbox"
msgstr ""
@@ -4112,8 +4154,8 @@ msgstr "Nein"
msgid "No Content"
msgstr "Kein Inhalt"
msgid "No Finishing"
msgstr "Keine Endverarbeitung"
msgid "No IPP attributes."
msgstr ""
msgid "No PPD name"
msgstr "Kein PPD Name"
@@ -4219,6 +4261,9 @@ msgstr "Nicht fortlaufend (Mark-Sensing)"
msgid "Non-continuous (Web sensing)"
msgstr "Nicht fortlaufend (Web-Sensing)"
msgid "None"
msgstr ""
msgid "Normal"
msgstr "Normal"
@@ -4256,6 +4301,9 @@ msgstr "OK"
msgid "Off (1-Sided)"
msgstr "Aus (Einseitig)"
msgid "Office Recycled Paper"
msgstr ""
msgid "Oki"
msgstr "Oki"
@@ -4398,7 +4446,10 @@ msgstr "Foto-Etiketten"
msgid "Photo Paper"
msgstr "Fotopapier"
msgid "Photographic Archival"
msgid "Photo Paper Plus Glossy II"
msgstr ""
msgid "Photo Paper Pro Platinum"
msgstr ""
msgid "Plain Envelope"
@@ -4464,6 +4515,15 @@ msgstr ""
msgid "Pre Cut Tabs"
msgstr ""
msgid "Premium Inkjet Paper"
msgstr ""
msgid "Premium Photo Glossy Paper"
msgstr ""
msgid "Premium Presentation Matte Paper"
msgstr ""
msgid "Preparing to print."
msgstr "Vorbereitung zum Druck."
@@ -4543,6 +4603,9 @@ msgstr "Drucker kann den Inhalt nicht drucken."
msgid "Printer cannot print with supplied options."
msgstr "Drucker kann mit den angegebenen Optionen nicht drucken."
msgid "Printer does not support required IPP attributes or document formats."
msgstr ""
msgid "Printer:"
msgstr "Drucker:"
@@ -4859,21 +4922,6 @@ msgstr "Beginne Seite %d."
msgid "Statement"
msgstr "US Statement"
msgid "Stationery"
msgstr ""
msgid "Stationery Archival"
msgstr ""
msgid "Stationery Cotton"
msgstr ""
msgid "Stationery Heavyweight Coated"
msgstr ""
msgid "Stationery Inkjet Paper"
msgstr ""
#, c-format
msgid "Subscription #%d does not exist."
msgstr "Abonnement #%d existiert nicht."
@@ -6707,12 +6755,18 @@ msgstr "variable-bindings hat unbestimmte Länge"
#~ msgid "File Folder "
#~ msgstr "Datei-Verzeichnis "
#~ msgid "Finishing"
#~ msgstr "Endverarbeitung"
#~ msgid "New Stylus Color Series"
#~ msgstr "Neue Stylus Color Serie"
#~ msgid "New Stylus Photo Series"
#~ msgstr "Neue Stylus Photo Serie"
#~ msgid "No Finishing"
#~ msgstr "Keine Endverarbeitung"
#~ msgid "Postcard Double "
#~ msgstr "Doppelpostkarte"
+78 -24
Ver Arquivo
@@ -16,7 +16,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 2.2\n"
"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
"POT-Creation-Date: 2017-01-03 16:43-0500\n"
"POT-Creation-Date: 2017-03-11 10:02-0500\n"
"PO-Revision-Date: 2016-06-26 21:17+0100\n"
"Last-Translator: Juan Pablo González Riopedre <jpgriopedre@yahoo.es>\n"
"Language-Team: Spanish\n"
@@ -2776,6 +2776,9 @@ msgstr "Dirección"
msgid "Administration"
msgstr "Administración"
msgid "Advanced Photo Paper"
msgstr ""
msgid "Alternate"
msgstr "Alternativo"
@@ -2800,6 +2803,12 @@ msgstr ""
msgid "Archival Fabric"
msgstr ""
msgid "Archival Paper"
msgstr ""
msgid "Archival Photo Paper"
msgstr ""
#, c-format
msgid "Attempt to set %s printer-state to bad value %d."
msgstr ""
@@ -3034,6 +3043,9 @@ msgstr ""
msgid "Bond Paper"
msgstr "Papel de cartas"
msgid "Booklet"
msgstr ""
msgid "Booklet Maker"
msgstr "Fabricante de folleto"
@@ -3161,6 +3173,9 @@ msgstr "Copiando datos de impresión."
msgid "Cotton Envelope"
msgstr ""
msgid "Cotton Paper"
msgstr ""
msgid "Cover"
msgstr "Carátula"
@@ -3548,6 +3563,12 @@ msgstr "Cada 9 etiquetas"
msgid "Every Label"
msgstr "Cada etiqueta"
msgid "Everyday Glossy Photo Paper"
msgstr ""
msgid "Everyday Matte Paper"
msgstr ""
msgid "Executive"
msgstr "Ejecutivo"
@@ -3560,6 +3581,9 @@ msgstr "Exportar impresoras a Samba"
msgid "Expressions:"
msgstr "Expresiones:"
msgid "Extra Heavyweight Paper"
msgstr ""
msgid "FAIL"
msgstr "FALLO"
@@ -3625,9 +3649,6 @@ msgstr ""
msgid "Finished page %d."
msgstr "Acabada la página %d."
msgid "Finishing"
msgstr "Terminando"
msgid "Flexo Base"
msgstr ""
@@ -3679,6 +3700,9 @@ msgstr ""
msgid "Glass Textured"
msgstr ""
msgid "Glossy Brochure Paper"
msgstr ""
msgid "Glossy Fabric"
msgstr ""
@@ -3721,6 +3745,9 @@ msgstr "Carpeta colgante"
msgid "Hash buffer too small."
msgstr "Memoria temporal hash demasiado pequeña."
msgid "Heavyweight Coated Paper"
msgstr ""
msgid "Heavyweight Envelope"
msgstr ""
@@ -3844,6 +3871,9 @@ msgstr ""
msgid "Inkjet Labels"
msgstr ""
msgid "Inkjet Paper"
msgstr ""
msgid "Installable Options"
msgstr "Opciones instalables"
@@ -4119,6 +4149,12 @@ msgstr "Manual"
msgid "Manual Feed"
msgstr "Alimentación manual"
msgid "Matte Brochure Paper"
msgstr ""
msgid "Matte Cover Paper"
msgstr ""
msgid "Matte Fabric"
msgstr ""
@@ -4167,6 +4203,9 @@ msgstr ""
msgid "Metal Semi Gloss"
msgstr ""
msgid "Mid-Weight Paper"
msgstr ""
msgid "Middle"
msgstr "Medio"
@@ -4287,6 +4326,9 @@ msgstr ""
msgid "Multipurpose"
msgstr "Multipropósito"
msgid "Multipurpose Paper"
msgstr ""
msgid "My Mailbox"
msgstr ""
@@ -4314,8 +4356,8 @@ msgstr "No"
msgid "No Content"
msgstr "No hay contenido"
msgid "No Finishing"
msgstr "Sin terminar"
msgid "No IPP attributes."
msgstr ""
msgid "No PPD name"
msgstr "No hay nombre de PPD"
@@ -4422,6 +4464,9 @@ msgstr "No continuo (sensible a señal)"
msgid "Non-continuous (Web sensing)"
msgstr "No continuo (sensible a web)"
msgid "None"
msgstr ""
msgid "Normal"
msgstr "Normal"
@@ -4458,6 +4503,9 @@ msgstr "OK"
msgid "Off (1-Sided)"
msgstr "Desactivado (1 cara)"
msgid "Office Recycled Paper"
msgstr ""
msgid "Oki"
msgstr "Oki"
@@ -4600,7 +4648,10 @@ msgstr "Foto pequeña"
msgid "Photo Paper"
msgstr ""
msgid "Photographic Archival"
msgid "Photo Paper Plus Glossy II"
msgstr ""
msgid "Photo Paper Pro Platinum"
msgstr ""
msgid "Plain Envelope"
@@ -4666,6 +4717,15 @@ msgstr "Póster plegado"
msgid "Pre Cut Tabs"
msgstr ""
msgid "Premium Inkjet Paper"
msgstr ""
msgid "Premium Photo Glossy Paper"
msgstr ""
msgid "Premium Presentation Matte Paper"
msgstr ""
msgid "Preparing to print."
msgstr "Preparando la impresión."
@@ -4745,6 +4805,9 @@ msgstr "La impresora no puede imprimir el contenido suministrado."
msgid "Printer cannot print with supplied options."
msgstr "La impresora no puede imprimir con las opciones suministradas."
msgid "Printer does not support required IPP attributes or document formats."
msgstr ""
msgid "Printer:"
msgstr "Impresora:"
@@ -5061,21 +5124,6 @@ msgstr "Iniciando página %d."
msgid "Statement"
msgstr "Declaración"
msgid "Stationery"
msgstr ""
msgid "Stationery Archival"
msgstr ""
msgid "Stationery Cotton"
msgstr ""
msgid "Stationery Heavyweight Coated"
msgstr ""
msgid "Stationery Inkjet Paper"
msgstr ""
#, c-format
msgid "Subscription #%d does not exist."
msgstr "Subscripción #%d no existe."
@@ -5924,8 +5972,8 @@ 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]]"
"Uso: cupstestppd [opciones] nombre_archivo1.ppd[.gz] [... nombre_archivoN."
"ppd[.gz]]"
msgid ""
"Usage: ippfind [options] regtype[,subtype][.domain.] ... [expression]\n"
@@ -6947,6 +6995,9 @@ msgstr "variable-bindings usa una longitud indefinida"
#~ msgid "CD/DVD/Bluray"
#~ msgstr "CD/DVD/Bluray"
#~ msgid "Finishing"
#~ msgstr "Terminando"
#~ msgid "Glossy Photo"
#~ msgstr "Foto brillante"
@@ -6962,6 +7013,9 @@ msgstr "variable-bindings usa una longitud indefinida"
#~ msgid "Matte Photo"
#~ msgstr "Foto mate"
#~ msgid "No Finishing"
#~ msgstr "Sin terminar"
#~ msgid "Satin Photo"
#~ msgstr "Foto satinada"
+69 -21
Ver Arquivo
@@ -29,7 +29,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 1.6\n"
"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
"POT-Creation-Date: 2017-01-03 16:43-0500\n"
"POT-Creation-Date: 2017-03-11 10:02-0500\n"
"PO-Revision-Date: 2012-12-12 11:12+0100\n"
"Last-Translator: denis meramdjougoma <dcmeram@libertysurf.fr>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -2509,6 +2509,9 @@ msgstr "Adresse"
msgid "Administration"
msgstr "Administration"
msgid "Advanced Photo Paper"
msgstr ""
msgid "Alternate"
msgstr ""
@@ -2533,6 +2536,12 @@ msgstr ""
msgid "Archival Fabric"
msgstr ""
msgid "Archival Paper"
msgstr ""
msgid "Archival Photo Paper"
msgstr ""
#, c-format
msgid "Attempt to set %s printer-state to bad value %d."
msgstr ""
@@ -2765,6 +2774,9 @@ msgstr ""
msgid "Bond Paper"
msgstr "Papier pour titres"
msgid "Booklet"
msgstr ""
msgid "Booklet Maker"
msgstr ""
@@ -2890,6 +2902,9 @@ msgstr ""
msgid "Cotton Envelope"
msgstr ""
msgid "Cotton Paper"
msgstr ""
msgid "Cover"
msgstr ""
@@ -3268,6 +3283,12 @@ msgstr "Toutes les 9 étiquettes"
msgid "Every Label"
msgstr "Chaque étiquette"
msgid "Everyday Glossy Photo Paper"
msgstr ""
msgid "Everyday Matte Paper"
msgstr ""
msgid "Executive"
msgstr ""
@@ -3280,6 +3301,9 @@ msgstr "Exporter les imprimantes vers SAMBA"
msgid "Expressions:"
msgstr ""
msgid "Extra Heavyweight Paper"
msgstr ""
msgid "FAIL"
msgstr ""
@@ -3343,9 +3367,6 @@ msgstr ""
msgid "Finished page %d."
msgstr ""
msgid "Finishing"
msgstr ""
msgid "Flexo Base"
msgstr ""
@@ -3397,6 +3418,9 @@ msgstr ""
msgid "Glass Textured"
msgstr ""
msgid "Glossy Brochure Paper"
msgstr ""
msgid "Glossy Fabric"
msgstr ""
@@ -3439,6 +3463,9 @@ msgstr "Dossier suspendu"
msgid "Hash buffer too small."
msgstr ""
msgid "Heavyweight Coated Paper"
msgstr ""
msgid "Heavyweight Envelope"
msgstr ""
@@ -3562,6 +3589,9 @@ msgstr ""
msgid "Inkjet Labels"
msgstr ""
msgid "Inkjet Paper"
msgstr ""
msgid "Installable Options"
msgstr "Options installables"
@@ -3837,6 +3867,12 @@ msgstr ""
msgid "Manual Feed"
msgstr ""
msgid "Matte Brochure Paper"
msgstr ""
msgid "Matte Cover Paper"
msgstr ""
msgid "Matte Fabric"
msgstr ""
@@ -3885,6 +3921,9 @@ msgstr ""
msgid "Metal Semi Gloss"
msgstr ""
msgid "Mid-Weight Paper"
msgstr ""
msgid "Middle"
msgstr ""
@@ -4001,6 +4040,9 @@ msgstr ""
msgid "Multipurpose"
msgstr ""
msgid "Multipurpose Paper"
msgstr ""
msgid "My Mailbox"
msgstr ""
@@ -4028,7 +4070,7 @@ msgstr "Non"
msgid "No Content"
msgstr "Aucun contenu"
msgid "No Finishing"
msgid "No IPP attributes."
msgstr ""
msgid "No PPD name"
@@ -4134,6 +4176,9 @@ msgstr "Non continu (détection de marque)"
msgid "Non-continuous (Web sensing)"
msgstr "Non continu (détection Web)"
msgid "None"
msgstr ""
msgid "Normal"
msgstr "Normal"
@@ -4169,6 +4214,9 @@ msgstr "OK"
msgid "Off (1-Sided)"
msgstr "Désactivé (recto)"
msgid "Office Recycled Paper"
msgstr ""
msgid "Oki"
msgstr "Oki"
@@ -4311,7 +4359,10 @@ msgstr "Étiquettes photo"
msgid "Photo Paper"
msgstr ""
msgid "Photographic Archival"
msgid "Photo Paper Plus Glossy II"
msgstr ""
msgid "Photo Paper Pro Platinum"
msgstr ""
msgid "Plain Envelope"
@@ -4377,6 +4428,15 @@ msgstr ""
msgid "Pre Cut Tabs"
msgstr ""
msgid "Premium Inkjet Paper"
msgstr ""
msgid "Premium Photo Glossy Paper"
msgstr ""
msgid "Premium Presentation Matte Paper"
msgstr ""
msgid "Preparing to print."
msgstr ""
@@ -4456,6 +4516,9 @@ msgstr ""
msgid "Printer cannot print with supplied options."
msgstr ""
msgid "Printer does not support required IPP attributes or document formats."
msgstr ""
msgid "Printer:"
msgstr "Imprimante :"
@@ -4772,21 +4835,6 @@ msgstr ""
msgid "Statement"
msgstr "Déclaration"
msgid "Stationery"
msgstr ""
msgid "Stationery Archival"
msgstr ""
msgid "Stationery Cotton"
msgstr ""
msgid "Stationery Heavyweight Coated"
msgstr ""
msgid "Stationery Inkjet Paper"
msgstr ""
#, c-format
msgid "Subscription #%d does not exist."
msgstr ""
+69 -21
Ver Arquivo
@@ -29,7 +29,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 1.6\n"
"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
"POT-Creation-Date: 2017-01-03 16:43-0500\n"
"POT-Creation-Date: 2017-03-11 10:02-0500\n"
"PO-Revision-Date: 2013-07-14 12:00+0200\n"
"Last-Translator: Giovanni Scafora <giovanni@archlinux.org>\n"
"Language-Team: Arch Linux Italian Team <giovanni@archlinux.org>\n"
@@ -2776,6 +2776,9 @@ msgstr "Indirizzo"
msgid "Administration"
msgstr "Amministrazione"
msgid "Advanced Photo Paper"
msgstr ""
msgid "Alternate"
msgstr ""
@@ -2800,6 +2803,12 @@ msgstr ""
msgid "Archival Fabric"
msgstr ""
msgid "Archival Paper"
msgstr ""
msgid "Archival Photo Paper"
msgstr ""
#, c-format
msgid "Attempt to set %s printer-state to bad value %d."
msgstr "Tentativo di impostare %s printer-state al valore non valido %d."
@@ -3032,6 +3041,9 @@ msgstr ""
msgid "Bond Paper"
msgstr "Carta per scrivere"
msgid "Booklet"
msgstr ""
msgid "Booklet Maker"
msgstr ""
@@ -3160,6 +3172,9 @@ msgstr "Copia dei dati di stampa in corso."
msgid "Cotton Envelope"
msgstr ""
msgid "Cotton Paper"
msgstr ""
msgid "Cover"
msgstr ""
@@ -3548,6 +3563,12 @@ msgstr "Ogni 9 etichette"
msgid "Every Label"
msgstr "Ogni etichetta"
msgid "Everyday Glossy Photo Paper"
msgstr ""
msgid "Everyday Matte Paper"
msgstr ""
msgid "Executive"
msgstr "Esecutivo"
@@ -3560,6 +3581,9 @@ msgstr "Esporta le stampanti per Samba"
msgid "Expressions:"
msgstr "Espressioni:"
msgid "Extra Heavyweight Paper"
msgstr ""
msgid "FAIL"
msgstr "OPERAZIONE NON RIUSCITA CORRETTAMENTE"
@@ -3625,9 +3649,6 @@ msgstr ""
msgid "Finished page %d."
msgstr "Finito pagina %d."
msgid "Finishing"
msgstr ""
msgid "Flexo Base"
msgstr ""
@@ -3679,6 +3700,9 @@ msgstr ""
msgid "Glass Textured"
msgstr ""
msgid "Glossy Brochure Paper"
msgstr ""
msgid "Glossy Fabric"
msgstr ""
@@ -3721,6 +3745,9 @@ msgstr "Directory appesa"
msgid "Hash buffer too small."
msgstr ""
msgid "Heavyweight Coated Paper"
msgstr ""
msgid "Heavyweight Envelope"
msgstr ""
@@ -3844,6 +3871,9 @@ msgstr ""
msgid "Inkjet Labels"
msgstr ""
msgid "Inkjet Paper"
msgstr ""
msgid "Installable Options"
msgstr "Opzioni installabili"
@@ -4119,6 +4149,12 @@ msgstr ""
msgid "Manual Feed"
msgstr "Alimentazione manuale"
msgid "Matte Brochure Paper"
msgstr ""
msgid "Matte Cover Paper"
msgstr ""
msgid "Matte Fabric"
msgstr ""
@@ -4167,6 +4203,9 @@ msgstr ""
msgid "Metal Semi Gloss"
msgstr ""
msgid "Mid-Weight Paper"
msgstr ""
msgid "Middle"
msgstr ""
@@ -4287,6 +4326,9 @@ msgstr ""
msgid "Multipurpose"
msgstr ""
msgid "Multipurpose Paper"
msgstr ""
msgid "My Mailbox"
msgstr ""
@@ -4314,7 +4356,7 @@ msgstr "No"
msgid "No Content"
msgstr "Nessun contenuto"
msgid "No Finishing"
msgid "No IPP attributes."
msgstr ""
msgid "No PPD name"
@@ -4422,6 +4464,9 @@ msgstr "Non-continuous (Mark sensing)"
msgid "Non-continuous (Web sensing)"
msgstr "Non-continuous (Web sensing)"
msgid "None"
msgstr ""
msgid "Normal"
msgstr "Normale"
@@ -4459,6 +4504,9 @@ msgstr "OK"
msgid "Off (1-Sided)"
msgstr "Off (1-Sided)"
msgid "Office Recycled Paper"
msgstr ""
msgid "Oki"
msgstr "Oki"
@@ -4601,7 +4649,10 @@ msgstr "Etichette delle foto"
msgid "Photo Paper"
msgstr ""
msgid "Photographic Archival"
msgid "Photo Paper Plus Glossy II"
msgstr ""
msgid "Photo Paper Pro Platinum"
msgstr ""
msgid "Plain Envelope"
@@ -4667,6 +4718,15 @@ msgstr ""
msgid "Pre Cut Tabs"
msgstr ""
msgid "Premium Inkjet Paper"
msgstr ""
msgid "Premium Photo Glossy Paper"
msgstr ""
msgid "Premium Presentation Matte Paper"
msgstr ""
msgid "Preparing to print."
msgstr "Preparazione per la stampa."
@@ -4746,6 +4806,9 @@ msgstr "La stampante non può stampare il contenuto fornito."
msgid "Printer cannot print with supplied options."
msgstr "La stampante non può stampare con le opzioni fornite."
msgid "Printer does not support required IPP attributes or document formats."
msgstr ""
msgid "Printer:"
msgstr "Stampante:"
@@ -5062,21 +5125,6 @@ msgstr "Pagina iniziale %d."
msgid "Statement"
msgstr "Rapporto"
msgid "Stationery"
msgstr ""
msgid "Stationery Archival"
msgstr ""
msgid "Stationery Cotton"
msgstr ""
msgid "Stationery Heavyweight Coated"
msgstr ""
msgid "Stationery Inkjet Paper"
msgstr ""
#, c-format
msgid "Subscription #%d does not exist."
msgstr "La sottoscrizione #%d non esiste."
+69 -21
Ver Arquivo
@@ -28,7 +28,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 2.0\n"
"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
"POT-Creation-Date: 2017-01-03 16:43-0500\n"
"POT-Creation-Date: 2017-03-11 10:02-0500\n"
"PO-Revision-Date: 2014-11-15 19:27+0900\n"
"Last-Translator: OPFC TRANSCUPS <opfc-transcups@sourceforge.jp>\n"
"Language-Team: OPFC TRANSCUPS <opfc-transcups@sourceforge.jp>\n"
@@ -2735,6 +2735,9 @@ msgstr "アドレス"
msgid "Administration"
msgstr "管理"
msgid "Advanced Photo Paper"
msgstr ""
msgid "Alternate"
msgstr ""
@@ -2759,6 +2762,12 @@ msgstr ""
msgid "Archival Fabric"
msgstr ""
msgid "Archival Paper"
msgstr ""
msgid "Archival Photo Paper"
msgstr ""
#, c-format
msgid "Attempt to set %s printer-state to bad value %d."
msgstr "%s printer-state に 不正な値 %d を設定しようとしています。"
@@ -2991,6 +3000,9 @@ msgstr ""
msgid "Bond Paper"
msgstr "ボンド紙"
msgid "Booklet"
msgstr ""
msgid "Booklet Maker"
msgstr ""
@@ -3119,6 +3131,9 @@ msgstr "印刷データをコピーしています。"
msgid "Cotton Envelope"
msgstr ""
msgid "Cotton Paper"
msgstr ""
msgid "Cover"
msgstr ""
@@ -3509,6 +3524,12 @@ msgstr "9 ラベルごと"
msgid "Every Label"
msgstr "すべてのラベル"
msgid "Everyday Glossy Photo Paper"
msgstr ""
msgid "Everyday Matte Paper"
msgstr ""
msgid "Executive"
msgstr "エグゼクティブ"
@@ -3521,6 +3542,9 @@ msgstr "Samba へプリンターをエクスポート"
msgid "Expressions:"
msgstr "式:"
msgid "Extra Heavyweight Paper"
msgstr ""
msgid "FAIL"
msgstr "失敗"
@@ -3588,9 +3612,6 @@ msgstr ""
msgid "Finished page %d."
msgstr "ページ %d を終了。"
msgid "Finishing"
msgstr ""
msgid "Flexo Base"
msgstr ""
@@ -3642,6 +3663,9 @@ msgstr ""
msgid "Glass Textured"
msgstr ""
msgid "Glossy Brochure Paper"
msgstr ""
msgid "Glossy Fabric"
msgstr ""
@@ -3684,6 +3708,9 @@ msgstr "Hanging Folder"
msgid "Hash buffer too small."
msgstr ""
msgid "Heavyweight Coated Paper"
msgstr ""
msgid "Heavyweight Envelope"
msgstr ""
@@ -3807,6 +3834,9 @@ msgstr ""
msgid "Inkjet Labels"
msgstr ""
msgid "Inkjet Paper"
msgstr ""
msgid "Installable Options"
msgstr "インストール可能オプション"
@@ -4082,6 +4112,12 @@ msgstr ""
msgid "Manual Feed"
msgstr "手差し"
msgid "Matte Brochure Paper"
msgstr ""
msgid "Matte Cover Paper"
msgstr ""
msgid "Matte Fabric"
msgstr ""
@@ -4130,6 +4166,9 @@ msgstr ""
msgid "Metal Semi Gloss"
msgstr ""
msgid "Mid-Weight Paper"
msgstr ""
msgid "Middle"
msgstr ""
@@ -4250,6 +4289,9 @@ msgstr ""
msgid "Multipurpose"
msgstr ""
msgid "Multipurpose Paper"
msgstr ""
msgid "My Mailbox"
msgstr ""
@@ -4277,7 +4319,7 @@ msgstr "いいえ"
msgid "No Content"
msgstr "中身がありません"
msgid "No Finishing"
msgid "No IPP attributes."
msgstr ""
msgid "No PPD name"
@@ -4383,6 +4425,9 @@ msgstr "非連続です (Mark sensing)"
msgid "Non-continuous (Web sensing)"
msgstr "非連続です (Web sensing)"
msgid "None"
msgstr ""
msgid "Normal"
msgstr "標準"
@@ -4420,6 +4465,9 @@ msgstr "OK"
msgid "Off (1-Sided)"
msgstr "Off (片面)"
msgid "Office Recycled Paper"
msgstr ""
msgid "Oki"
msgstr "Oki"
@@ -4562,7 +4610,10 @@ msgstr "写真ラベル"
msgid "Photo Paper"
msgstr ""
msgid "Photographic Archival"
msgid "Photo Paper Plus Glossy II"
msgstr ""
msgid "Photo Paper Pro Platinum"
msgstr ""
msgid "Plain Envelope"
@@ -4628,6 +4679,15 @@ msgstr ""
msgid "Pre Cut Tabs"
msgstr ""
msgid "Premium Inkjet Paper"
msgstr ""
msgid "Premium Photo Glossy Paper"
msgstr ""
msgid "Premium Presentation Matte Paper"
msgstr ""
msgid "Preparing to print."
msgstr "印刷準備中です。"
@@ -4707,6 +4767,9 @@ msgstr "プリンターは受信した内容を印刷できませんでした。
msgid "Printer cannot print with supplied options."
msgstr "指定されたオプションではプリンターは印刷できません。"
msgid "Printer does not support required IPP attributes or document formats."
msgstr ""
msgid "Printer:"
msgstr "プリンター:"
@@ -5023,21 +5086,6 @@ msgstr "ページ %d を開始しています。"
msgid "Statement"
msgstr "記述"
msgid "Stationery"
msgstr ""
msgid "Stationery Archival"
msgstr ""
msgid "Stationery Cotton"
msgstr ""
msgid "Stationery Heavyweight Coated"
msgstr ""
msgid "Stationery Inkjet Paper"
msgstr ""
#, c-format
msgid "Subscription #%d does not exist."
msgstr "サブスクリプション番号 %d は存在しません。"
+69 -21
Ver Arquivo
@@ -40,7 +40,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 2.1.2\n"
"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
"POT-Creation-Date: 2017-01-03 16:43-0500\n"
"POT-Creation-Date: 2017-03-11 10:02-0500\n"
"PO-Revision-Date: 2016-01-31 16:45-0200\n"
"Last-Translator: Rafael Fontenelle <rffontenelle@gmail.com>\n"
"Language-Team: Brazilian Portuguese <traducao-cups-pt-br@googlegroups.com>\n"
@@ -2776,6 +2776,9 @@ msgstr "Endereço"
msgid "Administration"
msgstr "Administração"
msgid "Advanced Photo Paper"
msgstr ""
msgid "Alternate"
msgstr ""
@@ -2800,6 +2803,12 @@ msgstr ""
msgid "Archival Fabric"
msgstr ""
msgid "Archival Paper"
msgstr ""
msgid "Archival Photo Paper"
msgstr ""
#, c-format
msgid "Attempt to set %s printer-state to bad value %d."
msgstr ""
@@ -3033,6 +3042,9 @@ msgstr ""
msgid "Bond Paper"
msgstr "Papel autocolante"
msgid "Booklet"
msgstr ""
msgid "Booklet Maker"
msgstr ""
@@ -3161,6 +3173,9 @@ msgstr "Copiando dados de impressão."
msgid "Cotton Envelope"
msgstr ""
msgid "Cotton Paper"
msgstr ""
msgid "Cover"
msgstr ""
@@ -3548,6 +3563,12 @@ msgstr "A cada 9 etiquetas"
msgid "Every Label"
msgstr "A cada etiqueta"
msgid "Everyday Glossy Photo Paper"
msgstr ""
msgid "Everyday Matte Paper"
msgstr ""
msgid "Executive"
msgstr "Executivo"
@@ -3560,6 +3581,9 @@ msgstr "Exportar impressoras para o Samba"
msgid "Expressions:"
msgstr "Expressões:"
msgid "Extra Heavyweight Paper"
msgstr ""
msgid "FAIL"
msgstr "FALHA"
@@ -3625,9 +3649,6 @@ msgstr ""
msgid "Finished page %d."
msgstr "Terminou página %d."
msgid "Finishing"
msgstr ""
msgid "Flexo Base"
msgstr ""
@@ -3679,6 +3700,9 @@ msgstr ""
msgid "Glass Textured"
msgstr ""
msgid "Glossy Brochure Paper"
msgstr ""
msgid "Glossy Fabric"
msgstr ""
@@ -3721,6 +3745,9 @@ msgstr "Pasta suspensa"
msgid "Hash buffer too small."
msgstr ""
msgid "Heavyweight Coated Paper"
msgstr ""
msgid "Heavyweight Envelope"
msgstr ""
@@ -3844,6 +3871,9 @@ msgstr ""
msgid "Inkjet Labels"
msgstr ""
msgid "Inkjet Paper"
msgstr ""
msgid "Installable Options"
msgstr "Opções instaláveis"
@@ -4119,6 +4149,12 @@ msgstr ""
msgid "Manual Feed"
msgstr "Alimentação manual"
msgid "Matte Brochure Paper"
msgstr ""
msgid "Matte Cover Paper"
msgstr ""
msgid "Matte Fabric"
msgstr ""
@@ -4167,6 +4203,9 @@ msgstr ""
msgid "Metal Semi Gloss"
msgstr ""
msgid "Mid-Weight Paper"
msgstr ""
msgid "Middle"
msgstr ""
@@ -4287,6 +4326,9 @@ msgstr ""
msgid "Multipurpose"
msgstr ""
msgid "Multipurpose Paper"
msgstr ""
msgid "My Mailbox"
msgstr ""
@@ -4314,7 +4356,7 @@ msgstr "Não"
msgid "No Content"
msgstr "Nenhum conteúdo"
msgid "No Finishing"
msgid "No IPP attributes."
msgstr ""
msgid "No PPD name"
@@ -4422,6 +4464,9 @@ msgstr "Não-contíguo (Mark sensing)"
msgid "Non-continuous (Web sensing)"
msgstr "Não-contíguo (Web sensing)"
msgid "None"
msgstr ""
msgid "Normal"
msgstr "Normal"
@@ -4458,6 +4503,9 @@ msgstr "OK"
msgid "Off (1-Sided)"
msgstr "Off (1 lado)"
msgid "Office Recycled Paper"
msgstr ""
msgid "Oki"
msgstr "Oki"
@@ -4601,7 +4649,10 @@ msgstr "Foto pequena"
msgid "Photo Paper"
msgstr ""
msgid "Photographic Archival"
msgid "Photo Paper Plus Glossy II"
msgstr ""
msgid "Photo Paper Pro Platinum"
msgstr ""
msgid "Plain Envelope"
@@ -4667,6 +4718,15 @@ msgstr ""
msgid "Pre Cut Tabs"
msgstr ""
msgid "Premium Inkjet Paper"
msgstr ""
msgid "Premium Photo Glossy Paper"
msgstr ""
msgid "Premium Presentation Matte Paper"
msgstr ""
msgid "Preparing to print."
msgstr "Preparando para imprimir."
@@ -4746,6 +4806,9 @@ msgstr "Impressora não consegue imprimir o conteúdo fornecido."
msgid "Printer cannot print with supplied options."
msgstr "Impressora não consegue imprimir os opções fornecidas."
msgid "Printer does not support required IPP attributes or document formats."
msgstr ""
msgid "Printer:"
msgstr "Impressora:"
@@ -5062,21 +5125,6 @@ msgstr "Iniciando página %d."
msgid "Statement"
msgstr "Declaração"
msgid "Stationery"
msgstr ""
msgid "Stationery Archival"
msgstr ""
msgid "Stationery Cotton"
msgstr ""
msgid "Stationery Heavyweight Coated"
msgstr ""
msgid "Stationery Inkjet Paper"
msgstr ""
#, c-format
msgid "Subscription #%d does not exist."
msgstr "Inscrição #%d não existe."
+69 -21
Ver Arquivo
@@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: CUPS 2.0\n"
"Report-Msgid-Bugs-To: http://www.cups.org/str.php\n"
"POT-Creation-Date: 2017-01-03 16:43-0500\n"
"POT-Creation-Date: 2017-03-11 10:02-0500\n"
"PO-Revision-Date: 2015-01-28 12:00-0800\n"
"Last-Translator: Aleksandr Proklov\n"
"Language-Team: PuppyRus Linux Team\n"
@@ -2709,6 +2709,9 @@ msgstr "Адрес"
msgid "Administration"
msgstr "Администрирование"
msgid "Advanced Photo Paper"
msgstr ""
msgid "Alternate"
msgstr ""
@@ -2733,6 +2736,12 @@ msgstr ""
msgid "Archival Fabric"
msgstr ""
msgid "Archival Paper"
msgstr ""
msgid "Archival Photo Paper"
msgstr ""
#, c-format
msgid "Attempt to set %s printer-state to bad value %d."
msgstr "Попытка установить %s printer-state на неверное значение %d"
@@ -2965,6 +2974,9 @@ msgstr ""
msgid "Bond Paper"
msgstr "Документная бумага"
msgid "Booklet"
msgstr ""
msgid "Booklet Maker"
msgstr ""
@@ -3093,6 +3105,9 @@ msgstr "Копирование данных печати."
msgid "Cotton Envelope"
msgstr ""
msgid "Cotton Paper"
msgstr ""
msgid "Cover"
msgstr ""
@@ -3474,6 +3489,12 @@ msgstr "Каждые 9 этикеток"
msgid "Every Label"
msgstr "Каждая этикетка"
msgid "Everyday Glossy Photo Paper"
msgstr ""
msgid "Everyday Matte Paper"
msgstr ""
msgid "Executive"
msgstr "Executive"
@@ -3486,6 +3507,9 @@ msgstr "Экспортировать принтеры в Samba"
msgid "Expressions:"
msgstr "Выражение:"
msgid "Extra Heavyweight Paper"
msgstr ""
msgid "FAIL"
msgstr "FAIL"
@@ -3551,9 +3575,6 @@ msgstr ""
msgid "Finished page %d."
msgstr "Последняя страница %d."
msgid "Finishing"
msgstr ""
msgid "Flexo Base"
msgstr ""
@@ -3605,6 +3626,9 @@ msgstr ""
msgid "Glass Textured"
msgstr ""
msgid "Glossy Brochure Paper"
msgstr ""
msgid "Glossy Fabric"
msgstr ""
@@ -3647,6 +3671,9 @@ msgstr "Папка подвесного хранения"
msgid "Hash buffer too small."
msgstr ""
msgid "Heavyweight Coated Paper"
msgstr ""
msgid "Heavyweight Envelope"
msgstr ""
@@ -3770,6 +3797,9 @@ msgstr ""
msgid "Inkjet Labels"
msgstr ""
msgid "Inkjet Paper"
msgstr ""
msgid "Installable Options"
msgstr "Параметры, разрешенные к установке"
@@ -4045,6 +4075,12 @@ msgstr ""
msgid "Manual Feed"
msgstr "Ручная подача"
msgid "Matte Brochure Paper"
msgstr ""
msgid "Matte Cover Paper"
msgstr ""
msgid "Matte Fabric"
msgstr ""
@@ -4093,6 +4129,9 @@ msgstr ""
msgid "Metal Semi Gloss"
msgstr ""
msgid "Mid-Weight Paper"
msgstr ""
msgid "Middle"
msgstr ""
@@ -4213,6 +4252,9 @@ msgstr ""
msgid "Multipurpose"
msgstr ""
msgid "Multipurpose Paper"
msgstr ""
msgid "My Mailbox"
msgstr ""
@@ -4240,7 +4282,7 @@ msgstr "Нет"
msgid "No Content"
msgstr "Нет содержимого"
msgid "No Finishing"
msgid "No IPP attributes."
msgstr ""
msgid "No PPD name"
@@ -4347,6 +4389,9 @@ msgstr "С прерыванием (Mark sensing)"
msgid "Non-continuous (Web sensing)"
msgstr "С прерыванием (Web sensing)"
msgid "None"
msgstr ""
msgid "Normal"
msgstr "Нормальный"
@@ -4384,6 +4429,9 @@ msgstr "ОК"
msgid "Off (1-Sided)"
msgstr "Выкл. (1-сторонняя печать)"
msgid "Office Recycled Paper"
msgstr ""
msgid "Oki"
msgstr "Oki"
@@ -4526,7 +4574,10 @@ msgstr "Фотоэтикетки"
msgid "Photo Paper"
msgstr ""
msgid "Photographic Archival"
msgid "Photo Paper Plus Glossy II"
msgstr ""
msgid "Photo Paper Pro Platinum"
msgstr ""
msgid "Plain Envelope"
@@ -4592,6 +4643,15 @@ msgstr ""
msgid "Pre Cut Tabs"
msgstr ""
msgid "Premium Inkjet Paper"
msgstr ""
msgid "Premium Photo Glossy Paper"
msgstr ""
msgid "Premium Presentation Matte Paper"
msgstr ""
msgid "Preparing to print."
msgstr "Подготовка к печати."
@@ -4671,6 +4731,9 @@ msgstr "Принтер не может распечатать содержимо
msgid "Printer cannot print with supplied options."
msgstr "Принтер не может печатать с данными параметрами."
msgid "Printer does not support required IPP attributes or document formats."
msgstr ""
msgid "Printer:"
msgstr "Принтер:"
@@ -4988,21 +5051,6 @@ msgstr "Главная страница %d."
msgid "Statement"
msgstr "Оператор"
msgid "Stationery"
msgstr ""
msgid "Stationery Archival"
msgstr ""
msgid "Stationery Cotton"
msgstr ""
msgid "Stationery Heavyweight Coated"
msgstr ""
msgid "Stationery Inkjet Paper"
msgstr ""
#, c-format
msgid "Subscription #%d does not exist."
msgstr "Подписка #%d не существует."
+17 -6
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* Convert a GNU gettext .po file to an Apple .strings file.
*
* Copyright 2007-2015 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
*
* These coded instructions, statements, and computer programs are the
* property of Apple Inc. and are protected by Federal copyright
@@ -323,30 +323,41 @@ normalize_string(const char *idstr, /* I - msgid string */
*bufptr++ = (char)0xA6;
idstr += 2;
}
else if (!html && *idstr == '\\' && idstr[1] == '\"' && (quote || strchr(idstr + 2, '\"') != NULL))
else if (!html && *idstr == '\\' && idstr[1] == '\"')
{
if (quote)
{
/*
* Convert \" to Unicode right (curley) double quote.
* Convert second \" to Unicode right (curley) double quote.
*/
*bufptr++ = (char)0xE2;
*bufptr++ = (char)0x80;
*bufptr++ = (char)0x9D;
quote = 0;
}
else
else if (strchr(idstr + 2, '\"') != NULL)
{
/*
* Convert \" to Unicode left (curley) double quote.
* Convert first \" to Unicode left (curley) double quote.
*/
*bufptr++ = (char)0xE2;
*bufptr++ = (char)0x80;
*bufptr++ = (char)0x9C;
quote = 1;
}
else
{
/*
* Convert lone \" to Unicode double prime.
*/
*bufptr++ = (char)0xE2;
*bufptr++ = (char)0x80;
*bufptr++ = (char)0xB3;
}
quote = !quote;
idstr ++;
}
else
+5 -2
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* Man page to HTML conversion program.
*
* Copyright 2007-2010, 2014 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 2004-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
@@ -1153,8 +1153,11 @@ html_fputs(const char *s, /* I - String */
}
else
{
if (*s != '\\' && *s == '\"' && *s == '\'' && *s == '-')
if (*s != '\\' && *s != '\"' && *s != '\'' && *s != '-')
{
fprintf(stderr, "mantohtml: Unrecognized escape \"\\%c\" ignored.\n", *s);
html_putc('\\', fp);
}
html_putc(*s++, fp);
}
+2 -4
Ver Arquivo
@@ -2349,17 +2349,15 @@ cupsdSendHeader(
if (auth_type == CUPSD_AUTH_BASIC)
strlcpy(auth_str, "Basic realm=\"CUPS\"", sizeof(auth_str));
#ifdef HAVE_GSSAPI
else if (auth_type == CUPSD_AUTH_NEGOTIATE)
{
# ifdef AF_LOCAL
#ifdef AF_LOCAL
if (httpAddrFamily(httpGetAddress(con->http)) == AF_LOCAL)
strlcpy(auth_str, "Basic realm=\"CUPS\"", sizeof(auth_str));
else
# endif /* AF_LOCAL */
#endif /* AF_LOCAL */
strlcpy(auth_str, "Negotiate", sizeof(auth_str));
}
#endif /* HAVE_GSSAPI */
if (con->best && auth_type != CUPSD_AUTH_NEGOTIATE &&
!_cups_strcasecmp(httpGetHostname(con->http, NULL, 0), "localhost"))
+1 -5
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* Configuration routines for the CUPS scheduler.
*
* Copyright 2007-2016 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -2233,7 +2233,6 @@ parse_aaa(cupsd_location_t *loc, /* I - Location */
if (loc->level == CUPSD_AUTH_ANON)
loc->level = CUPSD_AUTH_USER;
}
#ifdef HAVE_GSSAPI
else if (!_cups_strcasecmp(value, "negotiate"))
{
loc->type = CUPSD_AUTH_NEGOTIATE;
@@ -2241,7 +2240,6 @@ parse_aaa(cupsd_location_t *loc, /* I - Location */
if (loc->level == CUPSD_AUTH_ANON)
loc->level = CUPSD_AUTH_USER;
}
#endif /* HAVE_GSSAPI */
else
{
cupsdLogMessage(CUPSD_LOG_WARN,
@@ -3175,10 +3173,8 @@ read_cupsd_conf(cups_file_t *fp) /* I - File to read from */
default_auth_type = CUPSD_AUTH_NONE;
else if (!_cups_strcasecmp(value, "basic"))
default_auth_type = CUPSD_AUTH_BASIC;
#ifdef HAVE_GSSAPI
else if (!_cups_strcasecmp(value, "negotiate"))
default_auth_type = CUPSD_AUTH_NEGOTIATE;
#endif /* HAVE_GSSAPI */
else if (!_cups_strcasecmp(value, "auto"))
default_auth_type = CUPSD_AUTH_AUTO;
else
+1 -1
Ver Arquivo
@@ -2123,7 +2123,7 @@ load_ppd(const char *filename, /* I - Real filename */
if (is_direct && !is_storage)
type = PPD_TYPE_OBJECT_DIRECT;
if (!is_direct && is_storage)
else if (!is_direct && is_storage)
type = PPD_TYPE_OBJECT_STORAGE;
else
type = PPD_TYPE_OBJECT_ANY;
+8 -3
Ver Arquivo
@@ -456,6 +456,7 @@ cupsdCleanJobs(void)
else if (job->file_time && job->file_time <= curtime)
{
cupsdLogJob(job, CUPSD_LOG_DEBUG, "Removing document files.");
cupsdLogJob(job, CUPSD_LOG_DEBUG2, "curtime=%ld, job->file_time=%ld", (long)curtime, (long)job->file_time);
remove_job_files(job);
cupsdMarkDirty(CUPSD_DIRTY_JOBS);
@@ -1743,6 +1744,8 @@ cupsdLoadJob(cupsd_job_t *job) /* I - Job */
else
job->file_time = INT_MAX;
cupsdLogJob(job, CUPSD_LOG_DEBUG2, "cupsdLoadJob: job->file_time=%ld, time-at-completed=%ld, JobFiles=%d", (long)job->file_time, (long)attr->values[0].integer, JobFiles);
if (job->file_time < JobHistoryUpdate || !JobHistoryUpdate)
JobHistoryUpdate = job->file_time;
@@ -2742,7 +2745,7 @@ cupsdSetJobState(
job->dirty = 1;
cupsdMarkDirty(CUPSD_DIRTY_JOBS);
}
else if (!job->printer)
else if (!JobHistory && !job->printer)
{
/*
* Delete the job immediately if not actively printing...
@@ -2876,12 +2879,14 @@ cupsdUpdateJobs(void)
else
job->file_time = INT_MAX;
cupsdLogJob(job, CUPSD_LOG_DEBUG2, "cupsdUpdateJobs: job->file_time=%ld, time-at-completed=%ld, JobFiles=%d", (long)job->file_time, (long)attr->values[0].integer, JobFiles);
if (job->file_time < JobHistoryUpdate || !JobHistoryUpdate)
JobHistoryUpdate = job->file_time;
}
}
cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdUpdateAllJobs: JobHistoryUpdate=%ld",
cupsdLogMessage(CUPSD_LOG_DEBUG2, "cupsdUpdateJobs: JobHistoryUpdate=%ld",
(long)JobHistoryUpdate);
}
@@ -4601,7 +4606,7 @@ set_time(cupsd_job_t *job, /* I - Job to update */
JobHistoryUpdate = job->history_time;
if (JobFiles < INT_MAX && attr)
job->file_time = attr->values[0].integer + JobFiles;
job->file_time = curtime + JobFiles;
else
job->file_time = INT_MAX;
+2 -2
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* Main loop for the CUPS scheduler.
*
* Copyright 2007-2016 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -889,7 +889,7 @@ main(int argc, /* I - Number of command-line args */
* Write dirty config/state files...
*/
if (DirtyCleanTime && current_time >= DirtyCleanTime)
if (DirtyCleanTime && current_time >= DirtyCleanTime && cupsArrayCount(Clients) == 0)
cupsdCleanDirty();
#ifdef __APPLE__
+68 -17
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* Printer routines for the CUPS scheduler.
*
* Copyright 2007-2016 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -3802,7 +3802,7 @@ load_ppd(cupsd_printer_t *p) /* I - Printer */
ipp_attribute_t *attr; /* Attribute data */
_ipp_value_t *val; /* Attribute value */
int num_finishings, /* Number of finishings */
finishings[5]; /* finishings-supported values */
finishings[100]; /* finishings-supported values */
int num_qualities, /* Number of print-quality values */
qualities[3]; /* print-quality values */
int num_margins, /* Number of media-*-margin-supported values */
@@ -4584,16 +4584,74 @@ load_ppd(cupsd_printer_t *p) /* I - Printer */
if (ppdFindOption(ppd, "Collate") != NULL)
p->type |= CUPS_PRINTER_COLLATE;
if (ppdFindOption(ppd, "StapleLocation") != NULL)
if (p->pc && p->pc->finishings)
{
p->type |= CUPS_PRINTER_STAPLE;
finishings[num_finishings++] = IPP_FINISHINGS_STAPLE;
}
_pwg_finishings_t *fin; /* Current finishing value */
if (ppdFindOption(ppd, "BindEdge") != NULL)
{
p->type |= CUPS_PRINTER_BIND;
finishings[num_finishings++] = IPP_FINISHINGS_BIND;
for (fin = (_pwg_finishings_t *)cupsArrayFirst(p->pc->finishings); fin; fin = (_pwg_finishings_t *)cupsArrayNext(p->pc->finishings))
{
if (num_finishings < (int)(sizeof(finishings) / sizeof(finishings[0])))
finishings[num_finishings++] = fin->value;
switch (fin->value)
{
case IPP_FINISHINGS_BIND :
case IPP_FINISHINGS_BIND_LEFT :
case IPP_FINISHINGS_BIND_TOP :
case IPP_FINISHINGS_BIND_RIGHT :
case IPP_FINISHINGS_BIND_BOTTOM :
case IPP_FINISHINGS_EDGE_STITCH :
case IPP_FINISHINGS_EDGE_STITCH_LEFT :
case IPP_FINISHINGS_EDGE_STITCH_TOP :
case IPP_FINISHINGS_EDGE_STITCH_RIGHT :
case IPP_FINISHINGS_EDGE_STITCH_BOTTOM :
p->type |= CUPS_PRINTER_BIND;
break;
case IPP_FINISHINGS_COVER :
p->type |= CUPS_PRINTER_COVER;
break;
case IPP_FINISHINGS_PUNCH :
case IPP_FINISHINGS_PUNCH_TOP_LEFT :
case IPP_FINISHINGS_PUNCH_BOTTOM_LEFT :
case IPP_FINISHINGS_PUNCH_TOP_RIGHT :
case IPP_FINISHINGS_PUNCH_BOTTOM_RIGHT :
case IPP_FINISHINGS_PUNCH_DUAL_LEFT :
case IPP_FINISHINGS_PUNCH_DUAL_TOP :
case IPP_FINISHINGS_PUNCH_DUAL_RIGHT :
case IPP_FINISHINGS_PUNCH_DUAL_BOTTOM :
case IPP_FINISHINGS_PUNCH_TRIPLE_LEFT :
case IPP_FINISHINGS_PUNCH_TRIPLE_TOP :
case IPP_FINISHINGS_PUNCH_TRIPLE_RIGHT :
case IPP_FINISHINGS_PUNCH_TRIPLE_BOTTOM :
case IPP_FINISHINGS_PUNCH_QUAD_LEFT :
case IPP_FINISHINGS_PUNCH_QUAD_TOP :
case IPP_FINISHINGS_PUNCH_QUAD_RIGHT :
case IPP_FINISHINGS_PUNCH_QUAD_BOTTOM :
p->type |= CUPS_PRINTER_PUNCH;
break;
case IPP_FINISHINGS_STAPLE :
case IPP_FINISHINGS_STAPLE_TOP_LEFT :
case IPP_FINISHINGS_STAPLE_BOTTOM_LEFT :
case IPP_FINISHINGS_STAPLE_TOP_RIGHT :
case IPP_FINISHINGS_STAPLE_BOTTOM_RIGHT :
case IPP_FINISHINGS_STAPLE_DUAL_LEFT :
case IPP_FINISHINGS_STAPLE_DUAL_TOP :
case IPP_FINISHINGS_STAPLE_DUAL_RIGHT :
case IPP_FINISHINGS_STAPLE_DUAL_BOTTOM :
case IPP_FINISHINGS_STAPLE_TRIPLE_LEFT :
case IPP_FINISHINGS_STAPLE_TRIPLE_TOP :
case IPP_FINISHINGS_STAPLE_TRIPLE_RIGHT :
case IPP_FINISHINGS_STAPLE_TRIPLE_BOTTOM :
p->type |= CUPS_PRINTER_STAPLE;
break;
default :
break;
}
}
}
for (i = 0; i < ppd->num_sizes; i ++)
@@ -4714,13 +4772,6 @@ load_ppd(cupsd_printer_t *p) /* I - Printer */
"printer-commands", NULL, "none");
}
/*
* 3D printer support...
*/
if (ppdFindAttr(ppd, "cups3D", NULL))
p->type |= CUPS_PRINTER_3D;
/*
* Show current and available port monitors for this printer...
*/
+2 -2
Ver Arquivo
@@ -1,7 +1,7 @@
/*
* Process management routines for the CUPS scheduler.
*
* Copyright 2007-2015 by Apple Inc.
* Copyright 2007-2017 by Apple Inc.
* Copyright 1997-2007 by Easy Software Products, all rights reserved.
*
* These coded instructions, statements, and computer programs are the
@@ -874,7 +874,7 @@ cupsd_requote(char *dst, /* I - Destination buffer */
if (ch == '/' && !*src)
break; /* Don't add trailing slash */
if (strchr(".?*()[]^$\\", ch))
if (strchr(".?*()[]^$\\\"", ch))
*dstptr++ = '\\';
*dstptr++ = (char)ch;
+1 -1
Ver Arquivo
@@ -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="Beendete Aufträ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äge anzeigen"></FORM>}
<P ALIGN="CENTER">{total=0?Keine Aufträge:Zeige {#job_id} von {total} {?which_jobs=?aktiven:{which_jobs=all?:beendeten}} {total=1?Auftrag:Aufträgen}}.</P>
<P ALIGN="CENTER">{?which_jobs=?Jobs listed in print order; held jobs appear first.:{which_jobs=Jobs listed in ascending order.?:Jobs listed in descending order.}}</P>
+1 -1
Ver Arquivo
@@ -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="Mostrar trabajos completados"></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="Mostrar todos los trabajos"></FORM>}
<P ALIGN="CENTER">{total=0?No hay trabajos:Mostrando {#job_id} de {total} trabajo{total=1?:s}{?which_jobs=? activo{total=1?:s}:{which_jobs=all?: completado{total=1?:s}}}}.</P>
<P ALIGN="CENTER">{?which_jobs=?Jobs listed in print order; held jobs appear first.:{which_jobs=Jobs listed in ascending order.?:Jobs listed in descending order.}}</P>
+1 -1
Ver Arquivo
@@ -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>}
<P ALIGN="CENTER">{total=0?ジョブはありません:{total} 個の{?which_jobs=?アクティブな:{which_jobs=all?:完了した}}ジョブのうち {#job_id} 個を表示中}}</P>
<P ALIGN="CENTER">{?which_jobs=?Jobs listed in print order; held jobs appear first.:{which_jobs=Jobs listed in ascending order.?:Jobs listed in descending order.}}</P>
+1 -1
Ver Arquivo
@@ -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="Show Completed Jobs"></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="Show All Jobs"></FORM>}
<P ALIGN="CENTER">{total=0?No jobs:Showing {#job_id} of {total} {?which_jobs=?active:{which_jobs=all?:completed}} job{total=1?:s}}.</P>
<P ALIGN="CENTER">{?which_jobs=?Jobs listed in print order; held jobs appear first.:{which_jobs=Jobs listed in ascending order.?:Jobs listed in descending order.}}</P>
+1 -1
Ver Arquivo
@@ -2,4 +2,4 @@
{?which_jobs=completed?:<FORM ACTION="{?printer_name=?/jobs:{printer_uri_supported}}" METHOD="GET"><INPUT TYPE="HIDDEN" NAME="which_jobs" VALUE="conclu&iacute;dos"><INPUT TYPE="SUBMIT" VALUE="Mostrar trabalhos conclu&iacute;dos"></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="Mostrar todos trabalhos"></FORM>}
<P ALIGN="CENTER">{total=0?Nenhum trabalho:Mostrando {#job_id} de {total} trabalho{total=1?:s}} {?which_jobs=?ativo{total<2?:s}}:{which_jobs=all?:conclu&iacute;dos}.</P>
<P ALIGN="CENTER">{?which_jobs=?Jobs listed in print order; held jobs appear first.:{which_jobs=Jobs listed in ascending order.?:Jobs listed in descending order.}}</P>
+1 -1
Ver Arquivo
@@ -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>}
<P ALIGN="CENTER">{total=0?Нет заданий:Задание {#job_id} из {total} {?which_jobs=?активных:{which_jobs=all?:завершенных}}}.</P>
<P ALIGN="CENTER">{?which_jobs=?Jobs listed in print order; held jobs appear first.:{which_jobs=Jobs listed in ascending order.?:Jobs listed in descending order.}}</P>
+2 -2
Ver Arquivo
@@ -94,8 +94,8 @@ typedef unsigned long useconds_t;
* Version of software...
*/
#define CUPS_SVERSION "CUPS v2.2.2"
#define CUPS_MINIMAL "CUPS/2.2.2"
#define CUPS_SVERSION "CUPS v2.2.3"
#define CUPS_MINIMAL "CUPS/2.2.3"
/*
+2 -2
Ver Arquivo
@@ -22,8 +22,8 @@
* Version of software...
*/
#define CUPS_SVERSION "CUPS v2.2.2"
#define CUPS_MINIMAL "CUPS/2.2.2"
#define CUPS_SVERSION "CUPS v2.2.3"
#define CUPS_MINIMAL "CUPS/2.2.3"
/*