From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0.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 YDA1JnK8HGedmgAAqHPOHw:P1 (envelope-from ) for ; Sat, 26 Oct 2024 09:54:58 +0000 Received: from aspmx1.migadu.com ([2001:41d0:303:e16b::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0.migadu.com with LMTPS id YDA1JnK8HGedmgAAqHPOHw (envelope-from ) for ; Sat, 26 Oct 2024 11:54:58 +0200 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=posteo.net header.s=2017 header.b="mKZrrXH/"; 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=posteo.net ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1729936498; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=j+HzaTTQ0HfSX/k/Yv/jPlOcqXZk6ly/4c64+NAq4sQ=; b=rkfOteKoFXglcJoAJPn+7efRAJCcqX6Kr5FOMPZNbR9jBAUpVE8s2YqxNw5GHsk3CPERDf E4CLeduqWxBxXZtubIi96DRAVYFr7iHm4T70J501yO82CRAx5k+muqnrC+yqkpeizRIlZC G2pMF5N4UZeaZk2+kUi4LsS9NPOk49zwNsE4e/S0yJAx/R5PtOQIsy9PGXnBGJESy3E5Ai FmhryeERNk3ZV0UmVdfZ02y9gJ3KEl5AJOJOm/8f+jTgjdgj22FygxEe30QcjYJu23Xdwm /ij60mM7pbHLCvDWjYqHK/r2xLNnK7Ld2v2iSpr2OHDeQVm+boL4krFRFmaLNg== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1729936498; a=rsa-sha256; cv=none; b=EoKR3dfHVnmYRa9lmaRHk7bkDWMTHMani3rxk9U2KoovdhMTbOLiuSZlkvw0joALOm2NU2 xOKhhVGj0Sk/1lRPieKuM8+SSyDeIsIvYhhzPrh8d2btGlEq5H6VwJP8+znFxJYAsHmzFS VeWeIoeH2Tikx4L93aymbnR0dvOINro9lTIXff8HiRaajdd0teJeHtzkatyhiM8xO1hUir p3BeAXCq98JACANkowBSODZ2OUZ+nO2xEFnLCuKKKANGEKPPkMD5irOjaVPBvTrtd+FYSJ stD/l44NK1L+Pb8Xje6mTiNx6Uwq7uvOc2IsgLHNy+zC9zLzDl78yAZZv/H9yg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=posteo.net header.s=2017 header.b="mKZrrXH/"; 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=posteo.net 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 D1B88689B for ; Sat, 26 Oct 2024 11:54:57 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1t4dPg-0007gy-2r; Sat, 26 Oct 2024 05:48:52 -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 1t4dPd-0007gh-56 for emacs-orgmode@gnu.org; Sat, 26 Oct 2024 05:48:50 -0400 Received: from mout02.posteo.de ([185.67.36.66]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t4dPX-0008Ov-E8 for emacs-orgmode@gnu.org; Sat, 26 Oct 2024 05:48:48 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 4BEA4240101 for ; Sat, 26 Oct 2024 11:48:39 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1729936119; bh=J19qQtuYBqn/rDBK1DP87I28RI1+KGC7tDSON6Qjw3A=; h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type: Content-Transfer-Encoding:From; b=mKZrrXH/XteIMzHJxTtvdZA2Go7FY7rExCxGeCR6oOlJBm1NvndKUNpoUGjGDhSAs vsObqstySkAbhVb+x78tArvwGHTIwnlVriUDMv3JXwLNguBNxYdGLD2Ws9NNRJuPtd imMxvDFR8hB9N6wpmTdP7qfjmefzJl097+epAde55c9hq8r5CyhEt8VDkkK1pgLagh /BqbiehiU4ywTIB3rv00bNPx0AvhdRe7yJbDED5n8dMm/6oWPnNb+hY4zEEFrFuYP+ OVkXYbrIDVKFR1ICkfpjEH+ojjsYAFwYWEyg9yH55y4+JVYCjpVBBU3LgStyNr9ZJr RvfH75fs8MnWA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4XbFGG49Wzz9rxD for ; Sat, 26 Oct 2024 11:48:38 +0200 (CEST) From: Ihor Radchenko To: emacs-orgmode@gnu.org Subject: [BLOG] #12 [[bbb:OrgMeetup]] on Wed, Oct 9, 19:00 UTC+3 In-Reply-To: <87ed4ttt02.fsf@localhost> References: <87ed4ttt02.fsf@localhost> Date: Sat, 26 Oct 2024 09:50:23 +0000 Message-ID: <878qubw5uo.fsf@localhost> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=185.67.36.66; envelope-from=yantar92@posteo.net; helo=mout02.posteo.de X-Spam_score_int: -41 X-Spam_score: -4.2 X-Spam_bar: ---- X-Spam_report: (-4.2 / 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, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_CSS_A=0.1, URIBL_SBL_A=0.1 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-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: -4.36 X-Spam-Score: -4.36 X-Migadu-Queue-Id: D1B88689B X-Migadu-Scanner: mx13.migadu.com X-TUID: Mb39q99kWIND [ This time, I will try to use Org mailing list tracker and its functionality for "blog posts". Let's see if I can make this post into RSS feeds that are automatically posted in #org-mode Matrix room. ] Back to the meeting notes. - As usual, we started from Sacha's News https://sachachua.com/blog/2024/10/2024-10-07-emacs-news/ - For a bit of a twist, before the official start of the stream, I did a bit of a screencast working on an Org mode bug report - https://list.orgmode.org/orgmode/878qvbstna.fsf@gmail.com/ - The bug is about Texinfo export of variable definition: : - Variable: my-name :: - When variable "my-name" is exactly =3Dnil=3D, Org mode errs - The problem lies in the implementation detail of ox-texinfo and in Org handling of attribute values - ~org-texinfo--split-definition~ replaces "variable" description lists with special blocks #+begin_src emacs-lisp (apply #'org-element-create 'special-block (list :type cmd :attr_texinfo (list (format ":options %s" args)) :post-blank (if contents 1 0)) (mapc #'org-element-extract contents)) #+end_src - later, ~org-texinfo-special-block~ uses ~org-export-read-attribute~ to parse the =3D:options variable-name= =3D - The problem is that ~org-export-read-attribute~ treats ~nil~ specially, making =3Dnil=3D value indistinguishable from the absence of attribute - It is not fully clear how to address the problem. There are multiple = options 1. ~org-texinfo--split-definition~ to not use ~:attr_texinfo~ and instead store the value directly + add special handling in ~org-texinfo-special-block~. This will avoid invoking ~org-export-read-attribute~ altogether 2. Or I may try to address the limitation of ~org-export-read-attribute~, so that it becomes possible to specify =3Dnil=3D as a value of export attribute. - This seems better overall (in a more global scope outside of the bug report), but it is not clear what can be done (removing special handling of nil will likely cause regression and is thus not an option) - [2024-10-26 Sat] I went with option (1) - Chinmay saw the 33 stashes lying around in my local Org git repository - Those are not all actual work though - My workflow often involves jumping between different Org branches and carrying over WIP changes. For example, I sometimes start to write code on main, but then realize that it is more suitable for bugfix (or vice versa) - To carry the code around I often just use stashes: 1. stash current changes 2. switch branch 3. unstash - I also tend to work on a number of small fixes in parallel, sometimes leaving the changes to "cook" for a few days to avoid overlooking obvious flaws (another day - another fresh look on my code) - If I do see a flaw, I do not immediately delete a stash, but may start changes afresh, so the stash is kept around in case if I change my mind about the approach to handle one or another fix - So, many stashes in my git repo are not really meaningful. I clean them up from time to time - While I was doing the bug fixing screencast, someone asked (by voice, so I do not recall who it was) a bit of an off-topic question - how I configure parenthesis to be highlighted in different colors depending on the relative depth wrt point - I use =3Dhighlight-parentheses=3D package - See https://github.com/yantar92/emacs-config/blob/master/config.org#hig= hlight-parentheses-in-code - visuwesh asked karhink (co-author of the new latex preview branch) about the new proposal to generalize the previews to work outside Org mode - in any arbitrary major mode buffer - https://list.orgmode.org/87edbhljr7.fsf@hyperspace - Recently, Karthik shared a new prototype on the list https://list.orgmode.org/orgmode/87a5fffmuc.fsf@gmail.com/ - Here is a video demo from the recent email https://www.youtube.com/watch?v=3Du44X_th6_oY (watch from 9 minute mark) - I did some initial feedback during and after the video and later followed up with an actual reply on the list https://list.orgmode.org/orgmode/87o73rkgja.fsf@localhost/ - Also, maybe it would be a nice talk for EmacsConf :) - Chinmay asked about Emacs APAC meetup (suitable for Asia-Pacific/Europe t= ime zones) - It is monthly, every forth Saturday, 1400 IST - See https://emacs-apac.gitlab.io/ - karthink asked about the performance of org-persist writing caches to disk and how to debug it - It can take time when there is a large number of caches - For example, with my 20-30+Mbs of Org files loaded into Emacs, it does take a few seconds to quit Emacs (not that I frequently do it) - One can use a profiler to check how long it takes for org-persist to write things - But you need a trick to prevent Emacs from actually exiting and not showing the profiler data: make ~kill-emacs-hook~ throw an error at the very end : (add-hook 'kill-emacs-hook #'error 100) - Then, M-x profiler-report after attempting to quit will work - Later, the hook can be removed : (remove-hook 'kill-emacs-hook #'error) - In case of karthink, the possible problem is a sheer number of cache entries as he is actively using latex previews that heavily make use of the cache - However, we need the actual profiler data to (1) confirm that the problem is there; (2) figure out which part of org-persist is slowing things down - Chinmay asked about link previews in Org mode (similar to what many instant messengers do) - visuwesh suggested that creates previews for youtube links: https://github.com/TobiasZawada/org-yt - Of course, it is only specific to youtube links (special yt: link typ= e) - kathink's patch that adds an API to create arbitrary link previews is a step towards having web (and other, like, say, pdf) link previews https://list.orgmode.org/orgmode/875xrqg6cb.fsf@gmail.com/ - The patch introduces :preview link parameter that will be used by ~org-toggle-inline-images~ - The patch itself does not produce web link previews, but such previews can be implemented using the proposed API - There is even a demo previewing youtube links from unpublished kathink's code https://share.karthinks.com/org-link-preview-demo-2.mp4 - We then went on discussing how to generalize the previews to be not tied to a specific website - Chinmay suggested https://oembed.com/ API. It might be used to retrieve previews from arbitrary websites - I was not so optimistic about the idea because of my experience using OpenGraph protocol to retrieve website metadata in my Org capture scrambler package: https://github.com/yantar92/org-capture-ref - Even though there are standards to provide website metadata (previews, authors, titles, dates, etc), they are simply not followed equally by different websites - ... and you are lucky if the protocol is simply not supported. Sometimes, it is kind of supported, but the returned data is a complete garbage - So, to have some kind of generic previewer, there might be no universal solution. We might have to go the route I took in org-capture-ref: (1) push our luck with "standard" protocol; (2) fall back to website-specific scramblers otherwise. - It is actually doable, except some especially bad websites that do not even provide metadata without running JS - As long as we can download HTML to Emacs, it can be parsed using built-in libxml parser and searched for website-specific info - John Wiegley shared his feature idea - He wants to have a way to define multiple variants of the same paragraph/block/heading/etc #+begin_quote The idea I was proposing earlier, org-layers, would give you markup for specifying multiple versions of a region of text, and both Org-mode and the HTML export would give you a simple interface for changing the view both locally and globally. #+end_quote - The inspiration is from https://en.wikipedia.org/wiki/Project_Xanadu#Hi= story - [2024-10-20 Sun] I did not look into that link during the meetup, but now I am a bit confused. According to the wiki, the major idea is transclusion, and some people (who probably looked into the same wiki page), immediately mentioned https://github.com/nobiot/org-transclusion and https://elpa.gnu.org/packages/lentic.html - daniel german shared his extension to org-transclusion: including parts of code in other files (not Org) into Org document: https://github.com/dmgerman/org-transclude-fn - The idea is slightly different from org-babel in a way that babel is mostly from Org source to code, while org-transclude-fn is opposite - [2024-10-20 Sun] On the other hand, we have ~org-babel-detangle~ that can ingest code back into Org files - As deniel later replied, another difference is that org-transclude-fn does not include actual text into Org document. It is just to be displayed and read; not edited. - org-transclusion, in contrast, allows editing the "transcluded" text, so that edits are reflected in the original buffer - Then, we went further into the old discussion about Emacs allowing to combine parts of multiple buffers, ideally with per-region major modes - One of the past discussions of the idea on emacs-devel: https://yhetil.org/emacs-devel/87h8kou1c0.fsf@telefonica.net/ - And the most recent one (now active): https://yhetil.org/emacs-devel/86ttdau8hj.fsf@gmx.net/T/#t - ... similar discussions keep popping up on emacs-devel from time to time (maybe every 1-2 years or so, AFAIR) - Another analogy that immediately stroke my mind is the problem of translations (of manuals or normal user documents) - Past discussion on emacs-devel: https://yhetil.org/emacs-devel/835y0b= 29rk.fsf@gnu.org/ - When creating a translation of slowly changing document like manual, we cannot simply translate it all at once - Parts of the document may be changed over time, often by people who are not capable to keep all the available translations up to date - So, some system is necessary that keeps track of which parts of the translated document are obsolete and which parts are still up-to-date - The classical solution for this task is https://po4a.org/index.php.= en - ... and it has no Emacs major mode - So, I have been long playing around with the idea that Org mode may be up to the task of maintaining the translations (of manuals or just normal multi-lingual documents/books; inspired by=20 Juan Manuel Mac=C3=ADas sharing a bilingual book written in Org mode: https://list.orgmode.org/orgmode/87h70tyyiz.fsf@posteo.net/) - What if we make use of affiliated keywords to mark some paragraphs/drawers/blocks/headings as "translation" - Such mark will also contain a link and hash of the "original" paragraph/.../heading - Then, depending on the #+LANGUAGE: keyword, we may choose to export different variants of the text - If the original source texts change, but the translations do not, it should then be easily tracked, and we can provide various ways to handle this, like: throw an error; mark the exported obsolete translation somehow; put the original instead of the translation; both; etc. - We can go even further, and link the "translation" to, for example, Elisp function docstring (or even body). Then, if the docstring changes, we can automatically flag the related portion of the manual obsolete. Think about all the extended explanations about various Org mode commands - it is often hard to remember keeping them in sync with changes in the function code. - karthink asked about an update on my big Org codebase refactoring project - There no progress since I started my new job in September (so I have less time for Org mode now) - I also need to sort out my copyright paperwork with the new employer, which is taking some time. I am being cautious about patches (especially non-trivial) until things are settled - We had a moment of awkward silence and I decided to look into some recent feature requests - https://list.orgmode.org/orgmode/87frq13w48.fsf@localhost/ proposes to extend Org timers (M-x org-timer; [[info:org#Timers]]) - The idea is to allow chaining multiple timers one after another, akin what people do with work/rest cycles in Pomodoro - If anyone is interested in such features, please chime in on the mailing list. Unless there are replies, I will have to refute the proposal. (Mostly because it might be non-trivial code-wise and I do not want to complicate code without popular demand for this new feature.) - Chinmay raised a topic of using transient in more places (including Org mode) - My stance of transient is that we should eventually switch all the Org menus to use it. - We generally want to rely more on the existing Emacs features and get rid of Org mode parts that are re-implementing the existing functionality (or predate the time when relevant generic functionality, like transient, have been added to Emacs) - Similarly, we want to move parts of Org mode that are generic enough into Emacs itself - Several users raised concerns about using transient though - Mostly along the lines that is still has problems like not supporting what Emacs users are used to - For example, ~C-h k~ does not work inside transients - Transient menus are also hard to create dynamically: a critical feature required for many Org mode menus - visuwesh also linked to not-yet-closed bug report for transient https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D52058 - I myself faced a few (unreproducible) situations when transient left my Emacs in unusable shape with key bindings completely broken - Having said the above, transient is still going to be an improvement as Org menus are even worse in terms of supporting ~C-h k~ or even simply switching to the menu buffer (which, in contrast, transient allows). After we solve the dynamic menu building that is. [2024-10-25 Fri] But there is a hope: https://list.orgmode.org/orgmode/8734m28l9a.fsf@gmail.com/ - As karthink pointed, a better documentation (user: and discoverability!) would greatly benefit developing more transient uses - There is a good attempt to improve the docs in https://github.com/psionic-k/transient-showcase; would be nice if it were incorporated into upstream manual - Also, karthink suggested that "The transient manual made sense only after I read the EIEIO manual" - Every instance of transient menu item is an instance of EIEIO class - Right after we discussed problems with transient, kickingvegas, a big transient fan, joined - Although, this time he did not talk about transient :) - He presented his recent blog post on a small helper for writing Org tab= le formulas http://yummymelon.com/devnull/referencing-org-table-cells-with-text-reg= ions.html - The problem post is trying to solve is inputting cell references into t= he formulas - Currently, one has to write the references manually, like =3D@13$7=3D - This sometimes involves annoying counting of rows/columns - Org does allow named rows/columns, which simplifies things, but naming rows and columns require dedicated effort, which is only worth it for really large and complex formulas https://orgmode.org/manual/Advanced-features.html - =3DC-c '=3D (~M-x org-table-edit-formulas~) helps somewhat by highlighting the referenced table cell and by providing =3DS-arrow=3D keys to modify reference at point interactively: move reference up/down/left/right; but entering the reference _initially_ still remains awkward - kickingvegas used context menu approach to solve the problem - He introduced a new context menu item, which copies cell reference at point into the kill ring - I suggested integrating the idea of getting cell reference via mouse with ~org-table-edit-formulas~ - When inside edit buffer, mouse may automatically insert cell/cell range reference at mouse into the formula editor - More details in the followup discussion on the mailing list https://list.orgmode.org/95CE1447-FC08-431A-9CA1-83B4C3F77BA7@gmail.com= /T/#t - visuwesh raised the topic for recent Org mode's support for M-x yank-media - Our support revived interest in better implementations of M-x yank-media on all the Emacs platforms - Emacs does not support M-x yank-media on Windows well - https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D71909 discusses how to implement it considering Windows quirks (Windows clipboard is not directly compatible with the notion of mime type used in yank-media support for GNU/Linux) - Beginning of the thread: https://yhetil.org/emacs-bugs/tencent_7FA4E415A96083033C6BED7C7354AEE= 02505@qq.com/ - As a reminder, I now post links to meetup summaries and dates for the upcoming meetups at https://orgmode.org/worg/orgmeetup.html - This is in addition to Mastodon and the mailing list - My new Mastodon server is https://fosstodon.org/@yantar92 :chat: [17:31] Welcome to [[bbb:OrgMeetup]]!

For help on using B= igBlueButton see these (short) tutorial videos.

To join the au= dio bridge click the phone button. Use a headset to avoid causing backgrou= nd noise for others.

This server is running BigBlueButton. [17:38] Ihor Radchenko : Hi [17:38] Chinmay : Hi! [17:38] Ihor Radchenko : We are starting in 20 minutes [17:38] Chinmay : ye no problem [17:39] Ihor Radchenko : Meanwhile, the latest Emacs News: https://sachachu= a.com/blog/2024/10/2024-10-07-emacs-news/ [17:41] Chinmay : omg so many stashes - i need to start naming my stashes t= o use them more [17:49] Ihor Radchenko : highlight-parentheses [17:59] visuwesh : actually, can you have a variable named nil? [18:00] visuwesh : ahhhh i see [18:01] visuwesh : i see, i thought the report was about actually setting a= variable named nil [18:02] visuwesh : ahhh okay [18:04] visuwesh : a question for karthik: did the thread in emacs-orgmode = about adapting the new latex-preview code for auctex ever work out? https:/= /bbb.emacsverse.org/b/iho-h7r-qg8-led or will it have to be changed compel= tely now with the new wip emacs-wide intergration? [18:04] visuwesh : https://list.orgmode.org/87edbhljr7.fsf@hyperspace [18:05] visuwesh : got the link wrong, sry [18:05] visuwesh : yep [18:06] visuwesh : yes [18:06] Dave Marquardt : yes [18:06] karthink : The demo of latex is at around the 9 minute mmrk [18:07] karthink : *demo of latex-mode [18:07] Dave Marquardt : hehe [18:08] karthink : @visuwesh the demo is based on prototype code that's not= very robust [18:09] visuwesh : hmm, okay. i was modelling latex preview for my goldboo= k interface after that thread but it just never worked and i never could wo= rk out why [18:09] visuwesh : i wanted to ask you via mail but i left it for later TM = and you released this video :) [18:09] karthink : The changes required in org-latex-preview are not yet in= the dev branch [18:10] visuwesh : was it ever expected to work before these changes though? [18:10] karthink : Yes, the code provided by Tony Zorman should work with t= he dev branch as is [18:10] visuwesh : i used org-latex-preview-place with (BEG END VALUE) pass= ed to it [18:10] visuwesh : hmm i see [18:12] karthink : No I just made it to demo the possibility of latex previ= ews across Emacs [18:13] Corwin Brust : gm :) [18:13] karthink : Yeah it could be played at Emacsconf, I guess. In any c= ase, I need feedback on the API for plugging it into other major modes [18:16] karthink : It will still `(require 'ox)` for the preamble, but yeah= , independent of Org-mode would be great. [18:17] karthink : The other issue is that I want to avoid runtime dispatch= on the major-mode, because we run code in after-change-functions that need= s to be very fast [18:17] Ihor Radchenko : 1. use thingatpt for boundaries [18:17] Ihor Radchenko : 2. use custom variable/function for preamble [18:18] karthink : I mean code like (funcall (plist-get major-mode ...)) [18:18] karthink : Yeah, the current prototype is using buffer-local variab= les [18:19] karthink : Noted your point about providing defaults. Okay, we can discuss this further in the thread? I think it's not relevant = to most people in the meetup [18:20] karthink : No worries, please take your time [18:24] Chinmay : is the emacs apac meetup every saturday? [18:25] visuwesh : I believe it is monthly? [18:25] Chinmay : ah [18:25] visuwesh : happens around 2 pm or 2:30 pm IST iirc [18:25] Chinmay : ye [18:25] Chinmay : 2 [18:26] karthink : @Ihor that reminds me -- is it expected for Emacs to tak= e 4-5 seconds to exit because of org-persist in kill-emacs-hook? [18:27] karthink : It happens every time to me, I think it's because of the= large volume of latex previews that are cached [18:28] karthink : How do you profile kill-emacs-hook? [18:28] visuwesh : Can you not simplyprofile org-persist-write-all? [18:30] Ihor Radchenko : (add-hook 'kill-emacs-hook #'error 100) [18:30] Ihor Radchenko : This way, can profile killing emacs [18:30] karthink : @Ihor, yeah, my experience is similar to yours just now [18:31] Ihor Radchenko : error will prevent actual killing [18:32] karthink : Okay, I'll find out what's happening [18:33] karthink : Yeah, I'm reminded of the problem only when I quit Emacs= , which isn't very often [18:39] Chinmay : has someone tried to add link previews to org mode? [18:39] Chinmay : this thing https://imgur.com/ZqPjZtE [18:43] visuwesh : https://github.com/TobiasZawada/org-yt this thing maybe? [18:44] Chinmay : i'll check this out, thanks [18:44] visuwesh : but is there a general solution for this problem? im sor= t of interested in this too [18:45] Chinmay : iinw there's some sort of standard for this too? [18:45] visuwesh : only thing i can remember is a PR for ement.el to add li= nk previews but i think that simply queries the matrix homeserver [18:45] Chinmay : like on the web [18:45] Chinmay : not emacs [18:45] visuwesh : i see [18:46] visuwesh : yes [18:46] daniel german : There is a package called (require 'org-yt) that al= lows to have previews of an youtube snapshot. [18:46] visuwesh : we can't see your screen though [18:46] karthink : @visuwesh what do you mean by a general solution? [18:47] Chinmay : general links, not just yt i believe [18:47] visuwesh : i presume the package works by querying youtube for the = thumbnail. i was thinking if there was a gen solution because matrix, disc= ord, etc. show a nice preview of links regardless of the website [18:48] daniel german : yes, thi s is only for youtube. it creates a specia= l type of link and caches it [18:48] daniel german : yt:video-url [18:48] Chinmay : i see [18:49] karthink : @Ihor there's the org-link-preview patch [18:49] Ihor Radchenko : https://github.com/TobiasZawada/org-yt [18:50] Chinmay : this is the standard https://oembed.com/ [18:50] karthink : https://list.orgmode.org/875xrqg6cb.fsf@gmail.com [18:50] karthink : It's the :preview link parameter [18:51] John Wiegley : Good morning (from California timezone) [18:51] karthink : I think org-yt is advising org-display-inline-images (or= whatever it's called) [18:53] karthink : https://share.karthinks.com/org-link-preview-demo-2.mp4 [18:54] karthink : It's just an image placed over the link with C-c C-x C-v [18:55] Chinmay : ye [18:56] karthink : It looks like oembed can also be used for inline link pr= eviews in Org mode [18:57] Chinmay : yes [18:57] Chinmay : lmao [18:58] Chinmay : i think twitter does its own thing [18:59] Chinmay : og:image has a png link [19:01] Chinmay : no idea [19:02] Chinmay : nice nice [19:03] visuwesh : Emacs can use libxml for parsing html and xml [19:03] Chinmay : very cool [19:03] visuwesh : there's an elisp library for parsing xml too iirc [19:05] John Wiegley : I just had a feature idea I wanted to brainstorm [19:06] John Wiegley : Project Xanadu [19:06] Chinmay : ihor your voice is echoing [19:06] daniel german : Ted Nelsons' hypertex [19:06] daniel german : t [19:07] daniel german : It might be an interesting additjion to org-transcl= ude: [19:07] daniel german : to have a parameter that indicates isi only the tit= le or the content of the transclusion are transcluded [19:08] John Wiegley : I hadn't thought of tying it in with transclusion, b= ut I love that idea! [19:08] John Wiegley : Both! [19:08] John Wiegley : Translation of multiple languages, and transclusion = of title/content/etc [19:08] karthink : What is org translation? [19:09] John Wiegley : Yes, my microphone on these websites often produces = echo, my apologies. [19:09] daniel german : org-transclude not org translation [19:09] John Wiegley : https://github.com/nobiot/org-transclusion [19:10] John Wiegley : I use Org transclusion so that I can give my employe= es feedback in a meeting file, and then transclude that feedback into their= personnel file for the yearly review. [19:10] daniel german : I am adding transclusion of a function, still in be= ta, and it will be moved to Nobiot's repo as an module: https://github.com/= dmgerman/org-transclude-fn [19:11] John Wiegley : Saves me from having to either centralize the feedba= ck in a single file, or having to chase links to read them all in one go. [19:12] visuwesh : hmm how does this different from org-babel? [19:12] Ihor Radchenko : https://elpa.gnu.org/packages/lentic.html [19:13] daniel german : I'll respond: [19:13] daniel german : it executes a function, and dynamically inserts the= result, but the result is not part of the actual buffer and it is read onl= y. [19:13] karthink : It would be great if Emacs provided C-level support for = including a part of one buffer in another. Would solve various issues, inc= luding Org babel fontification, LSP support, "native" transclusion etc [19:14] John Wiegley : @daniel It sounds like you could build a webserver o= n that idea [19:14] daniel german : :) once you can execute a function, the sky is the = limit :) [19:15] visuwesh : if it is never going to clog up the result, that would b= e nice yes [19:15] visuwesh : it can be a bit inconvenient to switch to *Async Shell C= ommand Output* or the sync ersion of that [19:16] John Wiegley : The idea I was proposing earlier, org-layers, would = give you markup for specifying multiple versions of a region of text, and b= oth Org-mode and the HTML export would give you a simple interface for chan= ging the view both locally and globally. [19:17] Ihor Radchenko : https://yhetil.org/emacs-devel/87h8kou1c0.fsf@tele= fonica.net/ Discussion about having text from multiple buffers in one buffer [19:17] daniel german : One nice thing of org-transclude is that you can ed= it the source text in the transcluding buffer. I highly recommend it. [19:18] karthink : @John Would all versions be written to the file? [19:18] John Wiegley : AYes [19:19] John Wiegley : #+begin_layered Version one (full text) ,#+next_layered Version two (summary) ,#+next layered Version three (translation?) ,#+end_layered [19:21] John Wiegley : That hashing idea is really nice, Ihor, I could see = this being applicable to code comments in a source file too... [19:21] John Wiegley : Like, the PR would not pass CI unless the comment ha= d been updated with the new hash, which requires revision of that text. [19:25] karthink : @Ihor any update on your big Org refactoring effort? [19:25] Ihor Radchenko : https://yhetil.org/emacs-devel/835y0b29rk.fsf@gnu.= org/ Discussion about translations on Emacs devel [19:25] Jeff Trull : Karthik claims to not be a programmer too ;) [19:29] Ihor Radchenko : https://list.orgmode.org/orgmode/87frq13w48.fsf@lo= calhost/ [19:29] Ihor Radchenko : feature request: Chaining multiple org timers [19:30] Chinmay : i love the transientification of everything [19:30] John Wiegley : transient does seem like a great UI modality for man= y things [19:31] user : I wish transient played more nicely with "C-h k" etc. I don'= t know if things have improved in that regard, but I recall going from tran= sient menu-item to function behind it was not easily discoverable [19:31] karthink : It's hard to modify a transient menu though [19:32] karthink : Compared to keymaps [19:32] user : Fair, it may be better than Org menus [19:32] visuwesh : I really hope the issues raised in https://debbugs.gnu.o= rg/cgi/bugreport.cgi?bug=3D52058 will be resolved [19:32] kickingvegas : hi folks - sorry to jump in late [19:33] Jeff Trull : Perfect timing [19:36] Ihor Radchenko : https://list.orgmode.org/orgmode/877cbamq2q.fsf@gm= ail.com/ [19:36] Ihor Radchenko : feature: transient menu for opening citations [19:37] karthink : Oh yeah, I've broken transient several times [19:38] visuwesh : it i mostly a request for better documentation [19:38] user : s/documentation/discoverability/ [19:38] visuwesh : and in-transient text that tries to help the user when t= rying a transient for the first time [19:38] visuwesh : documentation too, honestly [19:39] Ihor Radchenko : https://github.com/psionic-k/transient-showcase=20 some extra docs [19:39] Chinmay : gtg, bye! [19:39] visuwesh : i find the documentation very opaque as a user [19:39] user : You don't get the same thing [19:40] karthink : The transient manual made sense only after I read the EI= EIO manual [19:40] visuwesh : oh i didn't realise that repo contained user documentati= on. i thought it was only s bunch of examples so never bothered to open it [19:42] Jeff Trull : Karthink that's interesting what is the connection bet= ween an OO library and a menu library [19:43] karthink : I think the prefix and suffix distinction made sense whe= n transient was a smaller library -- since a transient-prefix is a generali= zation of a prefix argument to an interactive elisp command [19:43] karthink : @Jeff every transient menu item is an instance of an EIE= IO class [19:44] Jeff Trull : Ahhh [19:44] John Wiegley : Where was it posted? [19:45] user : Every now and again I wish there was a primer for EIEIO and = cl-defstruct. Mostly because I don't use them often enough to ever remember= their conventions [19:45] kickingvegas : http://yummymelon.com/devnull/referencing-org-table-= cells-with-text-regions.html [19:45] user : primer as in cheatsheet as opposed to manual [19:45] John Wiegley : Thank you! And nice to hear you as well. [19:45] karthink : @Jeff This also means if you want a menu item with bespo= ke behavior you have to define a new EIEIO class that implements it, just f= or one item [19:48] Ihor Radchenko : 3.5.10 Advanced features describes how to create n= amed rows/columns [19:50] karthink : Not seeing KickingVegas' screen yet [19:51] Dave Marquardt : Unless your screen is the "Welcome to BigBlueButto= n" page [19:53] karthink : @Ihor, what was the command you invoked to edit the tblf= m interactively? [19:53] karthink : C-c ' [19:53] karthink : Got it, did you call it with the cursor in the #+TBLFM l= ine? [19:53] Ihor Radchenko : M-x org-table-edit-formulas [19:54] karthink : Cool thank you [19:55] Dave Marquardt : yes, I see Ihor's screen [20:00] Ihor Radchenko : 42.9.2 Overlay Properties [20:00] Ihor Radchenko : when in org-table-edit-formulas mode, you can crea= te overlay over the table and add 'keymap property to that overlay [20:00] karthink : (info "(elisp) Overlay Properties") [20:02] Ihor Radchenko : 22.7.5 Drag Events [20:02] Ihor Radchenko : 22.7 Input Events [20:03] John Wiegley : I agree, there's inertia for me too in naming cells = properly [20:04] visuwesh : yank-media will be properly supported in Windows soon en= ough: https://yhetil.org/emacs-bugs/bafcfc5c-e9d5-402c-a6de-321d49229386@im= ayhem.com/ it would be nice to provide feedback on what file types will be= useful for handlers (currently images, text/html, filenames, audio and vid= eo are mentioned) [20:05] visuwesh : it is about yank-media [20:05] visuwesh : yea that was another bug report, with a proepr subject l= ine [20:05] visuwesh : yeah but they are trying to gather user feedback on usef= ul clipbaord items right now [20:06] visuwesh : https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D71909 [20:07] visuwesh : what clipboard items would be useful for future yank-med= ia usage [20:09] Ihor Radchenko : bug#71909: 30.0.60; Can not use yank-media for pas= ting image from clipboad in org-mode on Windows platform [20:09] Ihor Radchenko : actual thread title [20:09] visuwesh : https://yhetil.org/emacs-bugs/tencent_7FA4E415A96083033C= 6BED7C7354AEE02505@qq.com/ [20:11] visuwesh : i think in windows yo uhave to translate the clipboard d= ata so that it matches the mimetype string that is followed in linux [20:11] visuwesh : so they will probably end up having a specific bunch of = supported types so it would be nice to alert the devs on what clipboard ite= ms would be useful [20:12] visuwesh : yea, it is the same on mac too. i think they have a ver= y limited num of supported clipboard items if im not wrong [20:12] visuwesh : (at least on the ns port) [20:12] visuwesh : yea, the pushed needed to be given c: [20:13] daniel german : thank you. [20:13] oylenshpeegul : Thanks, Ihor! Thanks, everybody! [20:14] visuwesh : thank you all [20:14] Ihor Radchenko : Meetup page and annoucements: https://orgmode.org/= worg/orgmeetup.html Also, on Org mailing list and https://fosstodon.org/@yantar92 [20:14] kickingvegas : thanks all [20:14] karthink : Thanks for the meetup [20:15] John Wiegley : Good bye! :end: --=20 Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at . Support Org development at , or support my work at