-
Notifications
You must be signed in to change notification settings - Fork 124
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
problems with specifying output order #47
Comments
The 'lp' man page should make it clear that '-o outputorder=reverse' will only "print pages in reverse order" on face-down printers. It should also document the possibility of setting '-o outputorder=normal' (which will print pages in reverse order on face-up printers).
--> Looks like a bug in lpoptions. According to the man page you did it correctly. Report this to CUPS.
|
I have checked the situation in cups-filters.
All changes on the PPD generator I will also report to CUPS, so that they apply them to their PPD generator, too. |
I have added |
Now I have also committed my suggested modifications on pdftopdf: also support reversing via |
I have now posted a pull request for CUPS: |
I had a look into your original report to CUPS now. You posted a sample PPD and also mentioned the line you inserted:
According to the PPD specs it has to be without quotes:
This most probably made |
@tillkamppeter Thanks for your hard work. The PPD spec is here? I think I see what you are talking about on p. 124. It seemed like the version with quotes was able to change the behavior of my printer under CUPS so I'm not sure where the difference lies, I don't have time to check it again. Maybe we should post something to the linuxquestions.org thread, if it actually matters, because that's what I found upon Googling and others are likely to stumble upon it as well. Would you expect your changes to have affected the Okular issues or should I retest and submit something to them? Did anyone fix the documentation problems with the lpadmin and lpoptions man pages not explaining their mutual roles and effects viz overriding? That lack of documentation was a major problem for me when I was investigating this issue. I'm also curious because I didn't understand what you meant by giving output-order a software-only effect. In the past the command-line output-order option overrided the output order specified by PPD and lpoptions defaults. Is that still the case? I'm sorry I don't have time to re-report the CUPS issues I already reported, or to submit patches, particularly as Michael Sweet isn't willing to acknowledge that anything needs to be fixed. I'm glad that you were able to acknowledge these issues. I hope that my notifying maintainers of problems is helpful in and of itself, and doesn't necessarily commit me to additional work. |
Is your problem now solved? Can I close this issue? |
The pages now come out of my inkjet in the correct order, thank you for your work. There were a lot of other items in my list, but I think it is reasonable to close this issue, since someone can submit new issues for them if they run across the same problems. |
OK, the other issues seem partially to be CUPS issues and not cups-filters and with the title of this issue we can assume that we wanted to solve the problem with page-order here and this got actually solved. Thank you very much for your report and cooperation. |
I submitted this issue to CUPS last week. At the time it seemed obvious to me that it was a CUPS issue, but Michael Sweet argues that it is a cups-filters issue and I wanted to make your project aware of it. I want to pass this off to someone else if I can.
apple/cups#5315
The gist of it is that I have an inkjet printer and I found it confusing that the pages come out in the wrong order. Not only does the default PPD not correctly reverse the pages, but the various ways of setting the output order (via the PPD, via lpadmin and via lpoptions) all seem to have different effects on documents printed by different applications. If you want to, you can play with this just using cups-pdf. If I modify the cups-pdf PPD with a 'DefaultOutputOrder: "reverse"' line, then according to my experiments this directive is honored by lp and Evince but not Okular. The lpoptions settings are honored by lp but not Evince or xpdf.
I am aware of one mistake in my original bug report, in a follow-up post I commented that 'lp' doesn't respect the 'lpadmin' setting but it does. This misunderstanding was due to my not figuring out the need to delete the 'lpoptions' setting with 'lpoptions -r', before repeating my experiments with lpadmin.
In case it helps, here are some issues I've identified while reading the documentation and trying to understand the behavior of CUPS.
Relationship between lpadmin and lpoptions is not explained in respective manual pages
User has no way to know that a GUI application like Evince or xpdf will ignore lpoptions but honor lpadmin settings. Should be fixed or documented.
Okular fails to respect the "reverse" setting in the PPD. You have to manually check the "reverse" button each time. But xpdf, which has the same print dialog and also seems based on qt5, lacks this problem. I couldn't find any documentation of the correct behavior.
User has no way to know the proper place to set a 'reverse' output order for a face-up printer. The fact that this belongs in the PPD should be documented somewhere other than message boards and mailing lists.
Output order should be configurable at printer setup time, via the GUI on localhost:631
Output order should be specified correctly in PPDs for inkjets and other face-ups
lpoptions and lpadmin man pages should note the importance of removing settings (-r or -R respectively) to avoid overriding PPD settings. For example setting outputorder=normal is not the same as deleting the outputorder key; the former will still override the PPD setting.
The 'lp' man page should make it clear that '-o outputorder=reverse' will only "print pages in reverse order" on face-down printers. It should also document the possibility of setting '-o outputorder=normal' (which will print pages in reverse order on face-up printers).
In 'lp' man page, distinction should be made between options like "page-ranges" which work by filtering the document, and options like "outputorder" which work by overriding printer defaults. It's not obvious to users which kind of option outputorder is. Setting "outputorder=reverse" is not the same as checking the "reverse" box when printing from most GUI applications; the former will only print pages in reverse on face-down printers, while the latter will print them in reverse on any (correctly configured) printer.
There should be a "filter"-type 'lp' option (see above) which correctly reverses pages on all printers. It could be named something like "page-order=reverse". This would function just like checking the "reverse" box in a GUI application like Evince or xpdf. It would be used by people who want to, say, print the even pages of a document in reverse order. Currently this cannot be done via the command-line in a printer-independent way.
I can't figure out how to remove an outputorder setting using lpoptions "-r". The manual page should tell me what's happening here. Are we looking at the setting from lpadmin?
How do I do the above experiment with 'lpadmin'? It seems to lack the feature to print all the settings. Are they in a file somewhere, can I view the file to look at which options are set? Let's add this feature, or update the lpadmin man page to point users to the file where all the key-value pairs can be viewed.
lpadmin should give a warning when user tries to delete a non-existent key, e.g. if the user executes "lpadmin ... -R outputorder" instead of "lpadmin ... -R outputorder-default".
I'm not sure how many of these issues are within your purview. I've tried to do my part as a bug reporter but it seems to be requiring much more work than I had originally budgeted, partly owing to the fact that no one (including the leaders of my distribution, Arch) wants to formally admit the existence of a usability problem.
The text was updated successfully, but these errors were encountered: