From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Printing Date: Wed, 01 Apr 2009 21:16:11 +0300 Message-ID: References: <5f0660120903280331y780c80b7i57a8115dc4b029eb@mail.gmail.com> <5f0660120903281352v5d7ab83cy44fcff3cbf4581cb@mail.gmail.com> <87ljqnkvn9.fsf@jehiel.elehack.net> Reply-To: Eli Zaretskii NNTP-Posting-Host: lo.gmane.org X-Trace: ger.gmane.org 1238609983 25194 80.91.229.12 (1 Apr 2009 18:19:43 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 1 Apr 2009 18:19:43 +0000 (UTC) Cc: michael@elehack.net, emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Apr 01 20:21:01 2009 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1Lp53S-0000t0-5B for ged-emacs-devel@m.gmane.org; Wed, 01 Apr 2009 20:20:50 +0200 Original-Received: from localhost ([127.0.0.1]:55832 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Lp524-0002UD-Dz for ged-emacs-devel@m.gmane.org; Wed, 01 Apr 2009 14:19:24 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Lp50x-0001um-VO for emacs-devel@gnu.org; Wed, 01 Apr 2009 14:18:16 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Lp50w-0001u8-PY for emacs-devel@gnu.org; Wed, 01 Apr 2009 14:18:15 -0400 Original-Received: from [199.232.76.173] (port=33920 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Lp50w-0001u4-Jq for emacs-devel@gnu.org; Wed, 01 Apr 2009 14:18:14 -0400 Original-Received: from mtaout6.012.net.il ([84.95.2.16]:38226) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Lp50w-00046B-7O for emacs-devel@gnu.org; Wed, 01 Apr 2009 14:18:14 -0400 Original-Received: from conversion-daemon.i-mtaout6.012.net.il by i-mtaout6.012.net.il (HyperSendmail v2007.08) id <0KHF00000PA29200@i-mtaout6.012.net.il> for emacs-devel@gnu.org; Wed, 01 Apr 2009 21:18:10 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([77.127.171.54]) by i-mtaout6.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0KHF003DDPI9G260@i-mtaout6.012.net.il>; Wed, 01 Apr 2009 21:18:10 +0300 (IDT) In-reply-to: X-012-Sender: halo1@inter.net.il X-detected-operating-system: by monty-python.gnu.org: Solaris 10 (1203?) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:109970 Archived-At: > From: Stefan Monnier > Cc: michael@elehack.net, emacs-devel@gnu.org > Date: Wed, 01 Apr 2009 10:36:34 -0400 > > >> > I hope you are not saying that ps-print machinery is the only way > >> > Emacs will be able to print in the future, i.e. rely on PostScript > >> > support of the OS infrastructure. > >> Yes, that's what I'm saying. > > Then, if history teaches us anything, we will probably having this > > discussion 10 years from now as well. > > Note that I'm not opposed to implementations that use some other way of > printing than Postscript. I'm just saying that AFAICT in the > foreseeable future, Emacs's printing will be based on Postscript. > And in this regard, it works OK on Free systems where Postscript is > always supported by the printing system (so the only problems on such > systems have to do with Emacs's own ability to produce the right > Postscript code). PostScript is supported well on both free and proprietary platforms, you are missing the point. Let me remind you that what started this thread was the complaints that ps-printing works well only for ASCII and Latin-1 characters. In this area, we basically didn't move much since ps-mule was introduced more than 10 years ago. Based on that experience, I fear that if we stick to PostScript as the only decent printing facility in Emacs, we will not improve our support of printing non-ASCII text for the foreseeable future. If you think otherwise, please explain how come we are still where we were in 1998. > >> What other way to print are you thinking of? > > > The way every modern platform does that: through a printer API, > > whereby you select fonts and layout, then render text to some device, > > and the text gets printed to the printer you select. > > Under GNU/Linux, the above goes through Postscript: the app generates > a Postscript file and then passes it to the printing subsystem > (typically CUPS) along with options such as color/bw, duplex/simplex, You are again missing the point: it is not important how things are done under the hood. For example, on my home XP box, the default printer is set up to use the PostScript driver, but applications still don't emit PostScript themselves; the driver does. So applications don't care where the fonts are nor what fonts are built into the printer and which ones need to be downloaded into it. On the same printer, I need to work hard configure ps-mule if I want to print something that includes non-ASCII text. > ... so generating Postscript is not at all contradictory with the desire > to provide the usual printer dialog. When PostScript generation is hidden from the application code, you can leave it to the lower levels to solve problems such as finding and selecting the right fonts. With ps-print, since we produce PostScript in Lisp, we also need to be able to DTRT with fonts, which is obviously not an easy job to do on an arbitrary end-user platform. That's the big difference. > > Since Emacs already knows how to render text, it shouldn't be too hard > > to teach it do so to something other than a screen. > > That sounds good as well, but someone has to write the code. Someone has to write the code for better support of non-ASCII printing, too. TANSTAAFL.