unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Oliver Scholz <alkibiades@gmx.de>
Cc: boris@gnu.org, emacs-devel@gnu.org, Alex Schroeder <alex@emacswiki.org>
Subject: Re: enriched-mode and switching major modes.
Date: Fri, 10 Sep 2004 21:30:13 +0200	[thread overview]
Message-ID: <u1xh9zzui.fsf@ID-87814.user.uni-berlin.de> (raw)
In-Reply-To: <E1C5pOB-0007dg-AN@fencepost.gnu.org> (Richard Stallman's message of "Fri, 10 Sep 2004 13:40:47 -0400")

Richard Stallman <rms@gnu.org> writes:

>     True, the current implementation allows future derivatives of
>     text-mode -- such as a major mode to write movie scripts -- to add
>     persistent colors to the text.
>
> It also allows existing simple variants of text mode, such as
> paragraph-indent-text-mode, to work with enriched mode.

But for things like this, enriched-mode-the-minor-mode should /not/
affect anything but encoding/decoding.  It should leave everything
else to the major mode.

>     But how often is this power used?
>
> Enriched mode is not used much, now.  Part of the reason is that we
> don't have code to save in the formats users really use, and part is
> that we have not implemented enough of the display formatting features
> that people want in a word processor.  This is an unfinished feature.

Indeed, I believe that in the long run Emacs' display engine should
support a real block model.

These two belong together, IMO.  It is very difficult to make Emacs
support formats that people really use in a WP-style way. Word
processors assign properties to paragraphs, including defaults for
character styles (like the font, the weight etc.); and they support
style sheets for that. It is very, very hairy to keep paragraphs,
their properties and their representation in an Emacs buffer in sync,
not to talk about style sheets.  In fact I do think that getting a WP
UI right in Emacs is currently impossible.  (However, I start to think
that some 60%-70% solution could be feasible. But I have not explored
that yet.)

Interesting coincidence, btw: I lately had a discussion via e-mail
with somebody who stumbled over a prototype RTF reader of mine on the
web.  He asked me to make enriched-mode support RTF as a format.  I told
him that this is not possible for the reasons above; even an
incomplete, possibly fragile, partial solution would require a major
mode.  It turned out that that person would be satisfied with something
which I call "bad RTF", that specifies font, font height, font weight
etc. everywhere explicitely; i.e. indeed something like text/enriched
but with a file format that is supported by more programs.  This,
however, could not really be called "word processing".  Personally, I
am not interested in such things and I think it is very wrong.

I do think that enriched-mode as a minor mode is a dead end.  If it
would restricted itself to just affecting visiting and saving, it
would be nice to have (I disagree with Alex Schröder here).  But this
is not how WP in Emacs could be like.  WP in Emacs should be based on
a major mode that handels every aspect of editing and representing
and that would support different file formats (RTF, HTML, TEI XML,
Docbook, maybe Texinfo) as a target.  And most importantly that major
mode would be responsible for providing an user interface to a block
model -- either a real one supported by the display engine, or a
fake one based on some half-obscure hackery.

> But does the lack of usage really make a difference here?
>
> 				       And
>     at what cost does this power come?
>
> I don't see the point here.  What do you think the cost is?
> At present, what we see a bug.  I admit that the bug is not
> trivial to fix, but I don't see that the "power" of enriched
> mode has a "cost" in some inherent sense.
>
>       Even if we wanted this power,
>     wouldn't it be better if such modes could just add some defun to a
>     hook or two that would automatically do the right thing: Automatically
>     encode and decode text properties upon saving and reading files.
>     Without all the other features of enriched mode which are rarely
>     useful in this case, such as the the treatment of newlines or the
>     keybindings.
>
> I am not really sure what feature you have in mind.
> It might be a useful feature, but it would not replace
> the existing feature of Enriched mode.

I think that Alex talks about writing new major modes that also use
text/enriched as a file format.  I think that this feature is already
there.  We have `after-insert-file-functions' and
`write-region-annotate-functions' (or `format-alist') and we have
`enriched-encode' and `enriched-decode'.


    Oliver
-- 
Oliver Scholz               25 Fructidor an 212 de la Révolution
Ostendstr. 61               Liberté, Egalité, Fraternité!
60314 Frankfurt a. M.       

  reply	other threads:[~2004-09-10 19:30 UTC|newest]

Thread overview: 150+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-09-04 23:58 enriched-mode and switching major modes Luc Teirlinck
2004-09-05 17:25 ` Richard Stallman
2004-09-06  0:59   ` Luc Teirlinck
2004-09-06 16:42     ` Stefan
2004-09-06 16:53       ` Luc Teirlinck
2004-09-10 17:40     ` Richard Stallman
2004-09-11  2:14       ` Luc Teirlinck
2004-09-11 16:56         ` Stefan
2004-09-11 21:51           ` Luc Teirlinck
2004-09-11 22:55             ` Stefan
2004-09-12  1:46               ` Luc Teirlinck
2004-09-12 18:18                 ` Stefan
2004-09-12  2:50               ` Luc Teirlinck
2004-09-13  7:00               ` Richard Stallman
2004-09-12  9:10         ` Richard Stallman
2004-09-12 16:51           ` Luc Teirlinck
2004-09-12 17:08             ` Oliver Scholz
2004-09-12 18:36             ` Kim F. Storm
2004-09-12 20:01               ` Luc Teirlinck
2004-09-13  7:32                 ` Kim F. Storm
2004-09-13 23:03             ` Richard Stallman
2004-09-14  3:46               ` Luc Teirlinck
2004-09-14 12:26                 ` Stefan Monnier
2004-09-14 22:12                   ` Luc Teirlinck
2004-09-15  9:32                 ` Richard Stallman
2004-09-17  9:36                 ` Richard Stallman
2004-09-19 20:07                   ` Luc Teirlinck
2004-09-06  7:36   ` Oliver Scholz
2004-09-06 19:01     ` Alex Schroeder
2004-09-10 17:40       ` Richard Stallman
2004-09-10 19:30         ` Oliver Scholz [this message]
2004-09-13 23:04           ` Richard Stallman
2004-09-14 14:41             ` Oliver Scholz
2004-09-14 16:31               ` Oliver Scholz
2004-09-15  1:39               ` Luc Teirlinck
2004-09-15  1:47                 ` Luc Teirlinck
2004-09-15  8:06                 ` Oliver Scholz
2004-09-15 15:42               ` Richard Stallman
2004-09-16 13:20                 ` Kai Grossjohann
2004-09-17 23:22                   ` Richard Stallman
2004-09-16 17:04                 ` Oliver Scholz
2004-09-17  5:15                   ` Eli Zaretskii
2004-09-17 14:34                     ` Oliver Scholz
2004-09-17 20:43                       ` Kai Grossjohann
2004-09-17 22:05                         ` Kim F. Storm
2004-09-18 19:07                           ` Richard Stallman
2004-09-18 15:37                         ` Robert J. Chassell
2004-09-18 11:14                       ` Eli Zaretskii
2004-09-18 12:04                         ` David Kastrup
2004-09-18 13:32                           ` Eli Zaretskii
2004-09-18 13:46                             ` David Kastrup
2004-09-18 15:57                               ` Eli Zaretskii
2004-09-19 17:19                                 ` Kai Grossjohann
2004-09-18 22:55                           ` Richard Stallman
2004-09-18 17:08                         ` Oliver Scholz
2004-09-18 17:48                           ` Eli Zaretskii
2004-09-18 20:02                             ` Oliver Scholz
2004-09-18 21:25                               ` Eli Zaretskii
2004-09-18 21:54                                 ` Oliver Scholz
2004-09-20  0:06                                   ` Richard Stallman
2004-09-20 11:48                                     ` Oliver Scholz
2004-09-21 18:30                                       ` Richard Stallman
2004-09-21 19:08                                         ` Eli Zaretskii
2004-09-21 20:06                                           ` Stefan Monnier
2004-09-22  4:54                                             ` Eli Zaretskii
2004-09-22 18:20                                           ` Richard Stallman
2004-09-22 18:39                                             ` Eli Zaretskii
2004-09-23 16:44                                               ` Richard Stallman
2004-09-22 10:01                                         ` Oliver Scholz
2004-09-22 13:08                                           ` Stefan Monnier
2004-09-22 13:11                                           ` Stefan Monnier
2004-09-22 13:14                                             ` Oliver Scholz
2004-09-22 16:27                                               ` Stefan Monnier
2004-09-23  1:48                                               ` Luc Teirlinck
2004-09-23  9:29                                             ` Richard Stallman
2004-09-23  9:48                                               ` David Kastrup
2004-09-23 16:44                                                 ` Richard Stallman
2004-09-23 11:35                                               ` Stefan
2004-09-23 12:46                                                 ` David Kastrup
2004-09-23 12:59                                                 ` Oliver Scholz
2004-09-24 12:08                                                 ` Richard Stallman
2004-09-24 12:50                                                   ` Stefan
2004-09-25 15:34                                                     ` Richard Stallman
2004-09-24 10:59                                           ` Eli Zaretskii
2004-09-24 11:53                                             ` Oliver Scholz
2004-09-24 15:51                                               ` Oliver Scholz
2004-09-24 20:55                                                 ` Alex Schroeder
2004-09-24 21:11                                                   ` Oliver Scholz
2004-09-25 16:36                                                 ` Eli Zaretskii
2004-09-22 10:35                                         ` Oliver Scholz
2004-09-22 18:21                                           ` Richard Stallman
2004-09-20  0:05                               ` Richard Stallman
2004-09-18 22:11                             ` Kim F. Storm
2004-09-19  3:47                               ` Eli Zaretskii
2004-09-20  0:05                               ` Richard Stallman
2004-09-20 11:07                                 ` Oliver Scholz
2004-09-20 11:55                                   ` Kim F. Storm
2004-09-21 18:30                                   ` Richard Stallman
2004-09-22  7:44                                     ` Kim F. Storm
2004-09-22 18:14                                       ` Eli Zaretskii
2004-09-22 21:53                                         ` Kim F. Storm
2004-09-23  4:47                                           ` Eli Zaretskii
2004-09-23  7:13                                             ` Kim F. Storm
2004-09-22 18:20                                       ` Richard Stallman
2004-09-22 21:58                                         ` Kim F. Storm
2004-09-20 12:47                                 ` Kai Grossjohann
2004-09-17 15:08                   ` Robert J. Chassell
2004-09-18 17:34                     ` Oliver Scholz
2004-09-18 23:05                       ` Robert J. Chassell
2004-09-19 11:07                         ` Oliver Scholz
2004-09-19 11:24                           ` David Kastrup
2004-09-19 13:14                           ` Robert J. Chassell
2004-09-20  5:49                           ` Stefan
2004-09-20  6:17                             ` David Kastrup
2004-09-20  6:26                               ` Stefan
2004-09-20 11:00                             ` Oliver Scholz
2004-09-20 13:24                               ` Stefan Monnier
2004-09-20 14:17                                 ` Oliver Scholz
2004-09-20 14:55                                   ` Stefan Monnier
2004-09-20 19:18                                     ` David Kastrup
2004-09-20 19:49                                       ` Stefan Monnier
2004-09-20 19:37                                     ` Oliver Scholz
2004-09-20 20:04                                       ` Stefan Monnier
2004-09-21  9:07                                         ` Oliver Scholz
2004-09-21 14:43                                           ` Robert J. Chassell
2004-09-20 21:44                                   ` Robert J. Chassell
2004-09-17 23:22                   ` Richard Stallman
2004-09-18 16:57                     ` Oliver Scholz
2004-09-18 17:12                       ` Oliver Scholz
2004-09-20  0:05                       ` Richard Stallman
2004-09-20 11:35                         ` Oliver Scholz
2004-09-20 11:47                           ` Kim F. Storm
2004-09-20 13:27                             ` Oliver Scholz
2004-09-20 14:23                               ` Kim F. Storm
2004-09-20 19:35                                 ` Oliver Scholz
2004-09-20 19:35                               ` Oliver Scholz
2004-09-20 20:21                                 ` Kim F. Storm
2004-09-21  9:07                                   ` Oliver Scholz
2004-09-21 11:20                                     ` Kim F. Storm
2004-09-22  7:11                                   ` Richard Stallman
2004-09-21 18:30                             ` Richard Stallman
2004-09-21 20:31                               ` Miles Bader
2004-09-22  3:20                               ` James Clark
2004-09-23  9:30                                 ` Richard Stallman
2004-09-21  9:53                         ` Kai Grossjohann
2004-09-21 11:32                           ` Kim F. Storm
2004-09-21 18:53                           ` Eli Zaretskii
2004-09-21 20:34                             ` Miles Bader
2004-09-22  0:31                             ` David Kastrup
2004-09-22 14:00                           ` Richard Stallman

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=u1xh9zzui.fsf@ID-87814.user.uni-berlin.de \
    --to=alkibiades@gmx.de \
    --cc=alex@emacswiki.org \
    --cc=boris@gnu.org \
    --cc=emacs-devel@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).