From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Praharsh Suryadevara Newsgroups: gmane.emacs.devel Subject: Re: Gather a list of confusions beginner tend to have Date: Tue, 8 Sep 2020 16:30:57 -0500 Message-ID: References: <875z8ortot.fsf@gkayaalp.com> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="000000000000a48e4f05aed40d33" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="28837"; mail-complaints-to="usenet@ciao.gmane.io" Cc: =?UTF-8?B?R8O2a3R1xJ8gS2F5YWFscA==?= , emacs-devel@gnu.org To: Yuan Fu Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Sep 08 23:32:11 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kFlDm-0007Oq-La for ged-emacs-devel@m.gmane-mx.org; Tue, 08 Sep 2020 23:32:10 +0200 Original-Received: from localhost ([::1]:43612 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kFlDl-0004i3-NX for ged-emacs-devel@m.gmane-mx.org; Tue, 08 Sep 2020 17:32:09 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:33560) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kFlCr-0004E2-Nn for emacs-devel@gnu.org; Tue, 08 Sep 2020 17:31:13 -0400 Original-Received: from mail-pf1-x434.google.com ([2607:f8b0:4864:20::434]:34603) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kFlCo-0006nn-Tb for emacs-devel@gnu.org; Tue, 08 Sep 2020 17:31:13 -0400 Original-Received: by mail-pf1-x434.google.com with SMTP id v196so379581pfc.1 for ; Tue, 08 Sep 2020 14:31:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=qibx46/pJUMX6WfUfVpGUFYouf3QhXyHdx2/HEZHQGM=; b=UC7sA1xEMGcozka37jLpnQkwInycRkRvXdlDrjA6/PdiTu6W/4kyqM1eWhxNGtUOd5 C6uBOSwU+pgnBpAK81kNC22III3G/IZhlmZp2ih6iVuo8h++KdGLxjjf4OKbZOnXGu7z gfveNosf9s2f3IG0y7hN1fhNgJ2ztp1ndmMIrCgeR1LWfsdozA/AXcklJoWn9HRMuws+ rJ6tnDfhKCejGRFQSwZCKUQP7+YIA0qXCwVPataB+mUNfGO/fiB70wnp0w5y4Z79UJ6j zQNZYpyuOMBJNXTV/6dVqWprZxVV7O1EjFF23U1+p3goXQdHThFj9Rwcr0UDrVX0jF+s Poow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=qibx46/pJUMX6WfUfVpGUFYouf3QhXyHdx2/HEZHQGM=; b=KLu1RshN30roUyvk/Sg7gdw0yU7wh8NdhK/yFvLUQ34KkFOih4trP3iH14tVVqRFTZ +bM2jv0ZuID7Hwjin25XHKpBRpZ0wWap1rxHsGTliAckniLSq+QSEbzFR75MNp0qUHWX Pgzgq+Wpg9XJ0fuHF1M4mcwQ4sU+N86syb7bCFkXmM7HWaEcjodSwmBmgAdZ90EgX6ki xZ4NqmjI3ASPLK8QIPmTorM60FveB4DBSA+rhAPAVn58p0L+r8mQ7giVhyQSlqD2e+i9 pKkXpE2MFf3ospYm50o2ZuqHpDgX5/2YJ0fNazgcZkdgi7gffzUQNRoVvQc+Aj6BMIz8 dPJg== X-Gm-Message-State: AOAM532P3/DE2lxgw+g2QEh8HNwm0wUTz/eD02LSex979OSHmvm+mkF1 gLKXvC8O3Z7/z+NFm1GBCDLycD4l811ljekcei4= X-Google-Smtp-Source: ABdhPJy1hUJhFjp3YljAjS84uItMnIyw2EsvmOi8VcYVxw3kr7OCJ4iSMN1xZxqvkum8DyqGqwdh748oVzZrW3+EBAg= X-Received: by 2002:a17:902:7808:: with SMTP id p8mr604656pll.122.1599600668740; Tue, 08 Sep 2020 14:31:08 -0700 (PDT) In-Reply-To: Received-SPF: pass client-ip=2607:f8b0:4864:20::434; envelope-from=praharsharmm@gmail.com; helo=mail-pf1-x434.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:254819 Archived-At: --000000000000a48e4f05aed40d33 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello, I've been an emacs user for ~3 years. While I'm now used to the defaults, I do remember in some detail, the pain it took me to get used to the keybindings in vanilla emacs . I think the sore points other than the undo/redo, were C-f not being bound to find, (though that would need remapping forward-char), C-o not being bound open file. I do think it might make sense to poll on reddit. and again to clarify _(I don't think any of these ideas would break backward compatibility, but instead only add options to increase familiarity with vanilla emacs for new users)_ @yuan I was following the threads earlier and I checked the idea of a profile was suggested https://lists.gnu.org/archive/html/emacs-devel/2020-04/msg02032.html, I think a starter wizard could go well with this as a base for keymaps at least if you're thinking about implementing it (?). The other thing I was thinking was maybe you could write directly to init.el with use-package with comments in an understandable manner following the discussion about custom here https://lists.gnu.org/archive/html/emacs-devel/2020-09/msg00306.html. I think this would teach and encourage users to tweak their configurations which I think would be a win-win. I would be willing to contribute some time to this. Thanks, Praharsh On Tue, Sep 8, 2020 at 2:31 PM Yuan Fu wrote: > > > > On Sep 8, 2020, at 2:48 PM, G=C3=B6ktu=C4=9F Kayaalp wrote: > > > > > >> I think everybody would agree on attracting more people to use > >> Emacs=E2=80=94that means more blogs and help, more contributor, etc. A= nd > >> people agree that Emacs isn=E2=80=99t as beginner-friendly as it could= be. The > >> problem is what to improve, and how. > > > > Not necessarily. Personally, I don=E2=80=99t see much benefit in tryin= g to > > appeal users that have no background in coding whatsoever, and users wh= o > > wouldn=E2=80=99t really benefit from what Emacs has to offer. > > > >> As the first step, we should collect real experiences from real > >> beginners: someone starts to use Emacs just recently (e.g., less than > >> one year). > > > > The major problem is that someone who fiddled with Emacs now and > > couldn=E2=80=99t make use of it may think differently when a couple yea= rs later > > they have some knowledge of programming (not necessarily professionally= ) > > and some experience with other tools. > > > > Anecdotally, I=E2=80=99ve picked up and quit Emacs multiple times befor= e I > > decided to stay with it. And it=E2=80=99s been more than 6 years now t= hat I=E2=80=99m > > using it for the good part of my computing. What was puzzling and weir= d > > to me back then is useful and essential to me now. > > > > What I mean is, what is good for newcomers, who are not guaranteed to > > stay, can be irrelevant, not so good, or even off-putting to actual > > users of this package of software. Emacs is a power tool, and like all > > power tools, requires two preconditions to be useful: 1) the user shoul= d > > *need* the tool, and 2) the user should be willing to put in the time t= o > > learn the tool. And a good power tool is designed with user who need > > and use them the most in mind. > > > > IDK. IMHO, we shouldn=E2=80=99t break stuff in Emacs itself, and maybe = promote > > distros for people that want a more "modern" experience instead. They > > don=E2=80=99t have the backwards compatibility baggage of Emacs so they= will do > > it better than Emacs core nevertheless. > > > > -- > > =C4=B0. G=C3=B6ktu=C4=9F Kayaalp / @cadadr / > > pgp: 024C 30DD 597D 142B 49AC 40EB 465C D949 B101 2427 > > > > I generally agree with your point. However, what I have in mind is not > changing defaults, but rather a configuration wizard, that can prompt use= r > and let him select from Emacs binding vs CUA binding, Emacs undo vs simpl= e > undo/redo, themes, etc. I=E2=80=99ve seen such wizard in Intellj Idea, Sp= acemacs, > etc. Something like (just an example): > > > ---------------------------------------------------------------------- > > Set UI themes: > > > > - [ ] default > - [ ] dark > - [ ] ... > > ---------------------------------------------------------------------- > > Keybinding notation: > > C (control) Ctrl > M (meta) Alt/Option > s (super) Windows/Command > S (shift) Shift > > Set keybinding style for copy/paste: > > [ ] default > > M-w Copy > C-y Paste > C-w Cut > > [ ] alternative > > C-c Copy > C-v Paste > C-x Cut > > > [Next] [Skip] > > ---------------------------------------------------------------------- > > [ ] Enable line numbers > > [ ] Use thin cursor > > [ ] Disable tool bar > > [ ] Disable scroll bar > > > [Next] [Skip] > > ---------------------------------------------------------------------- > > Emacs has a powerful (but possibly unintuitive) undo system, where > undo operations themselves are recorded in the undo history, and redo > is done by undoing an previous undo operation. > > Set undo style: > > [ ] default > > C-/ Undo > > [ ] linear > > C-/ Undo > C-? Redo > > [ ] alternative > > C-z Undo > C-S-z Redo > > > [Next] [Skip] > > ---------------------------------------------------------------------- > > Additional packages: > > [ ] Company > > Popup completion. > > > > [ ] Ivy > > Completion for opening files, executing commands, etc. > > > > [ ] Expand-region > > Incrementally expand selection. > > > > [ ] Which-key > > Shows possible keybindings. > > > > [Finish] You can re-run this guide by M-x beginner-guide RET > > > Yuan > > > > --000000000000a48e4f05aed40d33 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello,=C2=A0
I've been an emacs user for ~3 years.= While I'm now used to the defaults, I do remember in some detail, the = pain it took me to get used to the keybindings in vanilla emacs .

I think the sore points other than the undo/redo, were C-f = not being bound to find, (though that would need remapping=C2=A0forward-cha= r), C-o not being bound open file. I do think it might make sense to poll o= n reddit. and again to clarify _(I don't think any of these ideas would= break backward compatibility, but instead only add options to increase fam= iliarity with vanilla emacs for new users)_

@yuan = I was following the threads=C2=A0earlier and I checked the idea of a profil= e was suggested=C2=A0https://lists.gnu.org/archive/= html/emacs-devel/2020-04/msg02032.html, I think a starter wizard could = go well with this as a base for keymaps at least if you're thinking abo= ut implementing it (?). The other thing I was thinking was maybe you could = write directly to init.el with use-package with comments in an understandab= le manner following the discussion about=C2=A0custom here=C2=A0https://lists.gnu.org/archive/html/emacs-devel/2020-09/msg00306= .html. I think this would teach and encourage users to tweak their conf= igurations which I think would be a win-win.

I wou= ld be willing to contribute some time to this.

Thanks,
Praharsh






On Tue, Sep 8, 2020 at 2:31 PM Yuan Fu <= ;casouri@gmail.com> wrote:

> On Sep 8, 2020, at 2:48 PM, G=C3=B6ktu=C4=9F Kayaalp <
self@gkayaalp.com> wrote:<= br> >
>
>> I think everybody would agree on attracting more people to use
>> Emacs=E2=80=94that means more blogs and help, more contributor, et= c. And
>> people agree that Emacs isn=E2=80=99t as beginner-friendly as it c= ould be. The
>> problem is what to improve, and how.
>
> Not necessarily.=C2=A0 Personally, I don=E2=80=99t see much benefit in= trying to
> appeal users that have no background in coding whatsoever, and users w= ho
> wouldn=E2=80=99t really benefit from what Emacs has to offer.
>
>> As the first step, we should collect real experiences from real >> beginners: someone starts to use Emacs just recently (e.g., less t= han
>> one year).
>
> The major problem is that someone who fiddled with Emacs now and
> couldn=E2=80=99t make use of it may think differently when a couple ye= ars later
> they have some knowledge of programming (not necessarily professionall= y)
> and some experience with other tools.
>
> Anecdotally, I=E2=80=99ve picked up and quit Emacs multiple times befo= re I
> decided to stay with it.=C2=A0 And it=E2=80=99s been more than 6 years= now that I=E2=80=99m
> using it for the good part of my computing.=C2=A0 What was puzzling an= d weird
> to me back then is useful and essential to me now.
>
> What I mean is, what is good for newcomers, who are not guaranteed to<= br> > stay, can be irrelevant, not so good, or even off-putting to actual > users of this package of software.=C2=A0 Emacs is a power tool, and li= ke all
> power tools, requires two preconditions to be useful: 1) the user shou= ld
> *need* the tool, and 2) the user should be willing to put in the time = to
> learn the tool.=C2=A0 And a good power tool is designed with user who = need
> and use them the most in mind.
>
> IDK. IMHO, we shouldn=E2=80=99t break stuff in Emacs itself, and maybe= promote
> distros for people that want a more "modern" experience inst= ead.=C2=A0 They
> don=E2=80=99t have the backwards compatibility baggage of Emacs so the= y will do
> it better than Emacs core nevertheless.
>
> --
> =C4=B0. G=C3=B6ktu=C4=9F Kayaalp / @cadadr / <https://www.gkayaalp.= com/>
> pgp:=C2=A0 =C2=A0024C 30DD 597D 142B 49AC 40EB 465C D949 B101 2427
>

I generally agree with your point. However, what I have in mind is not chan= ging defaults, but rather a configuration wizard, that can prompt user and = let him select from Emacs binding vs CUA binding, Emacs undo vs simple undo= /redo, themes, etc. I=E2=80=99ve seen such wizard in Intellj Idea, Spacemac= s, etc. Something like (just an example):


----------------------------------------------------------------------

Set UI themes:

<some C code>

- [ ] default
- [ ] dark
- [ ] ...

----------------------------------------------------------------------

Keybinding notation:

=C2=A0 =C2=A0 C (control)=C2=A0 =C2=A0Ctrl
=C2=A0 =C2=A0 M (meta)=C2=A0 =C2=A0 =C2=A0 Alt/Option
=C2=A0 =C2=A0 s (super)=C2=A0 =C2=A0 =C2=A0Windows/Command
=C2=A0 =C2=A0 S (shift)=C2=A0 =C2=A0 =C2=A0Shift

Set keybinding style for copy/paste:

[ ] default

=C2=A0 =C2=A0 M-w=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Copy
=C2=A0 =C2=A0 C-y=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Paste
=C2=A0 =C2=A0 C-w=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Cut

[ ] alternative

=C2=A0 =C2=A0 C-c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Copy
=C2=A0 =C2=A0 C-v=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Paste
=C2=A0 =C2=A0 C-x=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Cut


[Next] [Skip]

----------------------------------------------------------------------

[ ] Enable line numbers

[ ] Use thin cursor

[ ] Disable tool bar

[ ] Disable scroll bar


[Next] [Skip]

----------------------------------------------------------------------

Emacs has a powerful (but possibly unintuitive) undo system, where
undo operations themselves are recorded in the undo history, and redo
is done by undoing an previous undo operation.

Set undo style:

[ ] default

=C2=A0 =C2=A0 C-/=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Undo

[ ] linear

=C2=A0 =C2=A0 C-/=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Undo
=C2=A0 =C2=A0 C-?=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Redo

[ ] alternative

=C2=A0 =C2=A0 C-z=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Undo
=C2=A0 =C2=A0 C-S-z=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0Redo


[Next] [Skip]

----------------------------------------------------------------------

Additional packages:

[ ] Company

=C2=A0 =C2=A0 =C2=A0 Popup completion.
=C2=A0 =C2=A0 =C2=A0 <gif>


[ ] Ivy

=C2=A0 =C2=A0 =C2=A0 Completion for opening files, executing commands, etc.=
=C2=A0 =C2=A0 =C2=A0 <gif>


[ ] Expand-region

=C2=A0 =C2=A0 =C2=A0 Incrementally expand selection.
=C2=A0 =C2=A0 =C2=A0 <gif>


[ ] Which-key

=C2=A0 =C2=A0 =C2=A0 Shows possible keybindings.
=C2=A0 =C2=A0 =C2=A0 <gif>


[Finish]=C2=A0 You can re-run this guide by M-x beginner-guide RET


Yuan



--000000000000a48e4f05aed40d33--