unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Robert J. Chassell" <bob@rattlesnake.com>
Subject: Re: Patch to disable links line in *info* buffer
Date: Thu, 13 Jun 2002 11:36:36 +0000 (UTC)	[thread overview]
Message-ID: <m17ISu4-000IeIC@localhost> (raw)
In-Reply-To: <200206130905.g5D95ie06537@aztec.santafe.edu> (message from Richard Stallman on Thu, 13 Jun 2002 03:05:44 -0600 (MDT))

   ... I wonder--would it be useful if the header line displayed at
   the top of a window were part of the buffer text, rather than a
   feature like the mode line?

That adds complexity to the notion of `buffer'.  A policy of
`buffers all the way' would add simplicity.  

Instead of remaking a buffer so it has two parts, only one of which is
a window, the `buffers all the way' idea is to make every window
within a frame be a buffer of some sort: tool bar, menu bar, mode
lines, fringes, scroll bars, Info header lines, and the windows
themselves.

For this to work, buffers would need an optional `not-copy-able'
attribute as well as the current attributes.  You need to be able to
mark a mode-line as non-copy-able (except when you want to copy it).
(I am using the word `copy' because of the sometimes ambiguous meaning
of the word `read'; a scroll-bar is `readable' by the human looking at
it; but it is not `copy-able'.)

Currently, buffers have the three attributes of 

    always copy-able
    write-able
    not-write-able

Currently, mode-lines and the various bars have the two attributes of 

    not-copy-able
    not-write-able

The `buffers all the way' idea requires, among others, four
attributes:

    copy-able
    not-copy-able
    write-able
    not-write-able

Also, buffers would have to have location constraints within frames
and between frames.  For example, a scroll bar would normally sit
beside the buffer on which it reports and be tall and thin.  Of
course, you might want sometimes to put a scroll-bar elsewhere or to
make it a different shape.  So you re-write the `scroll-bar buffer'
library.  (SCWM `contraints' might provide some ideas for location
constraints.)

A mode-line would be a buffer with these default characteristics:

    not-copy-able
    not-write-able
    dependent on another buffer
    always display when other buffer shows
    always below the other buffer
    one line high, same width as its parent
    a specified set of fonts and faces
    containing special information, such as name of buffer

If you wanted to copy a visible mode-line, you could change the
`not-copy-able' attribute to `copy-able'; if you wanted to change its
look, you would change its faces.

To save screen space, you could turn off the buffer's variable that
says `always display in this context'.  You could, for example, turn
off a scroll-bar by burying it, or by not constructing it.  Or you
could hack a tool-bar to show some of the same features as an Info
header line, and avoid the Info header line.

Of course, you can do any of this hacking now; the idea is that with a
single `buffers all the way' policy, conceptualization is easier.

-- 
    Robert J. Chassell                  bob@rattlesnake.com
    Rattlesnake Enterprises             http://www.rattlesnake.com

  parent reply	other threads:[~2002-06-13 11:36 UTC|newest]

Thread overview: 72+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-06-06 18:32 Patch to disable links line in *info* buffer Romain FRANCOISE
2002-06-06 23:24 ` Kim F. Storm
2002-06-07 23:22 ` Richard Stallman
2002-06-08  0:52   ` Kim F. Storm
2002-06-08 21:39     ` Romain FRANCOISE
2002-06-08 22:08       ` Alex Schroeder
2002-06-08 22:30       ` Robert J. Chassell
2002-06-09  4:11         ` Miles Bader
2002-06-09 10:56           ` Robert J. Chassell
2002-06-09  5:16         ` Eli Zaretskii
2002-06-10 13:59         ` Stefan Monnier
2002-06-10 16:46           ` Robert J. Chassell
2002-06-10 17:28             ` Stefan Monnier
2002-06-10 20:50               ` Robert J. Chassell
2002-06-10 22:18                 ` Thien-Thi Nguyen
2002-06-10 22:24                   ` Stefan Monnier
2002-06-11 11:15                   ` Robert J. Chassell
2002-06-11 21:00                     ` Thien-Thi Nguyen
2002-06-11  5:26                 ` Eli Zaretskii
2002-06-10 20:58               ` Robert J. Chassell
2002-06-10 21:52                 ` Stefan Monnier
2002-06-11  9:36               ` Andreas Schwab
2002-06-10 19:57             ` Kim F. Storm
2002-06-11 19:25             ` Richard Stallman
2002-06-11 20:01               ` Jason Rumney
2002-06-11 23:45                 ` Kim F. Storm
2002-06-12 12:14                   ` Richard Stallman
2002-06-12 22:15                     ` Kim F. Storm
2002-06-13 21:46                       ` Richard Stallman
2002-06-13 23:22                         ` Kim F. Storm
2002-06-19 13:10                           ` Kim F. Storm
2002-06-19 15:02                             ` Stefan Monnier
2002-06-21 21:40                               ` Kim F. Storm
2002-06-21 23:56                                 ` Kim F. Storm
2002-06-21  9:40                             ` Richard Stallman
2002-06-13 15:34                   ` Robert J. Chassell
2002-06-13 17:17                     ` Andreas Schwab
     [not found]             ` <200206130905.g5D95ie06537@aztec.santafe.edu>
2002-06-13 11:36               ` Robert J. Chassell [this message]
2002-06-13 23:18                 ` Kim F. Storm
2002-06-14 15:47                 ` Richard Stallman
2002-06-17 19:28             ` Patch for emacs-lisp-intro.texi Christian Egli
2002-06-11 19:25           ` Patch to disable links line in *info* buffer Richard Stallman
2002-06-09 23:04       ` Kim F. Storm
2002-06-10 10:15       ` Richard Stallman
2002-06-10 10:25         ` Eli Zaretskii
2002-06-09 15:18     ` Richard Stallman
2002-06-09 15:58       ` Kai Großjohann
2002-06-09 23:38       ` Kim F. Storm
2002-06-10 23:43         ` Richard Stallman
2002-06-10  5:14       ` Karl Eichwalder
2002-06-10  5:24         ` Miles Bader
2002-06-10 23:43         ` Richard Stallman
2002-06-11  0:12           ` Miles Bader
2002-06-11  5:27             ` Eli Zaretskii
2002-06-11  7:05             ` Miles Bader
2002-06-11 13:20               ` Robert J. Chassell
2002-06-12  2:34                 ` Richard Stallman
2002-06-12 10:33                   ` Robert J. Chassell
2002-06-12 23:47                     ` Richard Stallman
2002-06-13 13:20                       ` Robert J. Chassell
2002-06-14 15:47                         ` Richard Stallman
2002-06-14 19:00                         ` Karl Eichwalder
2002-06-12  2:32               ` Richard Stallman
2002-06-12  2:53                 ` Miles Bader
2002-06-12 18:21                   ` Karl Eichwalder
2002-06-12 21:36               ` Alex Schroeder
2002-06-11  4:17           ` Karl Eichwalder
2002-06-11  5:29             ` Eli Zaretskii
2002-06-11 15:26               ` Karl Eichwalder
2002-06-09  5:13   ` Eli Zaretskii
  -- strict thread matches above, loose matches on Subject: below --
2002-06-07 13:35 David Ponce
2002-06-07 13:56 David Ponce

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m17ISu4-000IeIC@localhost \
    --to=bob@rattlesnake.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).