unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Lennart Borgman (gmail)" <lennart.borgman@gmail.com>
To: rms@gnu.org
Cc: monnier@IRO.UMontreal.CA, emacs-devel@gnu.org
Subject: Re: Selecting mumamo modes
Date: Thu, 25 Sep 2008 23:12:30 +0200	[thread overview]
Message-ID: <48DBFEBE.7010400@gmail.com> (raw)
In-Reply-To: <E1Kiuut-0004Or-Rw@fencepost.gnu.org>

Richard M. Stallman wrote:
> Here's an idea.  Suppose that `normal-mode' sees that a file specifies
> a major mode of the form `A+B'.  If there is no function `A+B-mode',
> it could create one using mumamo, based on `A-mode' and `B-mode', and
> then call it.

Let me see if I understand how you think here ;-)

The structural unit needed are those for defining the chunks. They must
contain info like:

a) B can contain A
b) a chunk dividing function for B in A
c) the major mode specifier A
d) the major mode specifier B
and maybe also
e) order relative to other such structural units; for chunk dividing.

If units like that are available then maybe something like you propose
can be done, yes.

But this is actually rather similar to what is done today in the
defmacro define-mumamo-multi-major-mode, isn't it? I can still see that
it may be useful, of course, but I do not find it necessary now.

Internally I think the structure above will be needed to allow
sub-chunks in sub-chunks. I am still in doubt about how to implement
that however.

* Some notes about sub-chunks in sub-chunks:

I think the best way to do sub-chunks in sub-chunks will be to always do
the chunk dividing from beginning of the file to the end of the file.
(And we could also require that the information about the sub-chunk
major mode should be in the beginning border.)

I have been hesitating to implement this because it might take to long
time if the user for example starts by jumping to the end of the file. A
way to solve that problem is perhaps to first guess the chunk from the
information at the buffer contents close to point and then just change
the chunk if needed when the chunk dividing running from beginning of
the file to the end has come to the chunk containing point.



> That is safe because it only lets a file call `A-mode' and `B-mode',
> which files can already do individually.
>
> Naturally the feature should handle cases of more than two modes in a
> similar way. 




  reply	other threads:[~2008-09-25 21:12 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-20  0:44 Specifying mode in file variables trouble Lennart Borgman (gmail)
2008-09-20  0:48 ` Lennart Borgman (gmail)
2008-09-20  0:59 ` Miles Bader
2008-09-20  1:06   ` Lennart Borgman (gmail)
2008-09-21  6:32     ` Richard M. Stallman
2008-09-21 12:33       ` Lennart Borgman (gmail)
2008-09-21 23:34         ` Richard M. Stallman
2008-09-22  0:38           ` Lennart Borgman (gmail)
2008-09-22  4:39             ` Richard M. Stallman
2008-09-22 13:14               ` Lennart Borgman (gmail)
2008-09-22 14:12                 ` Stefan Monnier
2008-09-22 14:26                   ` Lennart Borgman (gmail)
2008-09-23  4:40                     ` Richard M. Stallman
2008-09-23  9:29                       ` Lennart Borgman (gmail)
2008-09-23 19:47                         ` Richard M. Stallman
2008-09-22 23:11                 ` Lennart Borgman (gmail)
2008-09-23  4:40                 ` Richard M. Stallman
2008-09-23  9:47                   ` Lennart Borgman (gmail)
2008-09-23 19:47                     ` Richard M. Stallman
2008-09-23 20:43                       ` Lennart Borgman (gmail)
2008-09-24 13:47                         ` Richard M. Stallman
2008-09-24 13:47                         ` Richard M. Stallman
2008-09-24 17:21                           ` Lennart Borgman (gmail)
2008-09-25  5:49                             ` Richard M. Stallman
2008-09-25  6:28                               ` tomas
2008-09-25  6:41                                 ` Paul R
2008-09-25  7:55                                   ` tomas
2008-09-25  8:35                                     ` Paul R
2008-09-25 16:42                                       ` Lennart Borgman
2008-09-27  4:39                                 ` Richard M. Stallman
2008-10-21 19:16                                   ` Lennart Borgman (gmail)
2008-10-22  5:21                                     ` tomas
2008-10-22  6:21                                     ` Richard M. Stallman
2008-09-23 19:47                     ` Richard M. Stallman
2008-09-23 20:37                       ` Lennart Borgman (gmail)
2008-09-24 13:47                         ` Richard M. Stallman
2008-09-24 16:23                           ` Lennart Borgman (gmail)
2008-09-25  5:50                             ` Richard M. Stallman
2008-09-24 23:09                       ` Lennart Borgman (gmail)
2008-09-23  4:40                 ` Richard M. Stallman
2008-09-23  9:57                   ` Lennart Borgman (gmail)
2008-09-23 16:03                     ` Stefan Monnier
2008-09-23 17:22                       ` Lennart Borgman (gmail)
2008-09-23 20:33                         ` Stefan Monnier
2008-09-23 20:48                           ` Lennart Borgman (gmail)
2008-09-23 21:27                             ` Stefan Monnier
2008-09-23 21:30                               ` Lennart Borgman (gmail)
2008-09-24 20:57                                 ` Richard M. Stallman
2008-09-24 21:29                                   ` Lennart Borgman (gmail)
2008-09-25 17:46                                     ` Richard M. Stallman
2008-09-25 21:34                                       ` Lennart Borgman (gmail)
2008-09-26  4:45                                         ` Richard M. Stallman
2008-09-26  4:45                                         ` Richard M. Stallman
2008-09-25 17:46                                     ` Selecting mumamo modes Richard M. Stallman
2008-09-25 21:12                                       ` Lennart Borgman (gmail) [this message]
2008-09-26  4:45                                         ` Richard M. Stallman
2008-10-21 19:20                                           ` Lennart Borgman (gmail)
2008-09-23 19:47                     ` Specifying mode in file variables trouble Richard M. Stallman
2008-09-23 20:26                       ` Lennart Borgman (gmail)
2008-09-24 20:56                         ` Richard M. Stallman
2008-09-24 21:21                           ` Lennart Borgman (gmail)
2008-09-25 17:46                             ` Richard M. Stallman
2008-09-25 21:36                               ` Lennart Borgman (gmail)
2008-09-26  4:45                                 ` Richard M. Stallman
2008-09-24 20:57                         ` Richard M. Stallman
2008-09-24 21:45                           ` Lennart Borgman (gmail)
2008-09-20 19:03 ` Stefan Monnier
2008-09-20 23:34   ` Lennart Borgman (gmail)

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=48DBFEBE.7010400@gmail.com \
    --to=lennart.borgman@gmail.com \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@IRO.UMontreal.CA \
    --cc=rms@gnu.org \
    /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).