From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2.migadu.com ([2001:41d0:303:e16b::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms13.migadu.com with LMTPS id mBs1OglVxWbgMgAAe85BDQ:P1 (envelope-from ) for ; Wed, 21 Aug 2024 02:46:34 +0000 Received: from aspmx1.migadu.com ([2001:41d0:303:e16b::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2.migadu.com with LMTPS id mBs1OglVxWbgMgAAe85BDQ (envelope-from ) for ; Wed, 21 Aug 2024 04:46:34 +0200 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=live.com header.s=selector1 header.b=ZKfu5YFw; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=live.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1724208393; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=/TJAEZbwtYiZVcKT1BdQPdPKC9prvOmCBRxmCf5PZls=; b=BXlerfdsCl8Yk7SapVVD2mlwPnsFoICEs3CLJ9SJtVWdgSegbtDxnzFx5Lmc0DVGlfYmLw yvDKvmJpOmyyvB/10b5Nui4Zf51+y7rVMqvsItfap1XlKEyqM5Tp5im4dRHLgymy2Y+6FC m3wVR8Zc1rjJAAX2cqXxjMoCZ92b49XrvGC+Kue2ea7dqj6pgaFpYAS1emGJCx5jAzLzRF 6U9AIDUbWHPAOQ1pctqGW9vYmeyZaxDlI5vZQcVLG+Q58HGL/ELlcJ1NxM5H1atNS/wxoV ykaIuNE1ZasgLpDKmKDb4XgWTbqggPXg7IvXcTWYl5hclzUNo4Ju+wv2CylJVg== ARC-Authentication-Results: i=2; aspmx1.migadu.com; dkim=pass header.d=live.com header.s=selector1 header.b=ZKfu5YFw; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=live.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=2; s=key1; d=yhetil.org; t=1724208393; a=rsa-sha256; cv=pass; b=sMGacTTqfKQHFZko+PJ71qzem9u5EacgTqO6Z4WkaZ+474JA2/qHtYdmhLI07nhehdn9HL 0oXSbfNQnaYCFIdMpEzOSMhLZgqEpetp3pS6s3DE3yPJ46uzJkHBghSV6PjPjD/2jE5AAb aa/TqtemHoSeZ+Y/eZLQyccRPCFCrk5Syo0fN9aFucDL9hBBEa2OgfJHyO7QOATtsfjWL0 jhqXAS/l7HEjOKE0BSfP8ryHLes4BpjU3JnMb8SC8f3iFvL+BLcDC3P7/apR804SJQsI0J iEfPOscUSaRYkkk0Ud3rat587AiLD9x9R2279mu3n7JB+d9CBKL+dL8+7VNkXA== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 6B47915150 for ; Wed, 21 Aug 2024 04:46:33 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sgbLk-0003YP-CG; Tue, 20 Aug 2024 22:45:28 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sgbLi-0003Xw-06; Tue, 20 Aug 2024 22:45:26 -0400 Received: from mail-db8eur05acsn20806.outbound.protection.outlook.com ([2a01:111:f400:7e1a::806] helo=EUR05-DB8-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sgbLe-0000Xv-TD; Tue, 20 Aug 2024 22:45:25 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=GEAIX3/9bpayZIwWAX6paEurBLqbmmc106yWowkOCcyk+T4sJAPYy/1JxZqoFNdVlVjbH+af9eSI3MSDUAyhtK8dJ1iEnuOKIwEyg16Oi/5oB6pTh+dne94xaXYdAakbEtwt1gD3P5NBdVQqjqDv8lTUg7l6wuxgCi0WUrwvfNeo2A25GFSNxHtXd34S4c5gtYaIxRe/65q2zWa0R9WIuHTSvJZX2CdQftm1SM8VjXMnhm3jJGTeY5EIGeCEDCAE5zhH8wMEFxYICfOcxv3jcW/ujYdm5dHJhgTUzjb4AJim/q5mRsrngpTJW8PHMTEVuI+4jLmn0x+5oHeH31O9Dg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=/TJAEZbwtYiZVcKT1BdQPdPKC9prvOmCBRxmCf5PZls=; b=djeD9xnOmgKebX+08Ygbie+RGna3Y3XwcFZqhpS30nOup4MSigYVz2VxaI1Tf7ldxQt4o5rG37l5UmsWfngCdxlPDohW6g7K4I05fISq5qoq3voobTf0UbmdZe+0uBkuJY9JSiDH9rpVPadYqewUOSe0tI/Th97SXrkjv4Ai1XFHFGK7BtBkuMzDuCmSF9qnHgMKE6W94c+lMLMqE9I+1DIq7Hd93tJ09n0UTAQ1q9SfviCCsetp18MCQJ2Fj5+CbErohViMmy/rXo4DQ3+u9ojugbslXSUyEVPua3JjGaY6q/rQ42BMcRbuHMFHOlC/BVJJ+yCJOXLjpqRcNX5REg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=live.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/TJAEZbwtYiZVcKT1BdQPdPKC9prvOmCBRxmCf5PZls=; b=ZKfu5YFw7LmPMbjytD2PD1jeihNHQF4ke4mEclCoVCZKU/V4k0f4UNkyMXvAjnE2jBXWaaI6bSKIadDmqA0RpOkzGtdtxCWVgn8OlfRi1Tk3Ywb4sZNE+wY/FOybq8sQvnN5KIXK9qtcCdnWEqGIdoMaplwicvOU29zQ0zJ25KbGUG79lPjqpMVOM0OAlBce2459EXkQkLm5y2vj4XTKa5MZV4OZrs/h9vlwSqrq6s3XRy1f4LyudZbQVVlOR5pOc1aE0PxfgI2Mzw6WzMmIk1h6Xke6gDg9uk5yOqmlSdyLwVzIK+vLV/vC/+Ir5TRYvHosKEHnf8yzJrmjEUK4tA== Received: from DU2PR02MB10109.eurprd02.prod.outlook.com (2603:10a6:10:497::14) by DBAPR02MB6230.eurprd02.prod.outlook.com (2603:10a6:10:19d::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7875.21; Wed, 21 Aug 2024 02:45:14 +0000 Received: from DU2PR02MB10109.eurprd02.prod.outlook.com ([fe80::f3c9:d4cb:290:d487]) by DU2PR02MB10109.eurprd02.prod.outlook.com ([fe80::f3c9:d4cb:290:d487%4]) with mapi id 15.20.7875.019; Wed, 21 Aug 2024 02:45:14 +0000 From: arthur miller To: Ihor Radchenko CC: "emacs-devel@gnu.org" , "emacs-orgmode@gnu.org" Subject: Sv: Modularizing Org as GSoC project (was: New Emacs features via Google Summer of Code (or other similar stipend schemes) (was: as for Calc and the math library)) Thread-Topic: Modularizing Org as GSoC project (was: New Emacs features via Google Summer of Code (or other similar stipend schemes) (was: as for Calc and the math library)) Thread-Index: AQHa8yfrq8RhRSG2qEaX6wx5X1PdNrIxAcTQ Date: Wed, 21 Aug 2024 02:45:14 +0000 Message-ID: References: <87v7zvay9a.fsf@localhost> In-Reply-To: <87v7zvay9a.fsf@localhost> Accept-Language: sv-SE, en-US Content-Language: sv-SE X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [yrLSQQogUOhEtMlYgxOug/i8So8D6sG8] x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DU2PR02MB10109:EE_|DBAPR02MB6230:EE_ x-ms-office365-filtering-correlation-id: f960faca-5e81-4381-6546-08dcc18b48ad x-microsoft-antispam: BCL:0; ARA:14566002|15030799003|9400799024|19110799003|15080799003|12050799009|8060799006|461199028|1602099012|4302099013|3412199025|440099028|102099032; x-microsoft-antispam-message-info: lN0nPMpIDCwkwWO7anLD3UrPyVNM3UDYX0t+uN2EFCnzoTvS5tkodBE6YoJ2E9mbOFsBRXtBBC3KkGCNZunyW8ApHuri2aCRhL0dHwb3ADit8Pwe26BEBKYTP71DAjKXgnMqOeqDd9o1SLyOnDKFyj7TGtrWUETo5PTuTX2hRyznEfJACPMPLfz/m+jtiZmP4xn2PT2r7jeB1KT9N15smS0Ep1FgJ8KzZsI1eTsQ5qJiTD6b26mT9crb/1rpqBVclTGZ5iflyFwarC0Ozz6+wvHgWBeEAhvnBc2q9qKnAsYnWzR8iOwvFPJe8d6acXzM1bayqbVz2DqOO6ro8chlgERoY7n7ztl1/94IicxgY+cqL0c/NU3lKV6yyjQPu4TxokkyKGOa66XM2iHYbdKMkfjyjAtFlnqu1mHbti+IKXqXbUr3GiAgad5nWiC4tNE8ZSFqa7ogi822dzI3WHBcNXkUOpLxxluAPE2UTXK0S1pLJVjzmzKd3WDk33aF0Yf+0WiLPxLt+CDZkT5PWhm+9+GPbcfiRp4FIR6FpsjyBN40wbJsAHR50HtCKa0bn1S/XabyXGNKfnmr1FZlL67dV2H886mfRMZLjZWz/QkZSGzjgaup1VVPd36AzZAf5hIxAtopqxnpDzIGSFhKXf9MwxvlF9V6N9M40L4/d/msqj+8NTMg1TVwZNUInjtfQ9xMMV97+HWhCQ7bUt4qMiSvvmknrPfH2f5esOTBzGFz5RzmA/FQRZWRZQUIB8xWctsNIjt5C4xlNimsIpH9xkMdda/OX7sg8ZVBPHItXhAixsi18l8LwY6YkdPcZx+Olf/4PU0nGUTro0/br1iusU5DStEksv70auofxmZW8TqKnp2lxOmInTMgvGaKUPSiMYZK x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?ybPHd87q5FMsqRd6vRiFBL17gX0mMUkrGFJiNPhYrXoNPBmZu0ffdv6bCx?= =?iso-8859-1?Q?Ng3FFjZ/4wYxItmAur5TBc/He2EgIO2BrjI7/S10oSskuZHB25kj6DV0g5?= =?iso-8859-1?Q?3OFwBk9GT8nkHlORQEYQ6M/DmFjYhXrQ/aHL89AgeLDiJ5G+DaHweH1ic9?= =?iso-8859-1?Q?HT4upkGhnOAKQCXKxIFmvbOe1u4SM9mn2iMMGQ/1nUGsHjSgkRTIHJEAky?= =?iso-8859-1?Q?xtSG+TMcJZ1/FMlFh/lHg8tY3K4qVtKYWZv4Nu4O8HbP7xBKssJ88i01bh?= =?iso-8859-1?Q?0WuBJTXeMTF+dxexDB3i/A30JAN0WpplQBe//QMTvfD4tFmAhYpH7ENiMu?= =?iso-8859-1?Q?0BOAe7f/In9BKL0UliIH2fVoangK/fwieEr9qnonXbaGOU3VesRD9R0OF3?= =?iso-8859-1?Q?lyleqkDU2dyD4lXI7Ga1otxeinev6DK2x1b6lfGt2DvznStwDQq3VfFBjH?= =?iso-8859-1?Q?Cxn843egMYr00P+lZunttujA0DS7KjYpDMFaL76xJs6Sf7C0vIQ4UJ9iFI?= =?iso-8859-1?Q?dYWB67nKBhvLY4nAWZPAXh7fnzNZ1OzOTAQddWDJHuXE4HVydGN9YzAEU4?= =?iso-8859-1?Q?znRzN70ojOTl06ph28Sem6N+mjNLnaFBepVbRYc9Qq6zzx8c3GDjdeXhC/?= =?iso-8859-1?Q?2UG8mARaLyDMqObO5zN+/2ICQHUt5yxERCeqt/kqM8Z/dwjuVXE1OzunTr?= =?iso-8859-1?Q?PHOF0CvoJDAB8pqmY+QwvkBrg2nWe98NR+CgVyCCQzLs6OKX7Hf+PdvuuY?= =?iso-8859-1?Q?9g+6/H2Y9nRaWOzuFprpB1OBEdGZtPe9LQxw8BtATwxWU3gxBvBs69uLp8?= =?iso-8859-1?Q?TUm1wzfrkTl/CieBGoM9OUUis7V0l54yJi4FyA4Ihtahjkf0G7hzIVVeMV?= =?iso-8859-1?Q?DqJZtupHXeHWy45zkvSeLANS/aECJZJhPsKUIVOVDkYmCHeDKEl6xn2C4g?= =?iso-8859-1?Q?S9ZBJxnWgPNgj9Z/ZhGMQrFJNv12IE7mQcsjuqvJUjo6CWxm4X277Tuvpy?= =?iso-8859-1?Q?H+i6aR8mxTKJ9HXseyWYfDMBX7+5UzRRuWdUpeqbhGpEdXWEWPmrzLaFCs?= =?iso-8859-1?Q?Ba3ZnFFYb/KyyUidJNkgM8BxndcFEMkpc6C0kZGLGb0p7a2ZXDUkvP8ZRh?= =?iso-8859-1?Q?4M8pn6bSCqRnNsQwbWJ8iiw87ww+XOQR3D4V/4bOl39o3IeGJhhVDItfMO?= =?iso-8859-1?Q?Xu0XQ0KyV0Ttn5IZi5HtWlj+jRb3bxww+4xb7LfZr/sAdIDgZwN9oobomq?= =?iso-8859-1?Q?yh39qpfC7uwS3K7vtbkdVhF8b9sg5tpitV1qABB4w=3D?= Content-Type: multipart/alternative; boundary="_000_DU2PR02MB101099F300A125A197929B4EF968E2DU2PR02MB10109eu_" MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-7828-19-msonline-outlook-12d23.templateTenant X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DU2PR02MB10109.eurprd02.prod.outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: f960faca-5e81-4381-6546-08dcc18b48ad X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Aug 2024 02:45:14.3390 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR02MB6230 Received-SPF: pass client-ip=2a01:111:f400:7e1a::806; envelope-from=arthur.miller@live.com; helo=EUR05-DB8-obe.outbound.protection.outlook.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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-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-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: emacs-orgmode-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Queue-Id: 6B47915150 X-Migadu-Scanner: mx13.migadu.com X-Migadu-Spam-Score: -9.40 X-Spam-Score: -9.40 X-TUID: ueYFTf8bww3T --_000_DU2PR02MB101099F300A125A197929B4EF968E2DU2PR02MB10109eu_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable >>> ... >>>Are there any specific todo items there that you view as more suitable >>>for people with limited experience in Emacs codebase? >> >> I am not sure if this is something, I hope you don't mind me asking, but >> could a >> work to modularize Org, be an appropriate subject? > >Yes, it can be. > >RMS previously asked us to do exactly this: >https://orgmode.org/list/E1kIPh1-0001Lu-Rg@fencepost.gnu.org > >Also, see previous discussion on re-integrating org-capture into remember.= el: >https://yhetil.org/emacs-devel/87bka7c2e0.fsf@localhost >Similar for org-protocol.el. > >> For example turn displaying pretty text (bold, italics etc), pretty link= s, >> tables, dates, and perhaps some other stuff into, from Org-mode, indepen= dent, >> minor modes that could be used in other parts of Emacs and more independ= ently >> of >> Org mode. I think both Org-mode and Hyperbole, and perhaps some other >> libraries >> (button.el, help-mode, info), could use some minor mode that works with >> links. For us users, it would mean less cruft loaded into Emacs, if thos= e big >> players could share some code. >> >> I haven't done much research on this, just something I had in my head fo= r a >> long >> time. > >I would like to hear in more details what you have in mind. As is, your >proposal appears to be for multiple projects. Or am I mistaken? > >For links in particular, Hyperbole already implements the described >minor mode, or what am I missing? > >For tables, dates, and other markup, it is not clear what you want to >achieve. To be honest I am not sure myself :) > Do you want Org markup to be displayed in non-Org buffers? Well, part of it. Or more to make some parts of org-markup configurable, an= d usable as minor modes so they can be easier used outside of org-mode. For example about links, there could be a mode "text-link-mode" or "pretty-links-mode" or something, that understands what a link description = is, and what a link itself is. The minor mode would have some mean to parse description and link parts, and when on it would do what org-toggle-link-di= splay does. For example org uses angle brackets for link desc and url, whereas markdown uses angle brackets and parenthesis. Thus link-mode could/should b= e enough customizable so that modes could be clients of this minor mode, as w= ell as for user to be able to setup a regex or set a function that recognizes s= ome custom syntax for descriptions and links. Also a minor mode can come with a= key map and some actions, for example to follow link, to insert a link etc. I t= hink of org-links, but a bit more generalized and usable without org-mode itself. Org-mode could use those under the hood. Similarly for italics, bolds, underlines, etc. Those could be slightly generalized and taken out into minor mode. Clients could setup their own start/end markers and use them to enrich the text on the display instead of perhaps defining own faces and regexes. I don't know how useful and desirab= le it might be in other modes, perhaps in comments in programming languages, or similar. Just a thought. org-timestamp interactiveity could be usable elsewhere than just in org mode. For example I can insert org-timestamp in any mode, but it does work= to use C-left/right to change the date. It could be refactored into small tiny minor mode timestamp-mode or something, that comes with tis mode map and en= able this interactive stuff. ascii tables or org tables started as its own mode but got consumed by org.= They are still usable outside of org mode. I can create table with org-table-cre= ate and I can align table with org-table-align, but by default I don't have thi= s functionality bound in some keymap if I am not in org-mode. Perhaps I am ju= st not familiar with it. But this could be a minor mode also. I guess org-capture is a candidate, and probably some others. By refactoring out those things, org-mode loose nothing, since everything i= s still available in Emacs, and everything could be still used in org-mode un= der the hoos, but it would be easier to use those things in other major modes. = It might also be easier to work with org-mode if it is less monolithic. I am sorry if it is too scatchy, and uninformed, it is just some thoughts I= had, but I was never really motivated to do those things myself. ________________________________ Fr=E5n: Ihor Radchenko Skickat: den 20 augusti 2024 19:40 Till: arthur miller Kopia: emacs-devel@gnu.org ; emacs-orgmode@gnu.org =C4mne: Modularizing Org as GSoC project (was: New Emacs features via Googl= e Summer of Code (or other similar stipend schemes) (was: as for Calc and t= he math library)) arthur miller writes: >> ... >>Are there any specific todo items there that you view as more suitable >>for people with limited experience in Emacs codebase? > > I am not sure if this is something, I hope you don't mind me asking, but = could a > work to modularize Org, be an appropriate subject? Yes, it can be. RMS previously asked us to do exactly this: https://orgmode.org/list/E1kIPh1-0001Lu-Rg@fencepost.gnu.org Also, see previous discussion on re-integrating org-capture into remember.e= l: https://yhetil.org/emacs-devel/87bka7c2e0.fsf@localhost Similar for org-protocol.el. > For example turn displaying pretty text (bold, italics etc), pretty links= , > tables, dates, and perhaps some other stuff into, from Org-mode, independ= ent, > minor modes that could be used in other parts of Emacs and more independe= ntly of > Org mode. I think both Org-mode and Hyperbole, and perhaps some other lib= raries > (button.el, help-mode, info), could use some minor mode that works with > links. For us users, it would mean less cruft loaded into Emacs, if those= big > players could share some code. > > I haven't done much research on this, just something I had in my head for= a long > time. I would like to hear in more details what you have in mind. As is, your proposal appears to be for multiple projects. Or am I mistaken? For links in particular, Hyperbole already implements the described minor mode, or what am I missing? For tables, dates, and other markup, it is not clear what you want to achieve. Do you want Org markup to be displayed in non-Org buffers? -- Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at . Support Org development at , or support my work at --_000_DU2PR02MB101099F300A125A197929B4EF968E2DU2PR02MB10109eu_ Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
>>> ...
>>>Are there any specific todo items there that you view as more s= uitable
>>>for people with limited experience in Emacs codebase?
>>
>> I am not sure if this is something, I hope you don't mind me askin= g, but
>> could a
>> work to modularize Org, be an appropriate subject?
>
>Yes, it can be.
>
>RMS previously asked us to do exactly this:
>https://orgmode.org/list/E1kIPh1-0001Lu-Rg@fencepost.gnu.org
>
>Also, see previous discussion on re-integrating org-capture into rememb= er.el:
>https://yhetil.org/emacs-devel/87bka7c2e0.fsf@localhost
>Similar for org-protocol.el.
>
>> For example turn displaying pretty text (bold, italics etc), prett= y links,
>> tables, dates, and perhaps some other stuff into, from Org-mode, i= ndependent,
>> minor modes that could be used in other parts of Emacs and more in= dependently
>> of
>> Org mode. I think both Org-mode and Hyperbole, and perhaps some ot= her
>> libraries
>> (button.el, help-mode, info), could use some minor mode that works= with
>> links. For us users, it would mean less cruft loaded into Emacs, i= f those big
>> players could share some code.
>>
>> I haven't done much research on this, just something I had in my h= ead for a
>> long
>> time.
>
>I would like to hear in more details what you have in mind. As is, your=
>proposal appears to be for multiple projects. Or am I mistaken?
>
>For links in particular, Hyperbole already implements the described
>minor mode, or what am I missing?
>
>For tables, dates, and other markup, it is not clear what you want to
>achieve.

To be honest I am not sure myself :)

>         Do you want Org markup to be displayed in = non-Org buffers?

Well, part of it. Or more to make some parts of org-markup configurable, an= d
usable as minor modes so they can be easier used outside of org-mode.

For example about links, there could be a mode "text-link-mode" o= r
"pretty-links-mode" or something, that understands what a link de= scription is,
and what a link itself is. The minor mode would have some mean to parse
description and link parts, and when on it would do what org-toggle-link-di= splay
does. For example org uses angle brackets for link desc and url, whereas
markdown uses angle brackets and parenthesis. Thus link-mode could/should b= e
enough customizable so that modes could be clients of this minor mode, as w= ell
as for user to be able to setup a regex or set a function that recognizes s= ome
custom syntax for descriptions and links. Also a minor mode can come with a= key
map and some actions, for example to follow link, to insert a link etc. I t= hink
of org-links, but a bit more generalized and usable without org-mode
itself. Org-mode could use those under the hood.

Similarly for italics, bolds, underlines, etc. Those could be slightly
generalized and taken out into minor mode. Clients could setup their own
start/end markers and use them to enrich the text on the display instead of=
perhaps defining own faces and regexes. I don't know how useful and desirab= le it
might be in other modes, perhaps in comments in programming languages, or
similar. Just a thought.

org-timestamp interactiveity could be usable elsewhere than just in org
mode. For example I can insert  org-timestamp in any mode, but it does= work to
use C-left/right to change the date. It could be refactored into small tiny=
minor mode timestamp-mode or something, that comes with tis mode map and en= able
this interactive stuff.

ascii tables or org tables started as its own mode but got consumed by org.= They
are still usable outside of org mode. I can create table with org-table-cre= ate
and I can align table with org-table-align, but by default I don't have thi= s
functionality bound in some keymap if I am not in org-mode. Perhaps I am ju= st
not familiar with it. But this could be a minor mode also.

I guess org-capture is a candidate, and probably some others.

By refactoring out those things, org-mode loose nothing, since everything i= s
still available in Emacs, and everything could be still used in org-mode un= der
the hoos, but it would be easier to use those things in other major modes. = It
might also be easier to work with org-mode if it is less monolithic.

I am sorry if it is too scatchy, and uninformed, it is just some thoughts I= had,
but I was never really motivated to do those things myself.

Fr=E5n: Ihor Radchenko <= yantar92@posteo.net>
Skickat: den 20 augusti 2024 19:40
Till: arthur miller <arthur.miller@live.com>
Kopia: emacs-devel@gnu.org <emacs-devel@gnu.org>; emacs-orgmod= e@gnu.org <emacs-orgmode@gnu.org>
=C4mne: Modularizing Org as GSoC project (was: New Emacs features vi= a Google Summer of Code (or other similar stipend schemes) (was: as for Cal= c and the math library))
 
arthur miller <arthur.miller@live.com> write= s:

>> ...
>>Are there any specific todo items there that you view as more suita= ble
>>for people with limited experience in Emacs codebase?
>
> I am not sure if this is something, I hope you don't mind me asking, b= ut could a
> work to modularize Org, be an appropriate subject?

Yes, it can be.

RMS previously asked us to do exactly this:
ht= tps://orgmode.org/list/E1kIPh1-0001Lu-Rg@fencepost.gnu.org

Also, see previous discussion on re-integrating org-capture into remember.e= l:
https:/= /yhetil.org/emacs-devel/87bka7c2e0.fsf@localhost
Similar for org-protocol.el.

> For example turn displaying pretty text (bold, italics etc), pretty li= nks,
> tables, dates, and perhaps some other stuff into, from Org-mode, indep= endent,
> minor modes that could be used in other parts of Emacs and more indepe= ndently of
> Org mode. I think both Org-mode and Hyperbole, and perhaps some other = libraries
> (button.el, help-mode, info), could use some minor mode that works wit= h
> links. For us users, it would mean less cruft loaded into Emacs, if th= ose big
> players could share some code.
>
> I haven't done much research on this, just something I had in my head = for a long
> time.

I would like to hear in more details what you have in mind. As is, your
proposal appears to be for multiple projects. Or am I mistaken?

For links in particular, Hyperbole already implements the described
minor mode, or what am I missing?

For tables, dates, and other markup, it is not clear what you want to
achieve. Do you want Org markup to be displayed in non-Org buffers?

--
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://o= rgmode.org/>.
Support Org development at <h= ttps://liberapay.com/org-mode>,
or support my work at <https:= //liberapay.com/yantar92>
--_000_DU2PR02MB101099F300A125A197929B4EF968E2DU2PR02MB10109eu_--