From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.devel Subject: RE: Request for pointers and advice: displaying several buffers inside a single window Date: Sat, 11 Apr 2020 22:09:28 -0700 (PDT) Message-ID: <2f47e193-63d4-4ffc-9bd1-5cfcb0da915e@default> References: <83a73swwd7.fsf@gnu.org> <87wo6nxsjz.fsf@localhost> <83d08fmgul.fsf@gnu.org> <87tv1rxmgc.fsf@localhost> <83a73jmcyo.fsf@gnu.org> <87pncfxk4m.fsf@localhost> <87mu7jxi64.fsf@localhost> <87eesuxwzt.fsf@localhost> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="8815"; mail-complaints-to="usenet@ciao.gmane.io" Cc: casouri@gmail.com, dim1212k@gmail.com, yantar92@gmail.com, emacs-devel@gnu.org, adam@alphapapa.net, eliz@gnu.org To: rms@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Apr 12 07:12:20 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jNUuq-0002Aj-AT for ged-emacs-devel@m.gmane-mx.org; Sun, 12 Apr 2020 07:12:20 +0200 Original-Received: from localhost ([::1]:58940 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jNUup-0002kN-DP for ged-emacs-devel@m.gmane-mx.org; Sun, 12 Apr 2020 01:12:19 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:56514) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jNUuE-0002KD-4z for emacs-devel@gnu.org; Sun, 12 Apr 2020 01:11:43 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jNUuC-0000Rm-UT for emacs-devel@gnu.org; Sun, 12 Apr 2020 01:11:41 -0400 Original-Received: from aserp2120.oracle.com ([141.146.126.78]:40532) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1jNUuB-0000Qw-Bs; Sun, 12 Apr 2020 01:11:39 -0400 Original-Received: from pps.filterd (aserp2120.oracle.com [127.0.0.1]) by aserp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 03C5A4cq079918; Sun, 12 Apr 2020 05:11:32 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=mime-version : message-id : date : from : sender : to : cc : subject : references : in-reply-to : content-type : content-transfer-encoding; s=corp-2020-01-29; bh=fSvlSYXcejb0WCFAoQTr9Qa3fDWC6D3iE8X7uuRjNms=; b=W8txshQL0N8RXNraOghaXG7HVTU/smX0idzTI8LYlh8EMz8BFlp4F1zMY2Mj2hY40cCz Kerr1nH8qhaloee4+DcguPeCamWJltlsa67vlWYAvXiDrqPmkaMnWpWe+cj06DlkDseZ Op00r4id6VLlWTIH+BMTvIZTqAGpZje8YHmgzAImzaBqyosril85YhOUShvE/O+TxPAx +j3pfCgUIah0Lidttp/Fl9RG+3j8kQTsxH0EGV8yVwck0RxY3RTZVwTC5FsPTUJ3dL1d 8bukrNFRUTb/w0qd4y0J71cejshNuMSGGUZxGs4xyjnVO+R+Ja7xpcJ3Rjw2/h65z3wm yw== Original-Received: from userp3030.oracle.com (userp3030.oracle.com [156.151.31.80]) by aserp2120.oracle.com with ESMTP id 30b5ukt8yq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sun, 12 Apr 2020 05:11:32 +0000 Original-Received: from pps.filterd (userp3030.oracle.com [127.0.0.1]) by userp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 03C57hIW133097; Sun, 12 Apr 2020 05:09:31 GMT Original-Received: from aserv0121.oracle.com (aserv0121.oracle.com [141.146.126.235]) by userp3030.oracle.com with ESMTP id 30bqca4vfs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sun, 12 Apr 2020 05:09:31 +0000 Original-Received: from abhmp0014.oracle.com (abhmp0014.oracle.com [141.146.116.20]) by aserv0121.oracle.com (8.14.4/8.13.8) with ESMTP id 03C59TsV029829; Sun, 12 Apr 2020 05:09:29 GMT In-Reply-To: X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 16.0.4966.0 (x86)] X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9588 signatures=668686 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=1 mlxlogscore=956 bulkscore=0 malwarescore=0 phishscore=0 mlxscore=0 spamscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2003020000 definitions=main-2004120045 X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9588 signatures=668686 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 clxscore=1015 bulkscore=0 mlxscore=0 mlxlogscore=999 lowpriorityscore=0 impostorscore=0 adultscore=0 phishscore=0 spamscore=0 suspectscore=1 malwarescore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2003020000 definitions=main-2004120045 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] [fuzzy] X-Received-From: 141.146.126.78 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:246855 Archived-At: > > If you load that library then you can use > > these keys on prefix key C-x n M-=3D: > > > > v - isearchp-toggle-anti-zones-invisible > > V - isearchp-toggle-zones-invisible > > ~ - isearchp-toggle-complementing-domain > > d - isearchp-toggle-dimming-outside-search-area >=20 > Can anyone come up with a simpler interface for this? > One that reduces the amount that a user needs to memorize > before using the feature? You don't need to memorize anything. And certainly not in order to be able to use the feature. The predefined keys are just for convenience. And you can bind any of the commands to whatever keys you like. By default, the zone commands are on prefix key `C-x n', which Emacs uses for narrowing commands (Emacs binds it to keymap `narrow-map'). (If you use isearch-prop.el or highlight.el then zones.el adds additional zone commands to the same keymap.) I chose that keymap and prefix key for zones mainly because zones.el optionally advises the standard narrowing commands (`narrow-region' etc.), so they=20 automatically add a narrowing (restriction) as a zone. (You can then cycle among restrictions etc.) But you can use any other keymap or prefix key. I decided to put all of the toggle commands for use with zones on keymap `zz-toggles-map'. And I put that map on prefix key `M-=3D' in `narrow-map'. But you can use a different prefix key for that map, or ignore it. If you do want to use the predefined bindings, and you don't remember some, using either `C-x n C-h' or `C-h M-k narrow-map' (`describe-keymap') tells you: narrow-map ---------- Keymap for narrowing commands. key binding --- ------- C-d zz-delete-zone C-r isearchp-zones-backward C-s isearchp-zones-forward ESC Prefix Command # zz-select-zone-by-id-and-text A zz-add-zone-and-unite C zz-clone-and-unite-zones D isearchp-remove-dimming H hlt-highlight-regions-in-buffers L zz-set-zones-from-highlighting P isearchp-put-prop-on-zones R zz-set-zones-matching-regexp a zz-add-zone c zz-clone-zones d narrow-to-defun h hlt-highlight-regions l zz-add-zones-from-highlighting n narrow-to-region p narrow-to-page r zz-add-zones-matching-regexp s zz-select-zone-repeat u zz-unite-zones v zz-set-izones-var w widen x zz-narrow-repeat C-M-r isearchp-zones-backward-regexp C-M-s isearchp-zones-forward-regexp M-% zz-query-replace-zones M-=3D zz-toggles-map C-M-% zz-query-replace-regexp-zones M-=3D V isearchp-toggle-zones-invisible M-=3D d isearchp-toggle-dimming-outside-search-area M-=3D v isearchp-toggle-anti-zones-invisible M-=3D ~ isearchp-toggle-complementing-domain