From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Tim Cross Newsgroups: gmane.emacs.devel Subject: Re: Convert README.org to plain text README while installing package Date: Tue, 07 Jun 2022 16:14:52 +1000 Message-ID: <877d5t0yrn.fsf@gmail.com> References: <87leuca7v7.fsf@disroot.org> <87czfopmsd.fsf@gnu.org> <87h74ztshe.fsf@gmx.de> <871qw31ois.fsf@yahoo.com> <8735gj4ceo.fsf@gnu.org> <87ee038ipt.fsf@gmx.de> <87o7z61v59.fsf@gmail.com> <87bkv527p5.fsf@gmail.com> <835yld93w7.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="26760"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: mu4e 1.7.26; emacs 28.1.50 Cc: acm@muc.de, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Jun 07 08:37:11 2022 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 1nySpz-0006f1-Co for ged-emacs-devel@m.gmane-mx.org; Tue, 07 Jun 2022 08:37:11 +0200 Original-Received: from localhost ([::1]:44016 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nySpx-0002Pj-Pg for ged-emacs-devel@m.gmane-mx.org; Tue, 07 Jun 2022 02:37:09 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:40762) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nySle-0001EI-05 for emacs-devel@gnu.org; Tue, 07 Jun 2022 02:32:43 -0400 Original-Received: from mail-pg1-x52d.google.com ([2607:f8b0:4864:20::52d]:37755) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nySlb-0001gm-Qw; Tue, 07 Jun 2022 02:32:41 -0400 Original-Received: by mail-pg1-x52d.google.com with SMTP id h192so8159443pgc.4; Mon, 06 Jun 2022 23:32:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=references:user-agent:from:to:cc:subject:date:in-reply-to :message-id:mime-version; bh=nN15V8ys0KqzRjCqPD2E/VgtYvIgBhqxvcA143WolHU=; b=nG15PNO9fBLO6PQxLWRG4G/+EojNYB+oo/OImeEs6/OQuB+90NCC9fGs17hvA5D1aS 7ohnLyb/lhBVc6q65+HsGpHZ1Po0aJmbj/EjRObDwbZJMy3rdB5AZ4vwfL1GhBfooDT8 i53cbXmysZHh1XaC9tktJKZsZVIf1AYatnx0G+WI9skv+SG4Tw5gEHiF6vZGUozRBH1N 9cOO4DnkvBITN7TgJ0675+8BakUVPSbFm+iYkZNJNN3X/h359zEs9AN2iNkjU9/el+MA /km+qqpGzcrrbxo8sMIVk9RULmT9IK9cE8ZYOIdPj1YJShrTqwFse1R3LRWZhukhEHoz 77nw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:references:user-agent:from:to:cc:subject:date :in-reply-to:message-id:mime-version; bh=nN15V8ys0KqzRjCqPD2E/VgtYvIgBhqxvcA143WolHU=; b=S38Ndzu0CkTBwl7UGnv03bmZ04ulmJvvHGz9FsxD06QClGsy5MNcEPcjDKyRCIyi9a oLDobGXJaYJ0WwuTbodvxU2oGNsyGrpSBTnq43Zor5L/Sr/xql9FjvoSNTkbHLFjhTZp QYvep5PnR0BhRbIzgQAwSBzWXz4zZwEV+v135pgJOwzTbMM+7sr1H+LZwiHaPQ9gIX6r 5vfuiY1YRtrOAg8NFTZWd4WDo55UxVcky6yWc4sxnfMaCEBkToLU/I8BJOk+ODS9W1yj Nu4KcwQHYuA24lfI07omNs/2i3NzDwP6IMJroWRjH9kkqszgqnfcds4hV57T93Em3fc/ 9umg== X-Gm-Message-State: AOAM530SvGBfFSzi3jO8Up34/LDgWDKWX3bkF8usnCxALvSfkAswbdkD N5VZGmo9jDgSDRb1gt0rH8+qmZ2vINk= X-Google-Smtp-Source: ABdhPJy3lVubO4IDTXo0d3BdbebBy9E5g3G3ZfeZJ/NfACy02iWAF+EzP5JEeWnQhH+SR8ExArHYCw== X-Received: by 2002:a17:902:ec91:b0:167:6f74:ba73 with SMTP id x17-20020a170902ec9100b001676f74ba73mr12860774plg.141.1654583546968; Mon, 06 Jun 2022 23:32:26 -0700 (PDT) Original-Received: from dingbat (2001-44b8-31f2-bb00-ff77-5ac0-4a8a-87f3.static.ipv6.internode.on.net. [2001:44b8:31f2:bb00:ff77:5ac0:4a8a:87f3]) by smtp.gmail.com with ESMTPSA id d17-20020a17090abf9100b001df68146a20sm13610659pjs.56.2022.06.06.23.32.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Jun 2022 23:32:26 -0700 (PDT) In-reply-to: <835yld93w7.fsf@gnu.org> Received-SPF: pass client-ip=2607:f8b0:4864:20::52d; envelope-from=theophilusx@gmail.com; helo=mail-pg1-x52d.google.com 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, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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:290826 Archived-At: Eli Zaretskii writes: >> From: Tim Cross >> Cc: emacs-devel@gnu.org >> Date: Mon, 06 Jun 2022 23:57:55 +1000 >> >> > There are 784 key bindings in org mode. How can you say that this isn't >> > complex and difficult to learn? >> > >> Very simply because the vast majority of those key bindings only come >> into play when yhou use advanced features of org mode, such as the >> agenda or table editing or noweb mode. If your just using basic org mode >> features, very very few of those key bindings even come into play. Just >> go throgh that list and remove any bindings relating to agenda mode, >> table editing mode, source block modes, clock table mode, list editing >> mode, etc and you end up with very few key bindings (all of which are >> udner the C-c prefix, unlike your previous claim). > > How about if you do this exercise and walk us through the results? > Visit an Org file, type "C-h b", then show us the list, and tell which > bindings you think are "basic" and which are "advanced", and why you > think so. > > I can tell you what I see with my very simple 1570-line Org file, > which just has some todo items organized in 4-level hierarchy: > > . ~100 keys that look "general Org" to me > . ~30 keys that Org remaps to its s own commands, like 'yank' and > 'backward-sentence' > . ~40 keys bound to org-babel-SOMETHING -- no idea why these are > bound by default, but they are there > . ~60 more keys that I'm not sure whether they are "basic" or not, > but they are all bound by default, just because I visited an Org > file > > So "just" 230 key bindings. And this is without any minor/add-on Org > mode/feature enabled, at least according to "C-h m". > > Do you see something different? Are you still saying that it's not a > lot, or that it's "based on ignorance and paranoia"? If so, please > point out where I'm ignorant and/or paranoiac, because I'd really like > to know. I think Alan's response has pretty much confirmed what I was saying. Alan has made it fairly clear that his real underlying concern is about a stealthy strategy to get org mode more intrinsically tied into Emacs and in the end, making it so critical to normal operation that everyone will be forced to learn org mode regardless. I don't necessarily agree with such an argument, but think having a debate around that would be more up-front and in some ways honest compared to what appear to be somewhat contrived alternative arguments about excessive key bindings and added complexity. My characterisation of this all being fear and paranoia may have been overstating things, but then again I'm not sure. There certainly does seem to be considerable fear involved. I don't know about paranoia, but I have not seen any evil plan to have org mode assimilate Emacs as if it was the Borg and I've seen no discussions on the org list about ways to get org more ingrained in Emacs or make Emacs more dependent on org. With respect to ignorance, Alan made it quite clear he has not spent the time or effort to learn org mode, so he is ignorant about its operation and lacks any real understanding of its operation. He has made assertions about the number of key bindings which are wildly over inflated and about required levels of complexity which simply would not be necessary with the org mode rendering of a read only buffer. In short, he has made a lot of assumptions about both the key bindings and complexity based on only a fairly cursory scan of the manual and very limited experience. All that appears to have occurred here is that someone noted that packages often had a readme.org file and wondered if this should be translated into just a plain readme file. Someone else suggested we could have package descriptions render the readme.org file using org and not require export into plain readme file and mentioned some possible advantages this could have wrt navigation, rendering of tables, links and images or inclusion of source code snippets, examples etc. >From this point, some somewhat extreme claims and arguments have been thrown in. One was Alan's claim that org would introduce 785 new key bindings, many of which not bounmd to C-c and which would presumably either pollute the key space or conflict with existing bindings. All I have done is point out this claim was inaccurate and overstated due to an overly simplistic analysis of what is in the key index of the org manual. it should be noted that if we were to add 'native' rendering of readme.org files, this would likely be done with an org minor mode rather than a full blown org mode as very little of the overall org functionality would be required in this situation. All that would be required is org rendering support and org support for navigation (folding/unfolding, following links and possibly list/table navigation). All the advanced org functionality relating to babel, noweb, todo and time management, agendas, etc have no relevance in this scenario. LIkewise, if this functionality was provided via a minor mode, it would also be possible for people to disable that mode and be left with just the readme.org file, which is just plain text and quite readable. Alan's claim was 785 additional key bindings, many of which not bound to C-c. Running Emacs wiht -q and opeing up an org file, I find the following - 236 org related key bindings - far less than 785 Of these, a number are - actually remapping of existing bindings, so not new ones. This leaves 208. I said that for a read only buffer, many of the org key bindings are not relevant as they relate to features which are not pertinent to a read only org buffer. Any bindings relating to babel, todo management, time management, agendas etc have no relevance when reading a readme.org file. Really, the only key bindings of any relevance are navigation related bindings (including opening/closing folds, following links, etc). Removing all unnecessary org bindings leave us with just 77 new bindings. Of these remaining bindings, quite a few could also be removed, but I've left them in as I only wanted to remove those which would clearly be of no benefit in a read only buffer rendering of a readme.org file. In an org minor mode setup for rendering of readme.org (and possibly other read-only rendering of org files), I estimate at least another 30 bindings could be removed because they have no real benefit or are of only marginal benefit. Creating an org minor mode for this purpose which only introduced 20 or so new bindings would easily be possible. The key point is that claims of 785 new bindings arfe incorrect and misleading. Even being very conservative, we are really talking about 10% of the number being incorrectly claimed. if we introduced a minor mode for this, we are talking likely less than 20 or so. Arguments regarding this being a 'slippery slope' or 'edge of the wedge' in an org takeover are a completely different argument and there may well be some concerns which may need to be considered. However, if that is the real concern, then argue based on that rather than exaggerated claims about excessive key bindings, key binding polution/conflicts and excessive complexity. In a similar manner, lets not jump to conclusions or throw in wild speculation about things which have not been proposed. For example, nobody has suggested everyone would be required to provide readme.org files, nobody has suggested you could not just have a readme or a readme.txt file, nobody has suggested making anyone provide any specific format. All that has been rasied is whether, when a package has a readme.org file, should it be translated into a 'plain text' (ASCII/UTF-8) format or whether it might be useful to have the file formatted and nicely displayed using existing org-mode formatting capabilities. It could even be that the ability to have 'native' rendering of readme.org files could be n optional feature which those who want it can enable. All of this now seems to be irrelevant as Stefan has indicated he will just automatically convert the readme.org to a plain readme. I hope that the original readme.org file will still be included for those who do prefer to use org to render and navigate a well formatted readme file which includes working and concise links, source code syntax highlighting, well formatted examples and fast navigation.