font-style: italic;
margin-left: 36pt;
}
-
+
+DL.man DD {
+ margin-left: 5em;
+}
+
+DL.man DT {
+ margin-left: 0;
+}
+
+PRE.man {
+ margin: 0;
+}
+
PRE.example {
background: #eeeeee;
border: dotted thin #999999;
}
A:link, A:visited {
- font-weight: normal;
+ font-weight: inherit;
text-decoration: none;
}
<body>
<div class='body'>
<!--
- "$Id: spec-ppd.html 9345 2010-10-26 23:46:51Z mike $"
-
PPD extension documentation for CUPS.
Copyright 2007-2011 by Apple Inc.
<li><a href="#cupsUIResolver">cupsUIResolver</a></li>
</ul></li>
<li><a href="#I18N">Globalized PPD Support</a></li>
-<li><a href="#OPTIONS">CUPS 1.3/Mac OS X 10.6Custom Options</a></li>
+<li><a href="#OPTIONS">CUPS 1.3/macOS 10.6Custom Options</a></li>
<li><a href="#RASTERPS">Writing PostScript Option Commands for Raster Drivers</a></li>
<li><a href="#MEDIA">Media Keywords</a><ul class="subcontents">
<li><a href="#cupsMediaQualifier2">cupsMediaQualifier2</a></li>
<li><a href="#cupsMediaQualifier3">cupsMediaQualifier3</a></li>
<li><a href="#cupsMinSize">cupsMinSize</a></li>
<li><a href="#cupsMaxSize">cupsMaxSize</a></li>
+ <li><a href="#cupsPageSizeCategory">cupsPageSizeCategory</a></li>
</ul></li>
<li><a href="#ATTRIBUTES">General Attributes</a><ul class="subcontents">
<li><a href="#cupsBackSide">cupsBackSide</a></li>
<li><a href="#cupsIPPFinishings">cupsIPPFinishings</a></li>
<li><a href="#cupsIPPReason">cupsIPPReason</a></li>
<li><a href="#cupsIPPSupplies">cupsIPPSupplies</a></li>
+ <li><a href="#cupsJobAccountId">cupsJobAccountId</a></li>
+ <li><a href="#cupsJobAccountingUserId">cupsJobAccountingUserId</a></li>
+ <li><a href="#cupsJobPassword">cupsJobPassword</a></li>
<li><a href="#cupsLanguages">cupsLanguages</a></li>
+ <li><a href="#cupsMandatory">cupsMandatory</a></li>
<li><a href="#cupsManualCopies">cupsManualCopies</a></li>
<li><a href="#cupsMarkerName">cupsMarkerName</a></li>
<li><a href="#cupsMarkerNotice">cupsMarkerNotice</a></li>
+ <li><a href="#cupsMaxCopies">cupsMaxCopies</a></li>
<li><a href="#cupsModelNumber">cupsModelNumber</a></li>
<li><a href="#cupsPJLCharset">cupsPJLCharset</a></li>
<li><a href="#cupsPJLDisplay">cupsPJLDisplay</a></li>
<li><a href="#cupsSingleFile">cupsSingleFile</a></li>
<li><a href="#cupsSNMPSupplies">cupsSNMPSupplies</a></li>
<li><a href="#cupsVersion">cupsVersion</a></li>
+ <li><a href="#JCLToPDFInterpreter">JCLToPDFInterpreter</a></li>
</ul></li>
-<li><a href="#MACOSX">Mac OS X Attributes</a><ul class="subcontents">
+<li><a href="#MACOSX">macOS Attributes</a><ul class="subcontents">
<li><a href="#APDialogExtension">APDialogExtension</a></li>
<li><a href="#APDuplexRequiresFlippedMargin">APDuplexRequiresFlippedMargin</a></li>
<li><a href="#APHelpBook">APHelpBook</a></li>
<p>CUPS supports several methods of auto-configuration via PPD keywords.</p>
-<h3><span class='info'>Mac OS X 10.5</span><a name='APAutoSetupTool'>APAutoSetupTool</a></h3>
+<h3><span class='info'>macOS 10.5</span><a name='APAutoSetupTool'>APAutoSetupTool</a></h3>
<p class='summary'>*APAutoSetupTool: "/LibraryPrinters/vendor/filename"</p>
-<p>This Mac OS X keyword defines a program that sets the default option choices. It is run when a printer is added from the <var>Add Printer</var> window or the <var>Nearby Printers</var> list in the <var>Print</var> dialog.</p>
+<p>This macOS keyword defines a program that sets the default option choices. It is run when a printer is added from the <var>Add Printer</var> window or the <var>Nearby Printers</var> list in the <var>Print</var> dialog.</p>
<p>The program is provided with two arguments: the printer's device URI and the PPD file to be used for the printer. The program must write an updated PPD file to stdout.</p>
*APAutoSetupTool: "/Library/Printers/vendor/Tools/autosetuptool"
</pre>
-<h3><span class='info'>Mac OS X 10.2/CUPS 1.4</span><a name='QUERYKEYWORD'>?MainKeyword</a></h3>
+<h3><span class='info'>macOS 10.2/CUPS 1.4</span><a name='QUERYKEYWORD'>?MainKeyword</a></h3>
<p class='summary'>*?<i>MainKeyword</i>: "<br>
PostScript query code that writes a message using the = operator...<br>
*CloseUI: OptionDuplex
</pre>
-<h3><span class='info'>Mac OS X 10.4/CUPS 1.5</span><a name='OID'>OIDMainKeyword</a></h3>
+<h3><span class='info'>macOS 10.4/CUPS 1.5</span><a name='OID'>OIDMainKeyword</a></h3>
<p class='summary'>*?OID<i>MainKeyword</i>: ".n.n.n..."<br>
*OID<i>MainKeyword</i> <i>OptionKeyword1</i>: "value"<br>
<h2 class='title'><a name='PROFILES'>Color Profiles</a></h2>
-<p>CUPS supports three types of color profiles. The first type is based on sRGB and is used by the standard CUPS raster filters and GPL Ghostscript. The second type is based on ICC profiles and is used by the Quartz-based filters on MacOS X. The final type is based on well-known colorspaces such as sRGB and Adobe RGB.</p>
+<p>CUPS supports three types of color profiles. The first type is based on sRGB and is used by the standard CUPS raster filters and GPL Ghostscript. The second type is based on ICC profiles and is used by the Quartz-based filters on MacmacOS. The final type is based on well-known colorspaces such as sRGB and Adobe RGB.</p>
<blockquote><b>Note:</b>
<p class='summary'>*cupsColorProfile Resolution/MediaType: "density gamma m00 m01 m02 m10 m11 m12 m20 m21 m22"</p>
-<p>This string keyword specifies an sRGB-based color profile consisting of gamma and density controls and a 3x3 CMY color transform matrix. <em>This keyword is not supported on Mac OS X.</em></p>
+<p>This string keyword specifies an sRGB-based color profile consisting of gamma and density controls and a 3x3 CMY color transform matrix. <em>This keyword is not supported on macOS.</em></p>
<p>The <i>Resolution</i> and <i>MediaType</i> values may be "-" to act as a wildcard. Otherwise they must match one of the <tt>Resolution</tt> or <tt>MediaType</tt> option keywords defined in the PPD file.</p>
</pre>
-<h3><span class='info'>Mac OS X 10.3/CUPS 1.2</span><a name='cupsICCProfile'>cupsICCProfile</a></h3>
+<h3><span class='info'>macOS 10.3/CUPS 1.2</span><a name='cupsICCProfile'>cupsICCProfile</a></h3>
<p class='summary'>*cupsICCProfile ColorModel.MediaType.Resolution/Description: "filename"</p>
<h4>Customizing the Profile Selection Keywords</h4>
-<p>The <tt>MediaType</tt> and <tt>Resolution</tt> main keywords can be reassigned to different main keywords, allowing drivers to do color profile selection based on different parameters. The <tt>cupsICCQualifier2</tt> and <tt>cupsICCQualifier3</tt> keywords define the mapping from selector to main keyword:</p>
+<p>The <tt>ColorModel</tt>, <tt>MediaType</tt>, and <tt>Resolution</tt> main keywords can be reassigned to different main keywords, allowing drivers to do color profile selection based on different parameters. The <tt>cupsICCQualifier1</tt>, <tt>cupsICCQualifier2</tt>, and <tt>cupsICCQualifier3</tt> keywords define the mapping from selector to main keyword:</p>
<pre class='command'>
+*cupsICCQualifier1: MainKeyword1
*cupsICCQualifier2: MainKeyword2
*cupsICCQualifier3: MainKeyword3
</pre>
<p>The default mapping is as follows:</p>
<pre class='command'>
+*cupsICCQualifier1: ColorModel
*cupsICCQualifier2: MediaType
*cupsICCQualifier3: Resolution
</pre>
-<h3><span class='info'>Mac OS X 10.4</span><a name='APCustom'>Custom Color Matching Support</a></h3>
+<h3><span class='info'>macOS 10.4</span><a name='APCustom'>Custom Color Matching Support</a></h3>
<p class='summary'>*<a href='#APSupportsCustomColorMatching'>APSupportsCustomColorMatching</a>: true<br>
*<a href='#APCustomColorMatchingName'>APCustomColorMatchingName</a> name/text: ""<br>
*<a href='#APCustomColorMatchingProfile'>APCustomColorMatchingProfile</a>: profile<br>
*<a href='#APDefaultCustomColorMatchingProfile'>APDefaultCustomColorMatchingProfile</a>: profile</p>
-<p>These keywords tell the Mac OS X raster filters that the printer driver provides its own custom color matching and that generic color profiles should be used when generating 1-, 3-, and 4-component raster data as requested by the driver. The <tt>APCustomColorMatchingProfile</tt> and <tt>APDefaultColorMatchingProfile</tt> keywords specify alternate color profiles (sRGB or AdobeRGB) to use for 3-color (RGB) raster data.</p>
+<p>These keywords tell the macOS raster filters that the printer driver provides its own custom color matching and that generic color profiles should be used when generating 1-, 3-, and 4-component raster data as requested by the driver. The <tt>APCustomColorMatchingProfile</tt> and <tt>APDefaultColorMatchingProfile</tt> keywords specify alternate color profiles (sRGB or AdobeRGB) to use for 3-color (RGB) raster data.</p>
<blockquote><b>Note:</b>
-<p>Prior to Mac OS X 10.6, the default RGB color space was Apple's "GenericRGB". The new default in Mac OS X 10.6 and later is "sRGB". For more information, see <a href="http://support.apple.com/kb/HT3712">"Mac OS X v10.6: About gamma 2.2"</a> on Apple's support site.</p>
+<p>Prior to macOS 10.6, the default RGB color space was Apple's "GenericRGB". The new default in macOS 10.6 and later is "sRGB". For more information, see <a href="http://support.apple.com/kb/HT3712">"macOS v10.6: About gamma 2.2"</a> on Apple's support site.</p>
</blockquote>
-<h4><span class='info'>Mac OS X 10.5</span><a name='APCustomColorMatchingName'>APCustomColorMatchingName</a></h4>
+<h4><span class='info'>macOS 10.5</span><a name='APCustomColorMatchingName'>APCustomColorMatchingName</a></h4>
<p class='summary'>*APCustomColorMatchingName name/text: ""</p>
*fr.APCustomColorMatchingName name/La AcmeColor(tm): ""
</pre>
-<h4><span class='info'>Mac OS X 10.5</span><a name='APCustomColorMatchingProfile'>APCustomColorMatchingProfile</a></h4>
+<h4><span class='info'>macOS 10.5</span><a name='APCustomColorMatchingProfile'>APCustomColorMatchingProfile</a></h4>
<p class='summary'>*APCustomColorMatchingProfile: name</p>
*APCustomColorMatchingProfile: AdobeRGB
</pre>
-<h4><span class='info'>Mac OS X 10.5</span><a name='APDefaultCustomColorMatchingProfile'>APDefaultCustomColorMatchingProfile</a></h4>
+<h4><span class='info'>macOS 10.5</span><a name='APDefaultCustomColorMatchingProfile'>APDefaultCustomColorMatchingProfile</a></h4>
<p class='summary'>*APDefaultCustomColorMatchingProfile: name</p>
*APDefaultCustomColorMatchingProfile: sRGB
</pre>
-<h4><span class='info'>Mac OS X 10.4</span><a name='APSupportsCustomColorMatching'>APSupportsCustomColorMatching</a></h4>
+<h4><span class='info'>macOS 10.4</span><a name='APSupportsCustomColorMatching'>APSupportsCustomColorMatching</a></h4>
<p class='summary'>*APSupportsCustomColorMatching: boolean</p>
</blockquote>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsUIConstraints'>cupsUIConstraints</a></h3>
+<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsUIConstraints'>cupsUIConstraints</a></h3>
<p class='summary'>*cupsUIConstraints resolver: "*Keyword1 *Keyword2 ..."<br>
*cupsUIConstraints resolver: "*Keyword1 OptionKeyword1 *Keyword2 ..."<br>
*cupsUIConstraints photo: "*OutputMode Photo *MediaType Transparency *Resolution 1200dpi"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsUIResolver'>cupsUIResolver</a></h3>
+<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsUIResolver'>cupsUIResolver</a></h3>
<p class='summary'>*cupsUIResolver resolver: "*Keyword1 OptionKeyword1 *Keyword2 OptionKeyword2 ..."</p>
</pre>
-<h2 class='title'><a name='OPTIONS'><span class="info">CUPS 1.3/Mac OS X 10.6</span>Custom Options</a></h2>
+<h2 class='title'><a name='OPTIONS'><span class="info">CUPS 1.3/macOS 10.6</span>Custom Options</a></h2>
<p>CUPS supports custom options using an extension of the <tt>CustomPageSize</tt> and <tt>ParamCustomPageSize</tt> syntax:</p>
<p>The resulting dictionary sets the page device attributes that are sent to your raster driver in the page header.</p>
-<h3>Custom Page Size Code</a></h3>
+<h3>Custom Page Size Code</h3>
<p>There are many possible implementations of the <tt>CustomPageSize</tt> code. For CUPS raster drivers, the following code is recommended:</p>
*CustomPageSize True: "pop pop pop <</PageSize[5 -2 roll]/ImagingBBox null>>setpagedevice"
</pre>
-<h3>Supported PostScript Operators</a></h3>
+<h3>Supported PostScript Operators</h3>
<p>CUPS supports the following PostScript operators in addition to the usual PostScript number, string (literal and hex-encoded), boolean, null, and name values:</p>
</blockquote>
-<h3>Supported Page Device Attributes</a></h3>
+<h3>Supported Page Device Attributes</h3>
<p>Table 2 shows the supported page device attributes along with PostScript code examples.</p>
<p>The CUPS media keywords allow drivers to specify alternate custom page
size limits based on up to two options.</p>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMediaQualifier2'>cupsMediaQualifier2</a></h3>
+<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMediaQualifier2'>cupsMediaQualifier2</a></h3>
<p class='summary'>*cupsMediaQualifier2: MainKeyword</p>
*cupsMinSize ..Photo: "300 300"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMediaQualifier3'>cupsMediaQualifier3</a></h3>
+<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMediaQualifier3'>cupsMediaQualifier3</a></h3>
<p class='summary'>*cupsMediaQualifier3: MainKeyword</p>
*cupsMinSize ..Photo: "300 300"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMinSize'>cupsMinSize</a></h3>
+<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMinSize'>cupsMinSize</a></h3>
<p class='summary'>*cupsMinSize .Qualifier2.Qualifier3: "width length"<br>
*cupsMinSize .Qualifier2.: "width length"<br>
*cupsMinSize ..Photo: "300 300"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMaxSize'>cupsMaxSize</a></h3>
+<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMaxSize'>cupsMaxSize</a></h3>
<p class='summary'>*cupsMaxSize .Qualifier2.Qualifier3: "width length"<br>
*cupsMaxSize .Qualifier2.: "width length"<br>
</pre>
+<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsPageSizeCategory'>cupsPageSizeCategory</a></h3>
+
+<p class="summary">*cupsPageSizeCategory name/text: "name name2 ... nameN"</p>
+
+<p>This keyword lists related paper size names that should be grouped together in the Print or Page Setup dialogs. The "name" portion of the keyword specifies the root/default size for the grouping. On macOS the grouped paper sizes are shown in a submenu of the main paper size. When omitted, sizes with the same dimensions are automatically grouped together, for example "Letter" and "Letter.Borderless".</p>
+
+<p>Example:</p>
+
+<pre class="command">
+<em>*% Specify grouping of borderless/non-borderless sizes</em>
+*cupsPageSizeCategory Letter/US Letter: "Letter Letter.Borderless"
+*cupsPageSizeCategory A4/A4: "A4 A4.Borderless"
+</pre>
+
+
<h2 class='title'><a name='ATTRIBUTES'>General Attributes</a></h2>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsBackSide'>cupsBackSide</a></h3>
+<h3><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsBackSide'>cupsBackSide</a></h3>
<p class='summary'>*cupsBackSide: keyword</p>
</table>
</div>
-<p><em>* - Not supported in Mac OS X 10.5.x and earlier</em></p>
+<p><em>* - Not supported in macOS 10.5.x and earlier</em></p>
<div class='figure'><table summary='Back side images'>
<caption>Figure 1: Back side images</caption>
<p>Also see the related <a href='#APDuplexRequiresFlippedMargin'><tt>APDuplexRequiresFlippedMargin</tt></a>
keyword.</p>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsCommands'>cupsCommands</a></h3>
+<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsCommands'>cupsCommands</a></h3>
<p class='summary'>*cupsCommands: "name name2 ... nameN"</p>
</pre>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsEvenDuplex'>cupsEvenDuplex</a></h3>
+<h3><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsEvenDuplex'>cupsEvenDuplex</a></h3>
<p class='summary'>*cupsEvenDuplex: boolean</p>
<p class='summary'>*cupsFlipDuplex: boolean</p>
-<p>Due to implementation differences between Mac OS X and Ghostscript,
+<p>Due to implementation differences between macOS and Ghostscript,
the <tt>cupsFlipDuplex</tt> keyword is deprecated. Instead, use
the <a href='#cupsBackSide'><tt>cupsBackSide</tt></a> keyword to specify
the coordinate system (pixel layout) of the page data on the back side of
duplex pages.</p>
<p>The value <code>true</code> maps to a <tt>cupsBackSide</tt> value
-of <code>Rotated</code> on Mac OS X and <code>Flipped</code> with
+of <code>Rotated</code> on macOS and <code>Flipped</code> with
Ghostscript.</p>
<p>The default value is <code>false</code>.</p>
<blockquote><b>Note:</b>
-<p>Mac OS X drivers that previously used
+<p>macOS drivers that previously used
<tt>cupsFlipDuplex</tt> may wish to provide both the old and
new keywords for maximum compatibility, for example:</p>
*cupsFlipDuplex: true
</pre></blockquote>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsIPPFinishings'>cupsIPPFinishings</a></h3>
+<h3><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsIPPFinishings'>cupsIPPFinishings</a></h3>
<p class='summary'>*cupsIPPFinishings number/text: "*Option Choice ..."</p>
*cupsIPPFinishings 21/staple-bottom-left: "*StapleLocation SingleLandscape"
</pre>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsIPPReason'>cupsIPPReason</a></h3>
+<h3><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsIPPReason'>cupsIPPReason</a></h3>
<p class='summary'>*cupsIPPReason reason/Reason Text: "optional URIs"</p>
*cupsIPPSupplies: False
</pre>
-<h3><span class='info'>CUPS 1.2/Mac OS X 10.5</span><a name='cupsLanguages'>cupsLanguages</a></h3>
+
+<h3><span class='info'>CUPS 1.7/macOS 10.9</span><a name='cupsJobAccountId'>cupsJobAccountId</a></h3>
+
+<p class='summary'>*cupsJobAccountId: boolean</p>
+
+<p>This keyword defines whether the printer accepts the job-account-id IPP attribute.</p>
+
+<p>Example:</p>
+
+<pre class='command'>
+<em>*% Specify the printer accepts the job-account-id IPP attribute.</em>
+*cupsJobAccountId: True
+</pre>
+
+
+<h3><span class='info'>CUPS 1.7/macOS 10.9</span><a name='cupsJobAccountingUserId'>cupsJobAccountingUserId</a></h3>
+
+<p class='summary'>*cupsJobAccountingUserId: boolean</p>
+
+<p>This keyword defines whether the printer accepts the job-accounting-user-id IPP attribute.</p>
+
+<p>Example:</p>
+
+<pre class='command'>
+<em>*% Specify the printer accepts the job-accounting-user-id IPP attribute.</em>
+*cupsJobAccountingUserId: True
+</pre>
+
+
+<h3><span class='info'>CUPS 1.7/macOS 10.9</span><a name='cupsJobPassword'>cupsJobPassword</a></h3>
+
+<p class='summary'>*cupsJobPassword: "format"</p>
+
+<p>This keyword defines the format of the job-password IPP attribute, if supported by the printer. Currently the only supported format is "1111" indicating a 4-digit PIN code.</p>
+
+<p>Example:</p>
+
+<pre class='command'>
+<em>*% Specify the printer supports 4-digit PIN codes.</em>
+*cupsJobPassword: "1111"
+</pre>
+
+
+<h3><span class='info'>CUPS 1.2/macOS 10.5</span><a name='cupsLanguages'>cupsLanguages</a></h3>
<p class='summary'>*cupsLanguages: "locale list"</p>
*cupsLanguages: "en_CA en_UK en_US fr_CA fr_FR"
</pre>
+
+<h3><span class='info'>CUPS 1.7/macOS 10.9</span><a name='cupsMandatory'>cupsMandatory</a></h3>
+
+<p class='summary'>*cupsMandatory: "attribute1 attribute2 ... attributeN"</p>
+
+<p>This keyword defines a list of IPP attributes that must be provided when submitting a print job creation request.</p>
+
+<p>Example:</p>
+
+<pre class='command'>
+<em>*% Specify that the user must supply a job-password</em>
+*cupsMandatory: "job-password job-password-encryption"
+</pre>
+
+
<h3><a name='cupsManualCopies'>cupsManualCopies</a></h3>
<p class='summary'>*cupsManualCopies: boolean</p>
*cupsManualCopies: true
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMarkerName'>cupsMarkerName</a></h3>
+<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMarkerName'>cupsMarkerName</a></h3>
<p class='summary'>*cupsMarkerName/Name Text: ""</p>
*cupsMarkerName cyanToner/Cyan Toner: ""
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsMarkerNotice'>cupsMarkerNotice</a></h3>
+<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMarkerNotice'>cupsMarkerNotice</a></h3>
<p class='summary'>*cupsMarkerNotice: "disclaimer text"</p>
*cupsMarkerNotice: "Supply levels are approximate."
</pre>
+<h3><span class='info'>CUPS 1.6/macOS 10.8</span><a name='cupsMaxCopies'>cupsMaxCopies</a></h3>
+
+<p class='summary'>*cupsMaxCopies: integer</p>
+
+<p>This integer keyword notifies the filters that the destination printer supports up to N copies in hardware. The default value is <code>9999</code>.</p>
+
+<p>Example:</p>
+
+<pre class='command'>
+<em>*% Tell the RIP filters we can do up to 99 copies</em>
+*cupsMaxCopies: 99
+</pre>
+
<h3><a name='cupsModelNumber'>cupsModelNumber</a></h3>
<p class='summary'>*cupsModelNumber: number</p>
*cupsModelNumber: 1234
</pre>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsPJLCharset'>cupsPJLCharset</a></h3>
+
+<h3><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsPJLCharset'>cupsPJLCharset</a></h3>
<p class='summary'>*cupsPJLCharset: "ISO character set name"</p>
*cupsPJLCharset: "UTF-8"
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsPJLDisplay'>cupsPJLDisplay</a></h3>
+<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsPJLDisplay'>cupsPJLDisplay</a></h3>
<p class='summary'>*cupsPJLDisplay: "what"</p>
*cupsPJLDisplay: "none"
</pre>
-<h3><span class='info'>CUPS 1.2/Mac OS X 10.5</span><a name='cupsPortMonitor'>cupsPortMonitor</a></h3>
+<h3><span class='info'>CUPS 1.2/macOS 10.5</span><a name='cupsPortMonitor'>cupsPortMonitor</a></h3>
<p class='summary'>*cupsPortMonitor urischeme/Descriptive Text: "port monitor"</p>
*cupsPortMonitor usb/USB Status Monitor: "epson-usb"
</pre>
-<h3><span class='info'>CUPS 1.3/Mac OS X 10.5</span><a name='cupsPreFilter'>cupsPreFilter</a></h3>
+<h3><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsPreFilter'>cupsPreFilter</a></h3>
<p class='summary'>*cupsPreFilter: "source/type cost program"</p>
*cupsSingleFile: True
</pre>
-<h3><span class='info'>CUPS 1.4/Mac OS X 10.6</span><a name='cupsSNMPSupplies'>cupsSNMPSupplies</a></h3>
+<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsSNMPSupplies'>cupsSNMPSupplies</a></h3>
<p class='summary'>*cupsSNMPSupplies: boolean</p>
<p>This required keyword describes which version of the CUPS
PPD file extensions was used. Currently it must be the string
-"1.0", "1.1", "1.2", or "1.3".</p>
+"1.0", "1.1", "1.2", "1.3", "1.4", "1.5", or "1.6".</p>
<p>Example:</p>
</pre>
-<h2 class='title'><a name='MACOSX'>Mac OS X Attributes</a></h2>
+<h3><span class="info">CUPS 1.6/macOS 10.8</span><a name="JCLToPDFInterpreter">JCLToPDFInterpreter</a></h3>
+
+<p class="summary">*JCLToPDFInterpreter: "JCL"</p>
+
+<p>This keyword provides the JCL command to insert a PDF job file into a printer-ready data stream. The JCL command is added after the <tt>JCLBegin</tt> value and any commands for JCL options in the PPD file.</p>
+
+<p>Example:</p>
+
+<pre class='command'>
+<em>*% PJL command to start the PDF interpreter</em>
+*JCLToPDFInterpreter: "@PJL ENTER LANGUAGE = PDF<0A>"
+</pre>
+
+
+<h2 class='title'><a name='MACOSX'>macOS Attributes</a></h2>
-<h3><span class='info'>Mac OS X 10.3</span><a name='APDialogExtension'>APDialogExtension</a></h3>
+<h3><span class='info'>macOS 10.3</span><a name='APDialogExtension'>APDialogExtension</a></h3>
<p class='summary'>*APDialogExtension: "/Library/Printers/vendor/filename.plugin"</p>
<blockquote><b>Note:</b>
-<p>Starting with Mac OS X 10.5, each plug-in must be compiled "4-way fat"
+<p>Starting with macOS 10.5, each plug-in must be compiled "4-way fat"
(32-bit and 64-bit for both PowerPC and Intel) with garbage collection enabled
in order to be usable with all applications.</p>
*APDialogExtension: "/Library/Printers/vendor/options.plugin"
</pre>
-<h3><span class='info'>Mac OS X 10.4</span><a name='APDuplexRequiresFlippedMargin'>APDuplexRequiresFlippedMargin</a></h3>
+<h3><span class='info'>macOS 10.4</span><a name='APDuplexRequiresFlippedMargin'>APDuplexRequiresFlippedMargin</a></h3>
<p class='summary'>*APDuplexRequiresFlippedMargin: boolean</p>
*APHelpBook: "file:///Library/Printers/vendor/Help.bundle"
</pre>
-<h3><span class='info'>Mac OS X 10.6</span><a name='APICADriver'>APICADriver</a></h3>
+<h3><span class='info'>macOS 10.6</span><a name='APICADriver'>APICADriver</a></h3>
<p class='summary'>*APICADriver: boolean</p>
*APScanAppBundleID: "com.apple.ImageCaptureApp"
</pre>
-<h3><span class='info'>Mac OS X 10.3</span><a name='APPrinterIconPath'>APPrinterIconPath</a></h3>
+<h3><span class='info'>macOS 10.3</span><a name='APPrinterIconPath'>APPrinterIconPath</a></h3>
<p class='summary'>*APPrinterIconPath: "/Library/Printers/vendor/filename.icns"</p>
*APPrinterIconPath: "/Library/Printers/vendor/Icons/filename.icns"
</pre>
-<h3><span class='info'>Mac OS X 10.4</span><a name='APPrinterLowInkTool'>APPrinterLowInkTool</a></h3>
+<h3><span class='info'>macOS 10.4</span><a name='APPrinterLowInkTool'>APPrinterLowInkTool</a></h3>
<p class='summary'>*APPrinterLowInkTool: "/Library/Printers/vendor/program"</p>
*APPrinterLowInkTool: "/Library/Printers/vendor/Tools/lowinktool"
</pre>
-<h3><span class='info'>Mac OS X 10.5</span><a name='APPrinterPreset'>APPrinterPreset</a></h3>
+<h3><span class='info'>macOS 10.5</span><a name='APPrinterPreset'>APPrinterPreset</a></h3>
<p class='summary'>*APPrinterPreset name/text: "*Option Choice ..."</p>
*fr.APPrinterPreset Photo_on_Photo_Paper/Photo sur papier photographique: ""
</pre>
-<h3><span class='info'>Mac OS X 10.3</span><a name='APPrinterUtilityPath'>APPrinterUtilityPath</a></h3>
+<h3><span class='info'>macOS 10.3</span><a name='APPrinterUtilityPath'>APPrinterUtilityPath</a></h3>
<p class='summary'>*APPrinterPrinterUtilityPath: "/Library/Printers/vendor/filename.app"</p>
*APPrinterPrinterUtilityPath: "/Library/Printers/vendor/Tools/utility.app"
</pre>
-<h3><span class='info'>Mac OS X 10.6</span><a name='APScannerOnly'>APScannerOnly</a></h3>
+<h3><span class='info'>macOS 10.6</span><a name='APScannerOnly'>APScannerOnly</a></h3>
<p class='summary'>*APScannerOnly: boolean</p>
*APScannerOnly: True
</pre>
-<h3><span class='info'>Mac OS X 10.3</span><a name='APScanAppBundleID'>APScanAppBundleID</a></h3>
+<h3><span class='info'>macOS 10.3</span><a name='APScanAppBundleID'>APScanAppBundleID</a></h3>
<p class='summary'>*APScanAppBundleID: "bundle ID"</p>
<h2 class='title'><a name='HISTORY'>Change History</a></h2>
+<h3>Changes in CUPS 1.7</h3>
+
+<ul>
+
+ <li>Added <a href="#cupsJobAccountId"><tt>cupsJobAccountId</tt></a>,
+ <a href="#cupsJobAccountingUserId"><tt>cupsJobAccountingUserId</tt></a>,
+ <a href="#cupsJobPassword"><tt>cupsJobPassword</tt></a>,
+ <a href="#cupsMandatory"><tt>cupsMandatory</tt></a> keywords.</li>
+
+</ul>
+
+
+<h3>Changes in CUPS 1.6</h3>
+
+<ul>
+
+ <li>Added <a href="#cupsPageSizeCategory"><tt>cupsPageSizeCategory</tt></a> keyword (originally defined in CUPS 1.4).</li>
+
+ <li>Added <a href="#cupsMaxCopies"><tt>cupsMaxCopies</tt></a> keyword.</li>
+
+ <li>Documented <a href="#JCLToPDFInterpreter"><tt>JCLToPDFInterpreter</tt></a> keyword.</li>
+
+ <li>Updated <a href="#cupsVersion"><tt>cupsVersion</tt></a> keyword documentation to list all current releases of CUPS.</li>
+
+</ul>
+
+
<h3>Changes in CUPS 1.5</h3>
<ul>
<ul>
- <li>Added missing Mac OS X <tt>AP</tt> keywords.</li>
+ <li>Added missing macOS <tt>AP</tt> keywords.</li>
<li>Added section on auto-configuration including the
<tt>OID<i>MainKeyword</i></tt> and <tt>?<i>MainKeyword</i></tt>