From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.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 SH7JLmn28GPhqgAAbAwnHQ (envelope-from ) for ; Sat, 18 Feb 2023 17:01:45 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id iG68Lmn28GNKJwAAauVa8A (envelope-from ) for ; Sat, 18 Feb 2023 17:01:45 +0100 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 6D781F416 for ; Sat, 18 Feb 2023 17:01:45 +0100 (CET) Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=mailfence.com header.s=20210208-e7xh header.b=rbe3Yr6N; 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=quarantine) header.from=mailfence.com ARC-Seal: i=1; s=key1; d=yhetil.org; t=1676736105; a=rsa-sha256; cv=none; b=Vt12LTmLsGRUfGU/JjR8swOswVodMaV0YdpAlnoZWhS0FPR0h3P5emRs37rHUML5+vt/v+ SHewEtXD6KKjGaylZ2UAQVC/XsqDrX6AGzMJoUx7ruP+J4yC7YkMMfuGT4SM6LLFnk1SKm CROSuCpFkTjiJZoVhEB+xy4NBQlxyAqyiE4wNXYsEuMo1tk15mAn6SfReCcokUrRJwZRWp 9q9Nr6FOPy/dXwaDr3J9H6zoyMxnZjfrj+hLX8qd//EnAZPXuTJcvwyzcPD3kIwmgh91vc c1wAIrAn4vZ0O7B4NDecfzqH2Iiq2Z8NRu1ogP4Cpe8ymplMLde+60wHMAMlIA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=mailfence.com header.s=20210208-e7xh header.b=rbe3Yr6N; 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=quarantine) header.from=mailfence.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1676736105; 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:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=w18jS9jru0f+NtPlncpKX0jK7B4t4xxYpl204UMCC30=; b=J5k61XhwDzBMuxyW59eGJsvWTrl4vBIJYgsX0hjP7WqHaP1nH6jCGEuod7e/5flwlQJP/e XxVh6aVb380BlxdO8+yFp1lDuhm+7YUj63yXqszxWR3cOYKeqHOqUusYI1QF8VWStKDUEU QB8KnGMlV9EOx3rocfRE7hbENmXhkCeMpYhlSWlZK2TwGOgQIP+6J44vrxHaMoGax8ZZzf 4Ap2o3RMieTu504alA4zf+R/QJYSQmc+zwU8ts8ZHgkRs+mrSi1YJQYfqU+AfhsxXw1YqF UPdE7cGd2I3N3uMUGNtpkrMc8z9k1WPwzqj/Nat1xHfQMQ7BGDhhLZ5KMHrQ5A== Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pTPdo-00068O-9B; Sat, 18 Feb 2023 11:00:48 -0500 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 1pTPdk-00068D-Am for emacs-orgmode@gnu.org; Sat, 18 Feb 2023 11:00:45 -0500 Received: from wilbur.contactoffice.com ([212.3.242.68]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pTPdi-0001bW-5s for emacs-orgmode@gnu.org; Sat, 18 Feb 2023 11:00:44 -0500 Received: from fidget.co-bxl (fidget.co-bxl [10.2.0.33]) by wilbur.contactoffice.com (Postfix) with ESMTP id 10544AB7 for ; Sat, 18 Feb 2023 17:00:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1676736037; s=20210208-e7xh; d=mailfence.com; i=pareto.optimal@mailfence.com; h=Date:Message-ID:MIME-Version:Content-Type:To:Subject:From; l=3229; bh=w18jS9jru0f+NtPlncpKX0jK7B4t4xxYpl204UMCC30=; b=rbe3Yr6Nsph2jT/4OXQsmo+9bOo6sZS7Ws3Seb1CRSaGOqa7v2RGCR53Ltqtgs39 8VA087lGNWJnyMvqxdAvpIEX1Rxl2LwLiDSTyYZ6MagTQr3fK+i/3CBlV6DkTEsRAcj y18YjmMPJmM2IwCFxoBPcQrgUQXRgr5HrUpz8FTG6Gme/SNtJcTViVPeW40e7OfECxX 84sCMwxfyOSCvTYeost3iXsL8NPfMXdwRnJPOeVueVVVz8d1dmeWfrj0f9t1KJbQBAc QBjrE/hkM5K8Y7+ekZYnqvTnKSKM9I0zN6gzucIPQwQa2fY1y8Cc74bn2+/BhWdilR3 vToPYbiEcg== Date: Sat, 18 Feb 2023 17:00:33 +0100 (CET) Message-ID: <1495820062.205861.1676736033884@fidget.co-bxl> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_205858_1993486422.1676736033883" To: Emacs Orgmode Subject: RFC on implementation adding buttons beside headings From: pareto optimal X-Mailer: ContactOffice Mail X-ContactOffice-Account: com:311504211 Received-SPF: pass client-ip=212.3.242.68; envelope-from=pareto.optimal@mailfence.com; helo=wilbur.contactoffice.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 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: X-Migadu-Queue-Id: 6D781F416 X-Spam-Score: -11.25 X-Migadu-Spam-Score: -11.25 X-Migadu-Scanner: scn0.migadu.com 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-TUID: JJObLabxTl8Y ------=_Part_205858_1993486422.1676736033883 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Hi all! I've recently been playing with emacs on Android and wanted an easier way t= o clock in. My idea was to put buttons beside org headings that are TODO items. I do th= is by: - removing clocking buttons on heading if present, then adding a clock in b= utton on=C2=A0'org-after-todo-state-change-hook` - removing clocking buttons on heading if present, then adding a clock out = button on=C2=A0'org-clock-in-hook - removing clocking buttons on heading if present, then adding a clock in b= utton on=C2=A0'org-clock-out-hook Well, the removing part isn't quite implemented yet but that's the idea. Ot= herwise what I'll paste below is a working implementation. I'm new to using buttons and emacs and I found the only way to place the bu= tton where I wanted was to insert some blank space after the heading. Is th= at expected and best practice or is there some other way to do it? Would this be something useful in core org-mode? I know at least a few frie= nds who've asked me "why isn't there some button I can click by headings to= clock in" when I showed them how I use org-mode. I also welcome any other ideas or comments. Thank you for your time. ParetoOptimalDev https://www.paretooptimal.dev/ ------=_Part_205858_1993486422.1676736033883 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline
Hi all!

I've recently been playing with emacs on Android and wanted an easier way= to clock in.

My idea was to put buttons beside or= g headings that are TODO items. I do this by:

- re= moving clocking buttons on heading if present, then adding a clock in butto= n on 'org-after-todo-state-change-hook`

- rem= oving clocking buttons on heading if present, then adding a clock out butto= n on 'org-clock-in-hook

- removing clocking b= uttons on heading if present, then adding a clock in button on 'org-cl= ock-out-hook

Well, the removing part isn't quite i= mplemented yet but that's the idea. Otherwise what I'll paste below is a wo= rking implementation.

I'm new to using buttons and= emacs and I found the only way to place the button where I wanted was to i= nsert some blank space after the heading. Is that expected and best practic= e or is there some other way to do it?

Would this = be something useful in core org-mode? I know at least a few friends who've = asked me "why isn't there some button I can click by headings to clock in" = when I showed them how I use org-mode.

I also welc= ome any other ideas or comments.

Thank you for you= r time.


ParetoOptimalDev
= https://www.paretooptimal.dev/
------=_Part_205858_1993486422.1676736033883--