* CUA-theme?
@ 2020-09-16 13:29 Stefan Monnier
2020-09-16 14:29 ` CUA-theme? Tim Van den Langenbergh
` (2 more replies)
0 siblings, 3 replies; 13+ messages in thread
From: Stefan Monnier @ 2020-09-16 13:29 UTC (permalink / raw)
To: emacs-devel
Would it make sense to define a new custom-theme (or minor-mode until
custom-theme can handle that) which makes Emacs's behavior match the
"standard" in most other applications?
Maybe it would make sense to do it under the constraints of avoiding all
changes which are "brittle" by nature (like the C-c and C-x remapping
in `cua-mode`). So the goal would be to have a config that would be
just as "good" (no rough corners) as the default while minimizing the
surprises for a user that's familiar with many other editors
and applications (and without having to worry about alienating
old-timers like yours truly).
This wouldn't come with a specific color theme, since it's an orthogonal
problem, but I guess it could affect some faces if there's a "standard"
for some kind of color information which we're not following (I'm
thinking for example of the colors used for diff-mode, which we changed
to make them more "standard", so I suppose there could be other similar
situations).
Stefan
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: CUA-theme?
2020-09-16 13:29 CUA-theme? Stefan Monnier
@ 2020-09-16 14:29 ` Tim Van den Langenbergh
2020-09-16 17:22 ` CUA-theme? Stefan Monnier
2020-09-16 20:19 ` CUA-theme? Juri Linkov
2020-09-17 11:08 ` CUA-theme? Daniele Nicolodi
2 siblings, 1 reply; 13+ messages in thread
From: Tim Van den Langenbergh @ 2020-09-16 14:29 UTC (permalink / raw)
To: emacs-devel
[-- Attachment #1: Type: text/plain, Size: 433 bytes --]
On Wednesday, 16 September 2020 15:29:00 CEST Stefan Monnier wrote:
> Would it make sense to define a new custom-theme (or minor-mode until
> custom-theme can handle that) which makes Emacs's behavior match the
> "standard" in most other applications?
I know that mode-specific documentation is easy to get through C-h m, but is
there something similar for themes? If not that may make themes a little less
useful for our purposes.
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: CUA-theme?
2020-09-16 14:29 ` CUA-theme? Tim Van den Langenbergh
@ 2020-09-16 17:22 ` Stefan Monnier
0 siblings, 0 replies; 13+ messages in thread
From: Stefan Monnier @ 2020-09-16 17:22 UTC (permalink / raw)
To: Tim Van den Langenbergh; +Cc: emacs-devel
>> Would it make sense to define a new custom-theme (or minor-mode until
>> custom-theme can handle that) which makes Emacs's behavior match the
>> "standard" in most other applications?
> I know that mode-specific documentation is easy to get through C-h m, but is
> there something similar for themes?
I don't know.
> If not that may make themes a little less useful for our purposes.
I think it argues for fixing the themes so they can come with some doc
which you can easily consult.
Stefan
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: CUA-theme?
2020-09-16 13:29 CUA-theme? Stefan Monnier
2020-09-16 14:29 ` CUA-theme? Tim Van den Langenbergh
@ 2020-09-16 20:19 ` Juri Linkov
2020-09-17 11:08 ` CUA-theme? Daniele Nicolodi
2 siblings, 0 replies; 13+ messages in thread
From: Juri Linkov @ 2020-09-16 20:19 UTC (permalink / raw)
To: Stefan Monnier; +Cc: emacs-devel
> Would it make sense to define a new custom-theme (or minor-mode until
> custom-theme can handle that) which makes Emacs's behavior match the
> "standard" in most other applications?
Like customization uses both custom-set-variables and custom-set-faces
in the init file, the corresponding functions for themes are
custom-theme-set-variables and custom-theme-set-faces. So the question:
is custom-theme-set-variables enough to define a new custom-theme?
Or more definition features like provided by use-package are needed?
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: CUA-theme?
2020-09-16 13:29 CUA-theme? Stefan Monnier
2020-09-16 14:29 ` CUA-theme? Tim Van den Langenbergh
2020-09-16 20:19 ` CUA-theme? Juri Linkov
@ 2020-09-17 11:08 ` Daniele Nicolodi
2020-09-17 12:29 ` CUA-theme? Robert Pluim
2020-09-17 13:33 ` CUA-theme? Stefan Monnier
2 siblings, 2 replies; 13+ messages in thread
From: Daniele Nicolodi @ 2020-09-17 11:08 UTC (permalink / raw)
To: emacs-devel
On 16/09/2020 15:29, Stefan Monnier wrote:
> Would it make sense to define a new custom-theme (or minor-mode until
> custom-theme can handle that) which makes Emacs's behavior match the
> "standard" in most other applications?
If I understand correctly the recent discussions, one of the main goals
is to make Emacs more accessible to newcomers. In this respect, are we
sure that using the "theme" concept, associated (outside the Emacs
world) with customizing how applications looks, to configure the
application behavior is a good idea?
Reportedly, one of the things that newcomers struggle with is the
peculiar and unique jargon used to describe Emacs concepts. This would
add one more. I think the concept of "mode" as something that changes
application behavior is well established and easier to explain.
Cheers,
Dan
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: CUA-theme?
2020-09-17 11:08 ` CUA-theme? Daniele Nicolodi
@ 2020-09-17 12:29 ` Robert Pluim
2020-09-17 12:35 ` CUA-theme? Daniele Nicolodi
2020-09-17 12:42 ` CUA-theme? Thibaut Verron
2020-09-17 13:33 ` CUA-theme? Stefan Monnier
1 sibling, 2 replies; 13+ messages in thread
From: Robert Pluim @ 2020-09-17 12:29 UTC (permalink / raw)
To: Daniele Nicolodi; +Cc: emacs-devel
>>>>> On Thu, 17 Sep 2020 13:08:50 +0200, Daniele Nicolodi <daniele@grinta.net> said:
Daniele> On 16/09/2020 15:29, Stefan Monnier wrote:
>> Would it make sense to define a new custom-theme (or minor-mode until
>> custom-theme can handle that) which makes Emacs's behavior match the
>> "standard" in most other applications?
Daniele> If I understand correctly the recent discussions, one of the main goals
Daniele> is to make Emacs more accessible to newcomers. In this respect, are we
Daniele> sure that using the "theme" concept, associated (outside the Emacs
Daniele> world) with customizing how applications looks, to configure the
Daniele> application behavior is a good idea?
Daniele> Reportedly, one of the things that newcomers struggle with is the
Daniele> peculiar and unique jargon used to describe Emacs concepts. This would
Daniele> add one more. I think the concept of "mode" as something that changes
Daniele> application behavior is well established and easier to explain.
Except you then engender confusion with the Emacs concept of
modes. Perhaps we should call them 'user type profiles' or something,
then we could call them 'new-to-emacs-profile', 'vanilla-profile', etc.
Robert
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: CUA-theme?
2020-09-17 12:29 ` CUA-theme? Robert Pluim
@ 2020-09-17 12:35 ` Daniele Nicolodi
2020-09-17 13:03 ` CUA-theme? Robert Pluim
2020-09-17 12:42 ` CUA-theme? Thibaut Verron
1 sibling, 1 reply; 13+ messages in thread
From: Daniele Nicolodi @ 2020-09-17 12:35 UTC (permalink / raw)
To: emacs-devel
On 17/09/2020 14:29, Robert Pluim wrote:
>>>>>> On Thu, 17 Sep 2020 13:08:50 +0200, Daniele Nicolodi <daniele@grinta.net> said:
>
> Daniele> On 16/09/2020 15:29, Stefan Monnier wrote:
> >> Would it make sense to define a new custom-theme (or minor-mode until
> >> custom-theme can handle that) which makes Emacs's behavior match the
> >> "standard" in most other applications?
>
> Daniele> If I understand correctly the recent discussions, one of the main goals
> Daniele> is to make Emacs more accessible to newcomers. In this respect, are we
> Daniele> sure that using the "theme" concept, associated (outside the Emacs
> Daniele> world) with customizing how applications looks, to configure the
> Daniele> application behavior is a good idea?
>
> Daniele> Reportedly, one of the things that newcomers struggle with is the
> Daniele> peculiar and unique jargon used to describe Emacs concepts. This would
> Daniele> add one more. I think the concept of "mode" as something that changes
> Daniele> application behavior is well established and easier to explain.
>
> Except you then engender confusion with the Emacs concept of
> modes. Perhaps we should call them 'user type profiles' or something,
> then we could call them 'new-to-emacs-profile', 'vanilla-profile', etc.
Why do you think there would be confusion with the Emacs concept of
mode? Aren't Emacs modes things that change how Emacs behaves and
defines keybindings?
Cheers,
Dan
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: CUA-theme?
2020-09-17 12:35 ` CUA-theme? Daniele Nicolodi
@ 2020-09-17 13:03 ` Robert Pluim
2020-09-17 16:14 ` CUA-theme? Drew Adams
0 siblings, 1 reply; 13+ messages in thread
From: Robert Pluim @ 2020-09-17 13:03 UTC (permalink / raw)
To: Daniele Nicolodi; +Cc: emacs-devel
>>>>> On Thu, 17 Sep 2020 14:35:53 +0200, Daniele Nicolodi <daniele@grinta.net> said:
>> Except you then engender confusion with the Emacs concept of
>> modes. Perhaps we should call them 'user type profiles' or something,
>> then we could call them 'new-to-emacs-profile', 'vanilla-profile', etc.
Daniele> Why do you think there would be confusion with the Emacs concept of
Daniele> mode? Aren't Emacs modes things that change how Emacs behaves and
Daniele> defines keybindings?
Because an emacs mode is "hereʼs some specific functionality for this
type of editing/code/etc", and this other mode is "hereʼs a collection
of parameters and Emacs modes configured in such a way that itʼs
easier for people coming from non-Emacs editors".
Robert
^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: CUA-theme?
2020-09-17 13:03 ` CUA-theme? Robert Pluim
@ 2020-09-17 16:14 ` Drew Adams
0 siblings, 0 replies; 13+ messages in thread
From: Drew Adams @ 2020-09-17 16:14 UTC (permalink / raw)
To: Robert Pluim, Daniele Nicolodi; +Cc: emacs-devel
>> Why do you think there would be confusion with the Emacs concept of
>> mode? Aren't Emacs modes things that change how Emacs behaves and
>> defines keybindings?
>
> Because an emacs mode is "hereʼs some specific functionality for this
> type of editing/code/etc", and this other mode is "hereʼs a collection
> of parameters and Emacs modes configured in such a way that itʼs
> easier for people coming from non-Emacs editors".
Major modes, maybe. But not minor modes. Not in general.
A mode is just an interactive context that provides
a particular experience. It encapsulates behavior, and
you can turn it on and off.
Both things you describe can be usefully handled as modes:
(1) specific functionality for a given type of activity,
and (2) a collection of settings and contexts (possibly
via modes) for some particular experience.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: CUA-theme?
2020-09-17 12:29 ` CUA-theme? Robert Pluim
2020-09-17 12:35 ` CUA-theme? Daniele Nicolodi
@ 2020-09-17 12:42 ` Thibaut Verron
1 sibling, 0 replies; 13+ messages in thread
From: Thibaut Verron @ 2020-09-17 12:42 UTC (permalink / raw)
To: Robert Pluim; +Cc: Daniele Nicolodi, emacs-devel
> Daniele> If I understand correctly the recent discussions, one of the main goals
> Daniele> is to make Emacs more accessible to newcomers. In this respect, are we
> Daniele> sure that using the "theme" concept, associated (outside the Emacs
> Daniele> world) with customizing how applications looks, to configure the
> Daniele> application behavior is a good idea?
I couldn't agree more.
> Daniele> Reportedly, one of the things that newcomers struggle with is the
> Daniele> peculiar and unique jargon used to describe Emacs concepts. This would
> Daniele> add one more. I think the concept of "mode" as something that changes
> Daniele> application behavior is well established and easier to explain.
>
> Except you then engender confusion with the Emacs concept of
> modes.
Only in the sense that it is more restrictive than the Emacs concept.
For example, cua-mode, delete-selection-mode and evil-mode are Emacs
modes and also application-behavior modes. I don't think there would
be a major confusion here, as by the time users see other modes, they
would be more used to Emacs terminology.
> Perhaps we should call them 'user type profiles' or something,
> then we could call them 'new-to-emacs-profile', 'vanilla-profile', etc.
That's also fine, but it might create confusion with user profiles,
which would typically cover *all* the settings, so that different
profiles would have different init files. That actually opens another
area for investigation: we could have Emacs support such user profiles
and have the configuration screen offer a choice for a "base profile"
(some kinds of factory settings).
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: CUA-theme?
2020-09-17 11:08 ` CUA-theme? Daniele Nicolodi
2020-09-17 12:29 ` CUA-theme? Robert Pluim
@ 2020-09-17 13:33 ` Stefan Monnier
2020-09-17 14:01 ` CUA-theme? Arthur Miller
1 sibling, 1 reply; 13+ messages in thread
From: Stefan Monnier @ 2020-09-17 13:33 UTC (permalink / raw)
To: Daniele Nicolodi; +Cc: emacs-devel
Daniele Nicolodi [2020-09-17 13:08:50] wrote:
> On 16/09/2020 15:29, Stefan Monnier wrote:
>> Would it make sense to define a new custom-theme (or minor-mode until
>> custom-theme can handle that) which makes Emacs's behavior match the
>> "standard" in most other applications?
>
> If I understand correctly the recent discussions, one of the main goals
> is to make Emacs more accessible to newcomers. In this respect, are we
> sure that using the "theme" concept, associated (outside the Emacs
> world) with customizing how applications looks, to configure the
> application behavior is a good idea?
I'm not interested in the user-facing part where we decide what name to
show to the users (where we likely won't give it a name at all, instead
we'll just have a button saying "follow non-Emacs standards").
I'm talking about the underlying technique.
It's easy to take a theme and then add further changes on top of it
(some of which may "undo" changes made by the theme) and it is supposed
to work reliably. Whereas enabling/disabling a minor mode which enables
`delete-selection-mode` (for example) will often misbehave in corner
cases when mixed in with enabling/disabling `delete-selection-mode`.
Stefan
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: CUA-theme?
2020-09-17 13:33 ` CUA-theme? Stefan Monnier
@ 2020-09-17 14:01 ` Arthur Miller
2020-09-17 14:13 ` CUA-theme? Stefan Monnier
0 siblings, 1 reply; 13+ messages in thread
From: Arthur Miller @ 2020-09-17 14:01 UTC (permalink / raw)
To: Stefan Monnier; +Cc: Daniele Nicolodi, emacs-devel
Stefan Monnier <monnier@iro.umontreal.ca> writes:
> Daniele Nicolodi [2020-09-17 13:08:50] wrote:
>
>> On 16/09/2020 15:29, Stefan Monnier wrote:
>>> Would it make sense to define a new custom-theme (or minor-mode until
>>> custom-theme can handle that) which makes Emacs's behavior match the
>>> "standard" in most other applications?
>>
>> If I understand correctly the recent discussions, one of the main goals
>> is to make Emacs more accessible to newcomers. In this respect, are we
>> sure that using the "theme" concept, associated (outside the Emacs
>> world) with customizing how applications looks, to configure the
>> application behavior is a good idea?
>
> I'm not interested in the user-facing part where we decide what name to
> show to the users (where we likely won't give it a name at all, instead
> we'll just have a button saying "follow non-Emacs standards").
> I'm talking about the underlying technique.
If it not interesting to expose to a user how the thing is implemented,
then you can as well have it as a mode and not introduce yet another
thing Emacs does differently.
> It's easy to take a theme and then add further changes on top of it
> (some of which may "undo" changes made by the theme) and it is supposed
> to work reliably. Whereas enabling/disabling a minor mode which enables
> `delete-selection-mode` (for example) will often misbehave in corner
> cases when mixed in with enabling/disabling `delete-selection-mode`.
Then it sounds like a bug somewhere and should probably be fixed?
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: CUA-theme?
2020-09-17 14:01 ` CUA-theme? Arthur Miller
@ 2020-09-17 14:13 ` Stefan Monnier
0 siblings, 0 replies; 13+ messages in thread
From: Stefan Monnier @ 2020-09-17 14:13 UTC (permalink / raw)
To: Arthur Miller; +Cc: Daniele Nicolodi, emacs-devel
>> It's easy to take a theme and then add further changes on top of it
>> (some of which may "undo" changes made by the theme) and it is supposed
>> to work reliably. Whereas enabling/disabling a minor mode which enables
>> `delete-selection-mode` (for example) will often misbehave in corner
>> cases when mixed in with enabling/disabling `delete-selection-mode`.
> Then it sounds like a bug somewhere and should probably be fixed?
Fixing it is done by implementing it as a theme.
And no, Emacs is not the only system where themes can affect more
than colors.
Stefan
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2020-09-17 16:14 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-09-16 13:29 CUA-theme? Stefan Monnier
2020-09-16 14:29 ` CUA-theme? Tim Van den Langenbergh
2020-09-16 17:22 ` CUA-theme? Stefan Monnier
2020-09-16 20:19 ` CUA-theme? Juri Linkov
2020-09-17 11:08 ` CUA-theme? Daniele Nicolodi
2020-09-17 12:29 ` CUA-theme? Robert Pluim
2020-09-17 12:35 ` CUA-theme? Daniele Nicolodi
2020-09-17 13:03 ` CUA-theme? Robert Pluim
2020-09-17 16:14 ` CUA-theme? Drew Adams
2020-09-17 12:42 ` CUA-theme? Thibaut Verron
2020-09-17 13:33 ` CUA-theme? Stefan Monnier
2020-09-17 14:01 ` CUA-theme? Arthur Miller
2020-09-17 14:13 ` CUA-theme? Stefan Monnier
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.