From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Miles Bader Newsgroups: gmane.emacs.devel Subject: Re: finger-pointer curser as default for mouse-face text Date: Tue, 2 Nov 2004 16:51:35 -0500 Message-ID: <20041102215135.GA20505@fencepost> References: NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1099432500 12142 80.91.229.6 (2 Nov 2004 21:55:00 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Tue, 2 Nov 2004 21:55:00 +0000 (UTC) Cc: rms@gnu.org, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Nov 02 22:54:53 2004 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1CP6c9-00064u-00 for ; Tue, 02 Nov 2004 22:54:53 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1CP6kD-00069i-IK for ged-emacs-devel@m.gmane.org; Tue, 02 Nov 2004 17:03:13 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.33) id 1CP6ih-0005Y1-UH for emacs-devel@gnu.org; Tue, 02 Nov 2004 17:01:40 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.33) id 1CP6if-0005XH-4W for emacs-devel@gnu.org; Tue, 02 Nov 2004 17:01:37 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1CP6ie-0005WN-SE for emacs-devel@gnu.org; Tue, 02 Nov 2004 17:01:37 -0500 Original-Received: from [199.232.76.164] (helo=fencepost.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.34) id 1CP6aY-0004Tj-O2 for emacs-devel@gnu.org; Tue, 02 Nov 2004 16:53:14 -0500 Original-Received: from miles by fencepost.gnu.org with local (Exim 4.34) id 1CP6Yx-0006L7-Rh; Tue, 02 Nov 2004 16:51:47 -0500 Original-To: Karl Eichwalder Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.3.28i Blat: Foop 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: main.gmane.org gmane.emacs.devel:29339 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:29339 On Tue, Nov 02, 2004 at 07:08:34PM +0100, Karl Eichwalder wrote: > > It is interesting to find a user who often specifies faces. > > Can you tell us the circumstances where you do that? > > >From time to time it is necessary to increase the font size: When I want > to demonstrate something to somebody watching my screen, or when I want > to check some accented or foreign characters more closely. Something like the following elisp code might be more useful for this. It implements the C-+ and C-- (that's control-minus :-) bindings many modern GUI programs use to grow/shrink the default face. The main problem with these commands -- and so why I haven't pursued adding them to the official sources[*] -- is that they don't interact well with a default face which has been set using customize-face (because the Emacs face-customization machinery sucks). However the traditional font-setting menu _also_ doesn't work if you've customized the `default' face, so I'm assuming you haven't done that... :-) [*] Perhaps the benefits of these commands outweigh their drawbacks however and they _should_ be added to CVS; after all the traditional "set font" menu has the same problem. Of course the real solution is to overhaul the face-setting mechanism to not have the horrible looping problems it has. -Miles ;;; default-grow.el (defun increase-default-face-height (&optional steps) "Increase the height of the default face by STEPS steps. Each step multiplies the height by 1.2; a negative number of steps decreases the height by the same amount." (interactive (list (cond ((eq current-prefix-arg '-) -1) ((numberp current-prefix-arg) current-prefix-arg) ((consp current-prefix-arg) -1) (t 1)))) (let ((frame (selected-frame))) (set-face-attribute 'default frame :height (floor (* (face-attribute 'default :height frame) (expt 1.3 steps)))))) (defun decrease-default-face-height (&optional steps) "Decrease the height of the default face by STEPS steps. Each step divides the height by 1.2; a negative number of steps increases the height by the same amount." (interactive (list (cond ((eq current-prefix-arg '-) -1) ((numberp current-prefix-arg) current-prefix-arg) ((consp current-prefix-arg) -1) (t 1)))) (increase-default-face-height (- steps))) (global-set-key [(control =)] 'increase-default-face-height) (global-set-key [(control +)] 'increase-default-face-height) (global-set-key [(control -)] 'decrease-default-face-height) -- "Unless there are slaves to do the ugly, horrible, uninteresting work, culture and contemplation become almost impossible. Human slavery is wrong, insecure, and demoralizing. On mechanical slavery, on the slavery of the machine, the future of the world depends." -Oscar Wilde, "The Soul of Man Under Socialism"