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: Arthur Miller
Subject: Re: "Why is emacs so square?"
Date: Wed, 17 Jun 2020 05:46:26 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

Ricardo Wurmus <rekado@elephly.net> writes:

> 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.

When I accidentally delete a part of markup, usually '[' or ']' in a
link, it is immidiately reflected visually in the buffer so I just undo
to "restore". For me it is just C-S--.

But I do agree it would be usefull to make some markup "atomic", like
for example "#+BEGIN_SRC", "#+END_SRC". But for some other markup it
might be difficult. For example leading '*': sometimes it might be a
misstake, but sometimes it might be intentionally, for example to change
hte heading from say *** to **. 



reply via email to

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