From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Ergus Newsgroups: gmane.emacs.devel Subject: Re: Interactive guide for new users Date: Sat, 12 Sep 2020 14:16:03 +0200 Message-ID: <20200912121603.bsp53vgfwj3y62in@Ergus> References: <875z8ortot.fsf@gkayaalp.com> <83lfhjkq0r.fsf@gnu.org> <8620B5CD-CA92-46BF-80A8-DBE7052F4CA6@gmail.com> <83d02re2uk.fsf@gnu.org> <838sdfdzxo.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="17826"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Gregory Heytings , casouri@gmail.com, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Sep 12 14:17:36 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 1kH4TH-0004XA-7q for ged-emacs-devel@m.gmane-mx.org; Sat, 12 Sep 2020 14:17:35 +0200 Original-Received: from localhost ([::1]:58448 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kH4TG-0001V6-8F for ged-emacs-devel@m.gmane-mx.org; Sat, 12 Sep 2020 08:17:34 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:33690) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kH4Rx-0008JJ-Ax for emacs-devel@gnu.org; Sat, 12 Sep 2020 08:16:13 -0400 Original-Received: from sonic312-20.consmr.mail.bf2.yahoo.com ([74.6.128.82]:35918) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kH4Ru-00059J-9J for emacs-devel@gnu.org; Sat, 12 Sep 2020 08:16:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aol.com; s=a2048; t=1599912968; bh=SQQ6nxxSnrVc0x2LUWd1uSMIWkXKwVJdp6xkWT9J/9I=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From:Subject; b=YYv9auRYteYWXgf5J8ZII/vUL8kv2WY4i/LJG1bJSRufN722MAuJpo7BQQGCrB536O6DRi1UromsBd/s1WkpQqfm06pqkG6HcZ6o0x6iOKynYcZc2ElvyhgavnZ/4oHH7u2Biz9Ot4lSjRDnq2dCiqMv7sl/jJpf+rA8redtOzqlrhoYmvBttBy0MadczJWeRHHS2Cpui2NJYCNR+U3VclC2hr8ZLC/szslaiPI7ZmYF76WkiZFsZDgyefVN9uFQS6fKXtN2rzwhRgKxNh9Xk7nO3VqjocJ5VGaFf7/G3yJtcmXBQBXB0lmbIYmaQHeW+YECnKItISerKdDm1xwgxw== X-YMail-OSG: LDeinAcVM1kV4KpILTTr4vAcsH6BCo8mNP68VxyQjZ_P94fAyFVZwm_LKKN1Hsv K7ilpppyiUykn4mgfZaJvVgr0_zpuli2rmGgEgAdmPWyXn3ca0XTOmBiAVE2ltTE9w_DToVhfdXF iWdERt_bGqW5fq5fAV.JP7SQ1wetpJ8Rp_4IRG7CK1AoPvDksYMaLzgpD4zfswaZKO4.uWgfIUvv Y3T5cWjudqgnyoTtgok38S9uw2.d6JsaZu7Y9LqlZ9tkSja6We_rbHQTgc3NrZiwk6gAFNq.z_iH .ZTiyLLvheYVB9FqOGBj8XUR.dls61ekQNkIxaZZphkRp74agKZ8xQsX28aYLGXOcUCKNCuRBIOa OIckwscWf4izKuhY6nZeCgRwDn7VIIdJQ7uS.g682z_3lshv1GYY9SajyMCTiNlQSnlVbsSgmVlk K8gFAob5XpmVCK4joNqTGn3DOH059kFdoaVzswH_neNkVUEz2991jLvO_yqm5vkfdtMg6Mil_dnP NsoJPL1560amV1ehNxXiZBpvSwddalM8xCm5EJiTTepFYTLM5Aktg37uw0CdUgdvZDOvbMlkRSLz .lWCA6ILutYHJTEeUG.Dj4FxvD1M1I_Io8rL6QEAzQ256mwAAokgSlF349v7CpBaVpcCnLNzmMoI lfEo58kMbmqzOzzZdfDFnRuxQNhSUUqbKA_eHyujMXNb211RFdQlX5mIvo8BMXBPiBvgubBYJ5uY w5_40WibV8wIBl5wyzbbUbHIO8varbJSsm3U8YlG_nNpFQCD_OSXFV0NDI.dLyyugFU9gXFgVSyA TNl5Wj4v9MCCSdq75ud1tz7MNSH5e_2.kTSoP1T81Z Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic312.consmr.mail.bf2.yahoo.com with HTTP; Sat, 12 Sep 2020 12:16:08 +0000 Original-Received: by smtp417.mail.ir2.yahoo.com (VZM Hermes SMTP Server) with ESMTPA ID 7a8e2938efd6f8abc571ec90d16924c3; Sat, 12 Sep 2020 12:16:07 +0000 (UTC) Content-Disposition: inline In-Reply-To: <838sdfdzxo.fsf@gnu.org> X-Mailer: WebService/1.1.16583 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.aol Apache-HttpAsyncClient/4.1.4 (Java/11.0.7) Received-SPF: pass client-ip=74.6.128.82; envelope-from=spacibba@aol.com; helo=sonic312-20.consmr.mail.bf2.yahoo.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/09/12 07:30:29 X-ACL-Warn: Detected OS = Linux 3.11 and newer [fuzzy] X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.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, FREEMAIL_REPLY=1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no 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:255320 Archived-At: On Sat, Sep 12, 2020 at 01:58:27PM +0300, Eli Zaretskii wrote: >> Date: Sat, 12 Sep 2020 10:35:06 +0000 >> From: Gregory Heytings >> cc: casouri@gmail.com, emacs-devel@gnu.org >> >> >> 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"? > >The mode line, the scroll bars, the menu and the tool bar. > >> >> [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. > >Why? The Options menu item I've mentioned pops up the system's font >selection dialog, which is way nicer than selecting a font from an >Emacs buffer. To say nothing of being less work. What am I missing? > >> >> 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. > >My point is that we should not put there unimportant options, let >alone those which we recommend not to change from the defaults. > We could add and extra optional SCREEN with advanced options. The user can click next if done with the options in this page or advanced and go for a more detailed and longer list of options. Like a "SCREEN 2.1" to add many "unimportant" things with more freedom. For example we can add here to enable show-trailing-whitespace, fill-column-indicator, auto-revert-mode, visual-line-mode, ispell dictionaries, desktop-save-mode. All those are options not desirable in the SCREEN2, but could make sense for users with some editing experience but not emacs experience. WDYT? >> >> 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. > >There are thousands of options in Emacs that users might want to >enable. This initial guide should only show those which are very >important, recommended, and usually expected. Options that don't >satisfy these criteria should IMO not be in the list, because the list >must not be too long, or you will lose many newbies who don't have >enough patience. > >> >> 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. > >A complete file name takes too much of the screen space on the mode >line, IMO. You'd need to make the font used by the mode-line face to >be much smaller, and even then it will steal too much space. > >> >> 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. > >Then perhaps we need to develop a new completion mechanism. Which >IDEs show completion like icomplete-mode? > Sublime and atom have a menu pretty similar to ours. A bit more graphical oriented, but in the same "spirit". >> I use icomplete-mode myself, and don't understand what you mean by >> "complex and potentially confusing UI". > >Type "C-x C-f" and try to look at the result with the newbies' eyes. >First question I have is "how to go on?" arrow doesn't work. >If the font shows the bold letters distinct enough, I'd wonder what do >the bold letters mean. The order in which the files are shown doesn't >necessarily make sense, nor does the fact that it mixes directories >with files. Etc. etc. -- the stuff I'd wonder about goes on and on. >This is not the completion I find, e.g., in a Web browser, so prior >experience will not help. > There are two options here: 1) Add more bindings to icomplete (arrows, C-n and so on) 2) Go for fido-mode which is more "friendly" like ido. BTW Eli, I am working improving icomplete and the default *Completions*. You can check the feature branches. If you have special suggestions for them they are very welcome. With my changes in *Completions* the experience is actually similar to zsh completion... And with icomplete I enabled the vertical layout (as helm or ivy do) and added some coherent bindings. What do you have in mind? >> >> 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. > >There are several apropos commands, and they are all very important >for discoverability. >