emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: "Why is emacs so square?"


From: Ricardo Wurmus
Subject: Re: "Why is emacs so square?"
Date: Wed, 17 Jun 2020 05:36:26 +0200
User-agent: mu4e 1.4.10; emacs 26.3

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Joost Kremers <joostkremers@fastmail.fm>
>> Date: Fri, 24 Apr 2020 08:36:49 +0200
[…]
>> The 
>> point is, I need to know Org syntax anyway to do each single thing 
>> separately. Integrating them doesn't require a deeper level of 
>> knowledge than I already have.
>
> Unless I misunderstand what you mean by "Org syntax", I don't think
> users who want to create documents with Org should be required to know
> that syntax.  Instead, there should be commands to help them produce
> correctly formatted snippets.  Compare that with Texinfo commands
> which produce the various syntactic elements of the language.

I would like to not have to bother with Org syntax at all, but after
using the commands that produce it I see that syntax.  It can be very
confusing to see an unfamiliar syntax after issuing a command — what
parts of it may I edit?  When I accidentally remove parts of it, how can
I restore the full syntax?

Two things would help here, in my opinion:

* hide the textual representation.

  My Org mode configuration replaces “*”, “**”, “***”, “****” with
  “bullets” like "◉", "○", "◇", and "◇".  I can produce them either by
  tying “*” (if I know that syntax) or by using M-RET and S-right.  Org
  mode hides the syntax for URLs when [[…][…]] is used and displays just
  an underlined and clickable URL.

  For source code blocks I replace “#+begin_src” and “#+end_src” with
  markers like ✎ and □ and set the block visually apart by customizing
  the faces. (See https://pank.eu/blog/pretty-babel-src-blocks.html)

* delete the whole construct instead of deleting characters.  Currently,
  it is easy to end up with invalid syntax by deleting parts of the
  markup text.  Deleting the trailing “c” of “#+end_src” at the end of a
  source code block, for example, breaks that code block but leaves the
  “#+begin_src” and now incomplete “#+end_sr” where they are.  I need to
  know that I have to append a “c” at the end to restore the code
  block.  There is no command I can run to “repair” this code block.
  Maybe it would be good to remove the whole textual markup at once,
  leaving only the user-provided text that was marked up.

By making it impossible or very unlikely to produce incorrect markup and
by hiding the markup syntax itself the user wouldn’t have to learn it
and also wouldn’t be exposed to it accidentally.

At that point the syntax itself becomes secondary; this would then be
similar to how enriched-mode works.

-- 
Ricardo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]