From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Andreas Politz Newsgroups: gmane.emacs.help Subject: Re: A `my-ps-print-setting' function Date: Sun, 07 Sep 2008 21:40:35 +0200 Organization: FH-Trier Message-ID: <1220816640.428317@arno.fh-trier.de> References: <87ej42m64o.fsf@gmail.com> <87ej412cpw.fsf@gmail.com> <87fxobgb2t.fsf@gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1220820042 26810 80.91.229.12 (7 Sep 2008 20:40:42 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 7 Sep 2008 20:40:42 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Sun Sep 07 22:41:38 2008 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1KcR4i-0007D2-K1 for geh-help-gnu-emacs@m.gmane.org; Sun, 07 Sep 2008 22:41:36 +0200 Original-Received: from localhost ([127.0.0.1]:36488 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KcR3i-0005QI-Pf for geh-help-gnu-emacs@m.gmane.org; Sun, 07 Sep 2008 16:40:34 -0400 Original-Path: news.stanford.edu!headwall.stanford.edu!newshub.sdsu.edu!newsfeed.freenet.de!newsfeed00.sul.t-online.de!newsfeed01.sul.t-online.de!t-online.de!news.belwue.de!news.uni-kl.de!not-for-mail Original-Newsgroups: gnu.emacs.help Original-Lines: 37 Original-NNTP-Posting-Host: 143-93-54-11.arno.fh-trier.de Original-X-Trace: news.uni-kl.de 1220816645 28409 143.93.54.11 (7 Sep 2008 19:44:05 GMT) Original-X-Complaints-To: usenet@news.uni-kl.de Original-NNTP-Posting-Date: Sun, 7 Sep 2008 19:44:05 +0000 (UTC) User-Agent: Mozilla-Thunderbird 2.0.0.16 (X11/20080724) In-Reply-To: <87fxobgb2t.fsf@gmail.com> Cache-Post-Path: arno.fh-trier.de!unknown@dslb-088-068-204-166.pools.arcor-ip.net X-Cache: nntpcache 3.0.1 (see http://www.nntpcache.org/) Original-Xref: news.stanford.edu gnu.emacs.help:161981 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:57324 Archived-At: Rodolfo Medina wrote: > Rodolfo Medina writes: > >> [...] I wish to set some ps-print variables in an interactive way, i.e. be >> prompted for the value that I want to set. > > > > With the help that came from this list, I defined a `my-ps-print-setting' > function, that I'm reporting below. Improvements are welcome: in particular > I wish it said: "please answer `r' or `l'" when prompting for a right or left > footer and [...] Thank lisp you can make your own choices... (defmacro defchoice (yes no) (let* ((name (format "%c-or-%c-p" yes no)) (name-symbol (intern name))) `(defun ,name-symbol (prompt) ,(format "Ask user a \"%c or %c\" question. Return t is answer is \"%c\"." yes no yes) (let* ((pprompt1 (propertize (format "%s (%c or %c) ?" prompt ,yes ,no) 'face 'minibuffer-prompt)) (pprompt2 (concat (propertize (format "Please answer %c or %c. " ,yes ,no) 'face 'minibuffer-prompt) pprompt1)) (answer (read-char-exclusive pprompt1))) (while (not (or (= answer ,yes) (= answer ,no))) (setq answer (read-char-exclusive pprompt2))) (= answer ,yes))))) (defchoice ?r ?l) (r-or-l-p "Choose !") -ap