From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id MMveJc6fsGIxxwAAbAwnHQ (envelope-from ) for ; Mon, 20 Jun 2022 18:26:54 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id 4IP5JM6fsGIaJgEAG6o9tA (envelope-from ) for ; Mon, 20 Jun 2022 18:26:54 +0200 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 F12A31760F for ; Mon, 20 Jun 2022 18:26:53 +0200 (CEST) Received: from localhost ([::1]:60094 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o3KEm-0003VA-Fs for larch@yhetil.org; Mon, 20 Jun 2022 12:26:52 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51474) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o3KCy-0003Tj-Hs for emacs-orgmode@gnu.org; Mon, 20 Jun 2022 12:25:02 -0400 Received: from libre.brussels ([2a01:4f8:201:1044::1]:48826) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o3KCv-0004h9-3N for emacs-orgmode@gnu.org; Mon, 20 Jun 2022 12:24:59 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=libre.brussels; s=mail; t=1655742287; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=xh5TJjFXVd2ei2RknwctgUXDovyMg7a2KdISlRX0LB4=; b=Nq+523e1xM+rzjmGmKvZcX+/vfGQ3NHD+JkDIy94VE3WhdM3IIoePBp9Tg5g97YylkwzMN pkrGJJxvT4v+56WF0whTcfPJi1R+V5hQqHMX/LkFc58dgVT3KIajr07N3DNAmsI7ky4dWv ojepqEcdca8WuJ6xxR8kblbELmN6G8s= MIME-Version: 1.0 Date: Mon, 20 Jun 2022 18:24:47 +0200 From: indieterminacy To: =?UTF-8?Q?Juan_Manuel_Mac=C3=ADas?= Cc: orgmode Subject: Re: Org and Hyperbole In-Reply-To: <875ykvbffg.fsf@posteo.net> References: <875ykvbffg.fsf@posteo.net> Message-ID: X-Sender: indieterminacy@libre.brussels Organization: Icebreaker Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=2a01:4f8:201:1044::1; envelope-from=indieterminacy@libre.brussels; helo=libre.brussels 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, 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" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1655742414; 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: 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=xh5TJjFXVd2ei2RknwctgUXDovyMg7a2KdISlRX0LB4=; b=uxBOCYJ5tn4RE3CdQa8+n5/o0YcSNYYtcQdkNk6ZCAkSuU7wc9MNF26nTw44/HcGwTJuv3 UHTsc9pkkYrLZMoWZ6fg6+ZI9RTzJsRAUDA9HX0rBBRJ7MakHsRcA4d/Kl/3RQoWynW23N CBpe1Y9WhkZchCaTCv85UeOFEobCmXear+kbepaatG8ugD1tiery5xyoMiTzC4XvohGGsS yudIj5obvINPyglNyrjjW7JkleTsRI9C3AZdhIQ0C5vW23Cj9oyDfayWyLw/Y1BAMwwS65 NLWJF+D869m+IRID/TTVvckrF6773t+ZNz5/m7jsSRiYfZz/babSTFumEePCOQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1655742414; a=rsa-sha256; cv=none; b=CbK0oRKccfbVe1EoigahcFEXNQwyekDZTTPR3Z3/RwokwZTErs/87RCrlVglRIHO9g2CL4 UytjVuXGNu0ATKOYRoHE/j3fkJwlHPXdU5lOttppgtIeEgAMQkUaWvGV9tNhJS/LKJYA9Y pxZoYBI4jQyWj/2lBsSx8SIuwl7m6XW0u2rnYi/gSg1Tow70Ia2sZtRilbU/VfKpr16i4i GrDoV/nx8hLDwetzHimTjMsLsvNGOzeyfimH9h0DWUSmIiEd1yKPnp9IC0J9o5mnW0jebP 34EUlQEOuPHllfCmeLfqqcVoGdKt0cTVmqzIEBZmsLeDiQFuOcZ64CjCxs7iXw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=libre.brussels header.s=mail header.b=Nq+523e1; dmarc=pass (policy=none) header.from=libre.brussels; 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" X-Migadu-Spam-Score: -5.77 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=libre.brussels header.s=mail header.b=Nq+523e1; dmarc=pass (policy=none) header.from=libre.brussels; 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" X-Migadu-Queue-Id: F12A31760F X-Spam-Score: -5.77 X-Migadu-Scanner: scn0.migadu.com X-TUID: 5F1BSIhm2VIL Hi Juan, On 20-06-2022 16:03, Juan Manuel MacĂ­as wrote: > Hi, > > I've been intrigued with GNU Hyperbole for a while. I'm reading the > documentation and trying it out a bit. It seems that its button system > is very powerful. But Org links are also powerful (and exportable), and > can be extended outside of Org docs. It seems that hyperbole offers > some > cool stuff that Org also has. And other things that are not in Org. I > find some parts a bit confusing. I wonder if anyone is using hyperbole > with Org and can put here some minimal workflow example where both > complement each other in some way. Just in case I'm missing something > useful... > I recommend Hyperbole, though I must confess Ive been using Orgmode a lot less since Ive been focusing on the format GemText. I should recommend the use of the function defil, for people who like regexes and want to operate differing contexts (to launch via the ACTION operator). Its mid-grade compared to the more simpler approach and the more complex eLisp approach. While I have not fully applied this technique to my workflow, you can see some /stub/ experimentations that are used to provide different function calls based upon where the cursor is in the context of a specific annotation (namely my annotation approach, Qiuy). https://git.sr.ht/~indieterminacy/5q50jq_oq_configuring_emacs/tree/master/item/cqc_mqm_interfacing_blooms.el The logic for the example includes: As you see below, these things build through to build multiple cursor based contexts. ``` (defil qiuy-1q10hqh_1 "^" "q10hqh.*" "1" "{M-: (print \"context_1 1q\") RET}" t t) (defil qiuy-1q10hqh_2 "^1" "10hqh.*" "q" "{M-: (print \"context_2 [1-6]q\") RET}" t t) (defil qiuy-1q10hqh_3 "^1q" "0hqh.*" "1" "{M-: (print \"context_3 1q10\") RET}" t t) (defil qiuy-1q10hqh_4 "^1q1" "hqh.*" "0" "{M-: (isearch-forward-symbol \"q10\") RET}" t t) (defil qiuy-1q10hqh_5 "^1q10" "qh.*" "h" "{M-: (rg-project \"hqh\" \".*\") RET}" t t) (defil qiuy-1q10hqh_6 "^1q10h" "h.*" "q" "{M-: (print \"context_6 1q10hqh\") RET}" t t) (defil qiuy-1q10hqh_7_\s "^1q10hqh" "$" "\s(.*)" "{M-: (print \"context_7_\s 1q10hqh \\&\") RET}" t t) (defil qiuy-1q10hqh_7_\t "^1q10hqh" "$" "\t(.*)" "{M-: (print \"context_7_\t 1q10hqh \\&\") RET}" t t) (defil qiuy-1q10hqh_7_- "^1q10hqh" "$" "-(.*)" "{M-: (print \"context_7_- 1q10hqh \\&\") RET}" t t) (defil qiuy-1q10hqh_7__ "^1q10hqh" "$" "_(.*)" "{M-: (print \"context_7__ 1q10hqh \\&\") RET}" t t) ``` Documentation for the function defil can be found here: https://www.gnu.org/software/hyperbole/man/hyperbole.html#Implicit-Button-Link-Types The Hyperbole ML is quiet but friendly and informative. Having examined Hyperbole more broadly, I do wonder if there was more of a policy to treat Orgmode as more of a parrallel concern. Today, there is clearly a proactive effort to align and encourage cross usage. To hear that somebody as accomplished as yourself is dabbling with Hyperbole pleases me no end. It may be worth you visiting one of my knowledge repos here: https://git.sr.ht/~indieterminacy/3q50cqc_oq_interfaces_emacs As well as (over time) checking on on these search parameters for my username: https://git.sr.ht/~indieterminacy/?search=hyperbole https://git.sr.ht/~indieterminacy/?search=koutliner Of note, I should mention my own project, Icebreaker - which has been augmenting the GemText format with terse syntaxes and formats - including Hyperboles Koutliner format (which if I understand may be able to include orgmode tables in its blocks with the new version - I could be wrong here). Here is a WIP parser written in TXR - for parsing Koutliner blocks (with or without my Qiuy annotations) and expressing it as a datalisp: https://git.sr.ht/~indieterminacy/1q20hqh_oqo_parsing_glean I shall be tightening it up soon, including integrating it with a WIP GemText parser (its terser atm but missing a little): https://git.sr.ht/~indieterminacy/1q20hqh_kq_parsing_gemtext An NLNet funded project, I am going to later be exporting some of this information into simple Orgmode syntax as a subset of one of the deliverables. An earlier protyping is covered here in a more recent Fosdem talk: https://fosdem.org/2022/schedule/event/minimalsyntaxes/ Im happy to answer any more questions with regards to this in this thread or elsewhere. It may be worth highlighting a matrix room my Icebreaker project runs to reduce clutter from other MLs. The members there are friendly, knowledgable and use Orgmode for a range of tasks: https://matrix.to/#/#xq_icebreaker:matrix.org You are a clear and concise writer and coder. I would love to hear the outcomes from this exploration. If I recall you are an emacspeak user - which I seem to think has been praised for its integration with Hyperbole so that should be more than enough justification to really get into it. Kind regards, -- Jonathan McHugh indieterminacy@libre.brussels