unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Gregory Heytings via "Emacs development discussions." <emacs-devel@gnu.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: casouri@gmail.com, emacs-devel@gnu.org
Subject: Re: Interactive guide for new users
Date: Sat, 12 Sep 2020 10:35:06 +0000	[thread overview]
Message-ID: <alpine.NEB.2.22.394.2009121201410453.583@sdf.lonestar.org> (raw)
In-Reply-To: <83d02re2uk.fsf@gnu.org>


Hi Eli,

Thanks for your feedback.  Some comments below.

>
>> The idea is to create an "initial greeting" that would be bundled with 
>> Emacs, and would be executed the first time the first time Emacs is 
>> launched (instead of the initial splash screen).
>
> What is the definition of "the first time"? where will we keep the 
> indication that this is/isn't "the first time"?  Also, will this affect 
> "emacs -Q" or "emacs -q"?
>

What I had in mind is something like "if -Q is not present and -q is not 
present and .emacs does not exist and ~/.emacs.d does not exit".

>
>> SCREEN 1: Welcome!  It seems that this is the first time you run Emacs, 
>> would you like to customize its interface and have a short 
>> introduction? This will not take you more than three minutes.
>
> I presume this will have a button "Not now" and "Don't show this again" 
> or somesuch?
>

Yes.  Clicking on either of these buttons would show the splash screen. 
"Not now" would not do anything, so the initial greeting would be executed 
again the next time Emacs is started.  And "Don't show this again" would 
create an empty ~/.emacs / ~/.emacs.d/init.el, so the initial greeting 
would not be executed again.

>
>> SCREEN 2: "Set the color theme", with a clickable list containing the 
>> (currently) 16 built-in themes.  A short code snippet above that list 
>> illustrates how code is displayed with each of these themes.
>
> The snippet will only be able to show the buffer text appearance.  For 
> other UI elements you will need an image.  Would using an image be 
> better here?
>

What do you mean by "other UI elements"?

>
>> [It would be nice to have a way to select a default font here, but I 
>> don't know if that feasible.]
>
> I don't think I understand what you mean by that.  Selection of the 
> default font _is_ possible, we have in the Options menu.
>

Yes, but what I meant is to have a list of font names in the buffer, and 
choosing a font by clicking on the font name.

>
>> SCREEN 4: Choose whether to set some common options that new users 
>> might want (because they are common in other text editors).  These are 
>> (the order could be improved, and items could be added or removed):
>
> We should carefully construct the list of the options, they shouldn't 
> just be someone's personal preferences.
>

Yes, of course.  That's one of the the purposes of my email.

>
>> 2. disable tool-bar-mode
>> 3. disable scroll-bar-mode
>
> I'd object to these two.  We have just established that the former is 
> important for newbies.  Scroll bars are presented by many applications, 
> so why is it important to offer to turn them off here? let the users 
> decide about these two.
>

It's just an option.  In the video by Yuan Fu ( 
https://youtu.be/0qMskTAR2aw ) you'll see that this screen is a list of 
checkboxes that the user can tick.

>
>> 6. hl-line-mode
>
> Why is this important? do other IDEs have it by default?
>

Yes.  Perhaps not all of them, but it's a very common thing.

>
>> 8. which-key-mode
>
> I disagree with this one, certainly in its current form.
>

Okay.

>
>> 10. save-place-mode and desktop-save-mode
>
> desktop-save-mode slows down startup, so it might not be suitable for 
> users who start Emacs many times a day.
>

Again it's just an option, but again it's someting that users might want 
to enable because it's a behavior that is common in text editors.

>
>> 11. (setq uniquify-buffer-name-style 'forward uniquify-min-dir-content 1024)
>
> Why? what's wrong with the defaults here?
>

This has been discussed earlier in another thread, but the current 
defaults (uniquify-buffer-name-style set to post-forward-angle-brackets) 
is puzzling to most users, to say the least.  A complete file name is what 
most users would expect here.

>
>> 14. icomplete-mode (or fido-mode?)
>
> Not sure this is a good idea, these modes present complex and 
> potentially confusing UI.
>

Users expect to see completion mechanisms in a modern editor.  Enabling 
completion in programming modes would be a too complex task for such an 
initial greeting, but with this the user would become aware that 
completion mechanisms exist in Emacs.

I use icomplete-mode myself, and don't understand what you mean by 
"complex and potentially confusing UI".

>
>> 16. display-time-mode
>
> Why?  Any modern desktop has the time displayed somewhere, so this just 
> occupies space on the mode line.
>

Again it's just an option.  One benefit of adding this in the list is that 
a user who would try it would see that the mode-line can be customized.

>
>> SCREEN 6: How to find help.  Short explanation about C-h C-h, C-h m, 
>> C-h p, C-h k / C-h w / C-h a, C-h l.
>
> This misses important help commands, we should consider the list 
> carefully with newbies in mind.  IMO, the various apropos commands are 
> much more important for them than other help commands.
>

Well, C-h C-h gives the complete list, and C-h a starts apropos.

BTW, on a second thought I would add a mention of "C-h e" in screen 5 
(when the minibuffer is introduced), and repeat it in screen 6.

>
>> SCREEN 8: Thank you. Your choices have been saved in Emacs' 
>> configuration file ~/.emacs.d/init.el (or ~/.emacs ?).
>
> What do we do here wrt XDG preferences?
>

This I don't know.

>
>> You can use M-x initial-greeting at any time to go through this 
>> configuration again.
>
> That command should be on the Help menu.  And I think the name should be 
> 'introduction-to-emacs' or somesuch.
>

Okay, that's fine for me.



  reply	other threads:[~2020-09-12 10:35 UTC|newest]

Thread overview: 174+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-08 18:48 Gather a list of confusions beginner tend to have Göktuğ Kayaalp
2020-09-08 19:30 ` Yuan Fu
2020-09-08 21:30   ` Praharsh Suryadevara
2020-09-09  3:51     ` Richard Stallman
2020-09-09 14:18       ` Eli Zaretskii
2020-09-09 14:24         ` Göktuğ Kayaalp
2020-09-09 15:07           ` Stefan Kangas
2020-09-09 16:09             ` Göktuğ Kayaalp
2020-09-09 16:23               ` Praharsh Suryadevara
2020-09-09 16:06           ` Praharsh Suryadevara
2020-09-11  4:13             ` Richard Stallman
2020-09-11  4:13         ` Richard Stallman
2020-09-11  4:41           ` Praharsh Suryadevara
2020-09-09  7:57     ` tomas
2020-09-10  2:40       ` Richard Stallman
2020-09-10  3:32         ` Eli Zaretskii
2020-09-10  8:29           ` tomas
2020-09-10  9:08             ` Gregory Heytings via Emacs development discussions.
2020-09-10  9:34               ` Eli Zaretskii
2020-09-10 10:08                 ` tomas
2020-09-10  9:30             ` Eli Zaretskii
2020-09-10 10:11               ` tomas
2020-09-11  4:18           ` Richard Stallman
2020-09-11  7:06             ` Eli Zaretskii
2020-09-11 13:47               ` Stefan Monnier
2020-09-12  3:22               ` Richard Stallman
2020-09-12  3:46                 ` Emanuel Berg via Emacs development discussions.
2020-09-10  8:28         ` tomas
2020-09-09 14:01   ` Eli Zaretskii
2020-09-10 23:20     ` Yuan Fu
2020-09-11  0:20       ` Interactive guide for new users (was: Re: Gather a list of confusions beginner tend to have) Stefan Kangas
2020-09-11  8:15         ` Gregory Heytings via Emacs development discussions.
2020-09-11  9:47           ` Interactive guide for new users Phil Sainty
2020-09-11 14:04           ` Interactive guide for new users (was: Re: Gather a list of confusions beginner tend to have) Yuan Fu
2020-09-11 14:38             ` Gregory Heytings via Emacs development discussions.
2020-09-11 14:49               ` Eli Zaretskii
2020-09-11 15:20                 ` Gregory Heytings via Emacs development discussions.
2020-09-11 15:28                   ` Eli Zaretskii
2020-09-11 15:46                     ` Gregory Heytings via Emacs development discussions.
2020-09-11 15:51                       ` Eli Zaretskii
2020-09-11 16:00                         ` Gregory Heytings via Emacs development discussions.
2020-09-11 17:03                           ` Interactive guide for new users Robert Pluim
2020-09-11 17:23                             ` Emanuel Berg via Emacs development discussions.
2020-09-11 17:36                               ` Robert Pluim
2020-09-11 17:39                                 ` Emanuel Berg via Emacs development discussions.
2020-09-11 18:43                           ` Interactive guide for new users (was: Re: Gather a list of confusions beginner tend to have) Eli Zaretskii
2020-09-11 19:48                             ` Ergus
2020-09-12  6:02                               ` Eli Zaretskii
2020-09-12  9:33                                 ` Ergus
2020-09-13 12:13                                   ` Interactive guide for new users Philip K.
2020-09-11 18:59                           ` FW: Interactive guide for new users (was: Re: Gather a list of confusions beginner tend to have) Drew Adams
2020-09-11 17:47                       ` Göktuğ Kayaalp
2020-09-11 17:53                         ` Emanuel Berg via Emacs development discussions.
2020-09-11 18:04                         ` Praharsh Suryadevara
2020-09-12 11:16                         ` Interactive guide for new users Lars Ingebrigtsen
2020-09-12 14:26                           ` Göktuğ Kayaalp
2020-09-12 14:55                             ` Gregory Heytings via Emacs development discussions.
2020-09-12 15:10                               ` Göktuğ Kayaalp
2020-09-12 15:18                                 ` Gregory Heytings via Emacs development discussions.
2020-09-13 18:12               ` Juri Linkov
2020-09-11 14:02         ` Interactive guide for new users (was: Re: Gather a list of confusions beginner tend to have) Yuan Fu
2020-09-12  9:31         ` Interactive guide for new users Gregory Heytings via Emacs development discussions.
2020-09-12  9:55           ` Eli Zaretskii
2020-09-12 10:35             ` Gregory Heytings via Emacs development discussions. [this message]
2020-09-12 10:52               ` Ergus
2020-09-12 10:58               ` Eli Zaretskii
2020-09-12 11:34                 ` Dmitry Gutov
2020-09-12 12:00                 ` Gregory Heytings via Emacs development discussions.
2020-09-12 12:21                   ` Eli Zaretskii
2020-09-12 13:56                     ` Gregory Heytings via Emacs development discussions.
2020-09-12 14:07                       ` Eli Zaretskii
2020-09-12 12:54                   ` Ergus
2020-09-12 12:16                 ` Ergus
2020-09-12 12:34                   ` Eli Zaretskii
2020-09-12 13:18                     ` Ergus
2020-09-12 13:43                       ` Eli Zaretskii
2020-09-12 14:17                         ` Ergus
2020-09-12 14:36                           ` Eli Zaretskii
2020-09-12 14:55                             ` Ergus
2020-09-12 16:25                             ` Ergus
2020-09-12 17:17                               ` Eli Zaretskii
2020-09-12 17:21                                 ` Yuan Fu
2020-09-12 17:39                                   ` Eli Zaretskii
2020-09-12 18:36                                   ` Gregory Heytings via Emacs development discussions.
2020-09-12 20:05                                     ` Ergus
2020-09-13  0:01                         ` Dmitry Gutov
2020-09-13  2:35                           ` Ergus
2020-09-13 17:56                             ` Dmitry Gutov
2020-09-13 22:10                               ` Gregory Heytings via Emacs development discussions.
2020-09-14 11:20                                 ` Thibaut Verron
2020-09-14 23:42                                   ` E
2020-09-15  7:40                                     ` Ergus
2020-09-15 23:40                                       ` E
2020-09-15 12:10                                   ` Stephen Leake
2020-09-15 12:22                                     ` Thibaut Verron
2020-09-15 23:33                                     ` E
2020-09-13 18:01                             ` Dmitry Gutov
2020-09-13 18:20                             ` Tim Van den Langenbergh
2020-09-13 21:10                               ` Ergus
2020-09-13  7:14                           ` Gregory Heytings via Emacs development discussions.
2020-09-13 14:04                           ` Eli Zaretskii
2020-09-13 16:38                             ` John Yates
2020-09-13 16:51                               ` Eli Zaretskii
2020-09-13 17:39                               ` Dmitry Gutov
2020-09-14 12:41                                 ` John Yates
2020-09-14 15:28                                   ` Eli Zaretskii
2020-09-15  1:42                                     ` John Yates
2020-09-15  7:00                                       ` Göktuğ Kayaalp
2020-09-16  3:30                                         ` John Yates
2020-09-16 10:14                                           ` Göktuğ Kayaalp
2020-09-15 14:15                                       ` Eli Zaretskii
2020-09-14 22:28                                   ` Dmitry Gutov
2020-09-13 17:47                             ` Dmitry Gutov
2020-09-14 14:17                             ` Gregory Heytings via Emacs development discussions.
2020-09-26  9:16               ` Elias Mårtenson
2020-09-26  9:31                 ` Eli Zaretskii
2020-09-26 14:38                 ` Drew Adams
2020-09-26 15:13                   ` Eli Zaretskii
2020-09-26 16:33                     ` Drew Adams
2020-09-26 16:39                   ` Andreas Schwab
2020-09-26 16:57                     ` Drew Adams
2020-09-26 16:01                 ` Jean Louis
2020-09-12 11:02             ` Göktuğ Kayaalp
2020-09-12 12:12               ` Gregory Heytings via Emacs development discussions.
2020-09-14 10:52               ` Robert Pluim
2020-09-19 15:20         ` Interactive guide for new users (was: Re: Gather a list of confusions beginner tend to have) Eduardo Mercovich
2020-09-19 17:02           ` Drew Adams
2020-09-21 14:50             ` Eduardo Mercovich
2020-09-21 16:07               ` Drew Adams
2020-09-21 21:40                 ` Eduardo Mercovich
2020-09-21 23:03                   ` Drew Adams
2020-09-22  3:40                 ` Richard Stallman
2020-09-22  9:06                   ` Interactive guide for new users Philip K.
2020-09-23  3:40                     ` Richard Stallman
2020-09-23 12:49                       ` Philip K.
2020-09-24  1:32                         ` Richard Stallman
2020-09-26  3:13                           ` Okam
2020-09-22 14:06                   ` Stefan Monnier
2020-09-28  9:24                   ` Po Lu
2020-09-29  3:29                     ` Richard Stallman
2020-09-19 17:16           ` Philip K.
2020-09-19 17:25             ` Eli Zaretskii
2020-09-19 18:09               ` Eduardo Mercovich
2020-09-19 18:39                 ` Eli Zaretskii
2020-09-19 21:43                   ` Eduardo Mercovich
2020-09-20  5:52                     ` Eli Zaretskii
2020-09-21 22:15                       ` Eduardo Mercovich
2020-09-22 13:56                         ` Eli Zaretskii
2020-09-23 12:54                           ` Eduardo Mercovich
2020-09-23 13:28                             ` Caio Henrique
2020-09-23 13:42                               ` Eduardo Mercovich
2020-09-23 14:16                             ` Stefan Kangas
2020-09-23 14:58                             ` Eli Zaretskii
2020-09-23 23:14                               ` Yuan Fu
2020-09-30 13:20                                 ` Eduardo Mercovich
2020-09-30 14:11                                   ` Eli Zaretskii
2020-09-19 17:53             ` Eduardo Mercovich
2020-09-20  9:26               ` Philip K.
2020-09-21 21:48                 ` Eduardo Mercovich
2020-09-11  6:45       ` Gather a list of confusions beginner tend to have Eli Zaretskii
2020-09-11  8:51         ` Dmitry Gutov
2020-09-11  8:59           ` Emanuel Berg via Emacs development discussions.
2020-09-11 13:52         ` Yuan Fu
2020-09-11 14:01           ` Eli Zaretskii
2020-09-11 14:27           ` Stefan Monnier
2020-09-09  2:01 ` Nick Savage
2020-09-09 14:48   ` Göktuğ Kayaalp
2020-09-10  2:36 ` Richard Stallman
2020-09-10 10:07   ` Göktuğ Kayaalp
2020-09-10 17:28     ` Drew Adams
2020-09-10 21:17       ` Göktuğ Kayaalp
     [not found] <<875z8ortot.fsf@gkayaalp.com>
     [not found] ` <<D09D40C2-FF5C-4D1B-A030-C710297C1AE0@gmail.com>
     [not found]   ` <<83lfhjkq0r.fsf@gnu.org>
     [not found]     ` <<8620B5CD-CA92-46BF-80A8-DBE7052F4CA6@gmail.com>
     [not found]       ` <<CADwFkm=GQqZ2e07QuC582T-MNhi1Xo4OPsMTYbQHH9gD7h6QnA@mail.gmail.com>
     [not found]         ` <<alpine.NEB.2.22.394.2009120917260453.23267@sdf.lonestar.org>
     [not found]           ` <<83d02re2uk.fsf@gnu.org>
2020-09-12 16:25             ` Interactive guide for new users Drew Adams
2020-09-13  4:34               ` Ihor Radchenko
  -- strict thread matches above, loose matches on Subject: below --
2020-09-29 11:11 Itai Efrat

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=alpine.NEB.2.22.394.2009121201410453.583@sdf.lonestar.org \
    --to=emacs-devel@gnu.org \
    --cc=casouri@gmail.com \
    --cc=eliz@gnu.org \
    --cc=ghe@sdf.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).