From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Douglas Lewan Newsgroups: gmane.emacs.help Subject: Re: Opening multiple files in a single buffer? Date: Sat, 13 Jun 2020 11:20:55 -0400 Message-ID: <680ce1a6-6a1d-9212-9e4a-08cd443e9ef5@gmail.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="10058"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Sat Jun 13 17:21:46 2020 Return-path: Envelope-to: geh-help-gnu-emacs@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 1jk7yc-0002Xt-Dp for geh-help-gnu-emacs@m.gmane-mx.org; Sat, 13 Jun 2020 17:21:46 +0200 Original-Received: from localhost ([::1]:33680 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jk7yb-0000UB-Gy for geh-help-gnu-emacs@m.gmane-mx.org; Sat, 13 Jun 2020 11:21:45 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:49294) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jk7y6-0000U2-K4 for help-gnu-emacs@gnu.org; Sat, 13 Jun 2020 11:21:14 -0400 Original-Received: from mail-qv1-xf2a.google.com ([2607:f8b0:4864:20::f2a]:42433) by eggs.gnu.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jk7y4-0002hI-2u for help-gnu-emacs@gnu.org; Sat, 13 Jun 2020 11:21:14 -0400 Original-Received: by mail-qv1-xf2a.google.com with SMTP id p15so5785217qvr.9 for ; Sat, 13 Jun 2020 08:21:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-transfer-encoding:content-language; bh=VFLoQyKX7+r0xvlSr2Rjh3yn1htH1W9iptrMxNGefjs=; b=VhUpMUGbPXzGoLDhnnI0blhJf6HUxryHJHtNTHlcxt1eA/LDM9GX1FgYEULSMiN2yM 7aRjK6Io5+CW9cR4BRsk465hvk2eHAJ7YKwWkqzBYwSZtdQU2usp+DEuhXefZTP9Usn/ xdGV+oOMgib5z5cQTMULRia3SBlRIdEyonUeOVsaiIy3aFhXguPzfdyiEnzt7s3+XPCf 7Qq0bj1BRzJygbLIZ59n0zCNsvF3g8CxpY4Ia+j+mleUmTnAisVddFs7/rv0qvt2+leS iZIYPRNz/VL9GsGFs8Bf7qm2v9JhqVUhhbomM9yqycAU5hy70V3dy7NMYaT2DofKr09E 2d6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=VFLoQyKX7+r0xvlSr2Rjh3yn1htH1W9iptrMxNGefjs=; b=UR012gjigW5lt0wkho6x8fKoMBKmjQ584Gzenfzof0f+HK6KDrSQLp6LJku374Y4Cw tKsGXTh+v0RsnCbxzqarxFUPX4ehBOFxqNJW5s3U7BqdJbxBJAc4QI7lB5QK/MKvzfLX Aha2+d740EQJviYmt8DSHwlIWgCHWE2j4ZP9dHG3/6319tepUsWhg5JOiPk/jP9O8OV5 Q/nitrBvZkR+g4gkc6qW4k9mFyn93TOC3h6LypYZwCh/B1Y6PGFdSv2ALct9NGDvCzgH dS3HPj8O6NzYCIkitIoH0c8odgtRXCiin64lz5TMLcX+IKlVdCEeEpEjXHbYXrIq1kvc Olyw== X-Gm-Message-State: AOAM531cNIUOqTFvyghSHzYVnofi487wxTiuEt/ES7q6lfsVSo5Ovu8Z H6MY85d0zmpUMoixr9J+MmYgtkSQSQ== X-Google-Smtp-Source: ABdhPJzDzuJYyjZe6HJPT+Cs5yLyWlYdWS5tu25DR90HGxbf7TTMQDRZSWtmKjT8ZQ0a6aZYYvX7vA== X-Received: by 2002:a0c:ed4d:: with SMTP id v13mr17347676qvq.237.1592061665714; Sat, 13 Jun 2020 08:21:05 -0700 (PDT) Original-Received: from [192.168.43.104] ([172.58.236.108]) by smtp.gmail.com with ESMTPSA id x43sm7474460qtk.70.2020.06.13.08.21.03 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sat, 13 Jun 2020 08:21:05 -0700 (PDT) In-Reply-To: Content-Language: en-US Received-SPF: pass client-ip=2607:f8b0:4864:20::f2a; envelope-from=d.lewan2000@gmail.com; helo=mail-qv1-xf2a.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -17 X-Spam_score: -1.8 X-Spam_bar: - X-Spam_report: (-1.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.io gmane.emacs.help:123370 Archived-At: On 6/13/20 10:31 AM, Gregory Heytings wrote: > > Dear List, > > I've now been using Emacs for many, many years, and there is perhaps a > single feature I'm really missing, namely opening more than one file > in a single buffer, with the contents of the files appearing one after > the other in the same buffer, with some kind of visual separator > between them. I don't know if that feature exists in other text editors. > > For example, suppose you write a book, which has fifteen chapters in > files chap1.tex, ..., chap15.tex.  Opening these files in a single > buffer means that you could use isearch-{forward,backward} in the > whole book.  (I know that multi-isearch-buffers could be used in this > particular case, but it is not as convenient to use.)  You could also > use query-replace on the whole book, or reindent all files, or execute > shell-command on all files at once, and so forth.  (Again I know that > all this can be done with already existing features, e.g. through > dired, but again I find them not as convenient as what I have in mind.) > > Each file would have its own major and minor modes, and the mode-line > would adapt depending on the file corresponding to the buffer portion > in which the point is currently located. > > My question is: Is this feasible, or is the one-to-one correspondence > between buffers and files too deeply rooted in Emacs' codebase that it > is not feasible?  If it is feasible, could this feature be considered > for implementation in a future Emacs version? I would say it's feasible, but probably awkward as stated. An application that implements something similar via a sequence of buffers with a way of navigating next and previous and providing appropriate commands via a (map) function would probably be simpler to build and manage. It would also be much more natural. -- ,Doug d.lewan2000@gmail.com (908) 720 7908 If this is what winning looks like, I'd hate to see what losing is.