From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.devel Subject: Re: Unuseful keybindings Date: Mon, 24 Dec 2012 12:29:19 +0200 Organization: JURTA Message-ID: <87hanbu3ly.fsf@mail.jurta.org> References: <87sj73qzvl.fsf@gmail.com> <87623zquvw.fsf@gmail.com> <87ip7zdud3.fsf@gmail.com> <87ehiiu5x7.fsf@gnu.org> <87a9t6a435.fsf@mail.jurta.org> <87d2y1glnt.fsf@mail.jurta.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1356346462 17075 80.91.229.3 (24 Dec 2012 10:54:22 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 24 Dec 2012 10:54:22 +0000 (UTC) Cc: Mathias Dahl , emacs-devel@gnu.org, Andreas Schwab , Thierry Volpiatto To: Chong Yidong Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Dec 24 11:54:37 2012 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Tn5g1-0003DB-Qu for ged-emacs-devel@m.gmane.org; Mon, 24 Dec 2012 11:54:34 +0100 Original-Received: from localhost ([::1]:52059 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Tn5fn-000767-SR for ged-emacs-devel@m.gmane.org; Mon, 24 Dec 2012 05:54:19 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:48445) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Tn5fh-00075w-1C for emacs-devel@gnu.org; Mon, 24 Dec 2012 05:54:19 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Tn5ff-00030J-EP for emacs-devel@gnu.org; Mon, 24 Dec 2012 05:54:12 -0500 Original-Received: from ps18281.dreamhost.com ([69.163.218.105]:47139 helo=ps18281.dreamhostps.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Tn5fd-0002zp-PQ; Mon, 24 Dec 2012 05:54:10 -0500 Original-Received: from localhost (ps18281.dreamhostps.com [69.163.218.105]) by ps18281.dreamhostps.com (Postfix) with ESMTP id 175C2451CE4E; Mon, 24 Dec 2012 02:54:06 -0800 (PST) In-Reply-To: <87d2y1glnt.fsf@mail.jurta.org> (Juri Linkov's message of "Sun, 23 Dec 2012 11:31:02 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (x86_64-pc-linux-gnu) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x (no timestamps) [generic] X-Received-From: 69.163.218.105 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:155844 Archived-At: > This can be improved with the following patch: Actually thinking more in terms of the command line arguments `--maximized' and `--fullscreen' suggests a better patch that for consistency defines exactly the same corresponding commands `toggle-frame-maximized' and `toggle-frame-fullscreen': === modified file 'lisp/frame.el' *** lisp/frame.el 2012-12-12 14:43:45 +0000 --- lisp/frame.el 2012-12-24 10:28:49 +0000 *************** (define-minor-mode blink-cursor-mode *** 1655,1685 **** ;; Frame maximization ! (defcustom frame-maximization-style 'maximized ! "The maximization style of \\[toggle-frame-maximized]." ! :version "24.4" ! :type '(choice ! (const :tab "Respect window manager screen decorations." maximized) ! (const :tab "Ignore window manager screen decorations." fullscreen)) ! :group 'frames) ! ! (defun toggle-frame-maximized () ! "Maximize/un-maximize Emacs frame according to `frame-maximization-style'. ! See also `cycle-frame-maximized'." (interactive) (modify-frame-parameters ! nil `((fullscreen . ,(if (frame-parameter nil 'fullscreen) ! nil frame-maximization-style))))) ! ! (defun cycle-frame-maximized () ! "Cycle Emacs frame between normal, maximized, and fullscreen. See also `toggle-frame-maximized'." (interactive) (modify-frame-parameters ! nil `((fullscreen . ,(cl-case (frame-parameter nil 'fullscreen) ! ((nil) 'maximized) ! ((maximized) 'fullscreen) ! ((fullscreen) nil)))))) ;;;; Key bindings --- 1655,1680 ---- ;; Frame maximization ! ! (defun toggle-frame-maximized (&optional frame) ! "Maximize FRAME or un-maximize if it is already maximized. ! Respect window manager screen decorations. ! See also `toggle-frame-fullscreen'." (interactive) (modify-frame-parameters ! nil `((fullscreen . ,(if (frame-parameter frame 'fullscreen) ! nil ! 'maximized))))) ! ! (defun toggle-frame-fullscreen (&optional frame) ! "Maximize FRAME to fullscreen or un-maximize if it is already fullscreen. ! Ignore window manager screen decorations. See also `toggle-frame-maximized'." (interactive) (modify-frame-parameters ! nil `((fullscreen . ,(if (frame-parameter frame 'fullscreen) ! nil ! 'fullscreen))))) ;;;; Key bindings *************** (define-key ctl-x-5-map "2" 'make-frame- *** 1688,1695 **** (define-key ctl-x-5-map "1" 'delete-other-frames) (define-key ctl-x-5-map "0" 'delete-frame) (define-key ctl-x-5-map "o" 'other-frame) ! (define-key global-map [f11] 'toggle-frame-maximized) ! (define-key global-map [(shift f11)] 'cycle-frame-maximized) ;; Misc. --- 1683,1690 ---- (define-key ctl-x-5-map "1" 'delete-other-frames) (define-key ctl-x-5-map "0" 'delete-frame) (define-key ctl-x-5-map "o" 'other-frame) ! (define-key global-map [f11] 'toggle-frame-fullscreen) ! (define-key global-map [(meta f10)] 'toggle-frame-maximized) ;; Misc.