From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id GIITB1CQYF8LRQAA0tVLHw (envelope-from ) for ; Tue, 15 Sep 2020 09:58:40 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id iNRCAVCQYF++MgAAB5/wlQ (envelope-from ) for ; Tue, 15 Sep 2020 09:58:40 +0000 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 783C89404CF for ; Tue, 15 Sep 2020 09:58:39 +0000 (UTC) Received: from localhost ([::1]:41090 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kI7jR-0001JD-Gv for larch@yhetil.org; Tue, 15 Sep 2020 05:58:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:42352) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kI7j7-0001J4-6q for emacs-orgmode@gnu.org; Tue, 15 Sep 2020 05:58:17 -0400 Received: from se16.route25.eu ([185.95.31.95]:49702) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kI7j3-0006m6-Rh for emacs-orgmode@gnu.org; Tue, 15 Sep 2020 05:58:16 -0400 Date: Tue, 15 Sep 2020 11:55:48 +0200 From: Russell Adams To: emacs-orgmode@gnu.org Subject: Re: official orgmode parser Message-ID: <20200915095548.GP20869@maokai> Mail-Followup-To: emacs-orgmode@gnu.org References: <68dc1ea1-52e8-7d9e-fb2d-bcf08c111eca@intrepidus.pl> <87d02n2yyr.fsf@gmail.com> <482cea5c-4214-57ac-dfeb-1e305180fee5@intrepidus.pl> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <482cea5c-4214-57ac-dfeb-1e305180fee5@intrepidus.pl> X-Originating-IP: 185.87.184.57 X-SpamExperts-Domain: out.pcextreme.nl X-SpamExperts-Username: 185.87.184.57 X-SpamExperts-Outgoing-Class: ham X-SpamExperts-Outgoing-Evidence: Combined (0.15) X-Recommended-Action: accept X-Filter-ID: Mvzo4OR0dZXEDF/gcnlw0Z1apovzGPsYhEeBL1aoZmqpSDasLI4SayDByyq9LIhVUZbR67CQ7/vm /hHDJU4RXkTNWdUk1Ol2OGx3IfrIJKywOmJyM1qr8uRnWBrbSAGDLZy6c0DmV/7RK6letuHor9Q5 3pMmTXeVbblO3cSIiVBAjK3K43w734a/MqpLMz6eJODXbtOodkPED+RkHjVGH9gpfPe2lDQBFQc5 pWKjU8U1TnR+f0U9cu064nZcMieLAqdkk6hppCDsqsBwLjHur1XxB26GtR7aQdGQ3RxVouvcHykr Pyl3nQdByUhCbiQvaHwJ2eESrUp0Iw/gSJ3HqMuR600P9eQ3vodupN36MrkzGQZS068e3EYTgNAB jZkD8TzPF4eG61o+cxFZrUIXowfXJosMX5ZQSlYSVlCDu2na8Lc2iK0mXNgodhRh0E6+UMVFei1G 2PrSIU9EwioS70yFBF2moUWeHNDS4qZDIDBdjx85xQq9VD42UbTRudBo31/E3ahF5MMcDI7KdpjQ KULbtCr8aoTjHIUEuG3LCVsCW2UOyugPPaOGK1ZclZhyJ1oAKHx1qHjvOGXm6QB+mk6ZTzCPKsFf twxbkg5OTEJBSZDxFdMdjhWKQRs1y634ml6J02QLTAyUTKV7I0jE4h9ZHqYlazF4Aep3JB627AyA NqbOc1Gtzdkvmc99OwUNYu8C5mJ57ZG9g9QfbBpIF2o+aAI+IDjKMqLo+QDcwOuH+to72M/QpS+e gX0iIQ5z0z6bhalFEM/pjPCQA+BAliarbcyhnYf9GTlerAzRHZN69grz8ej5dy2YYel31/MJgEj9 FmVIS3Y45IO0EHWBU52vWb44Y5dCV9X/EphRqzlRXxKF5tPxTxfD0dMN+t5ZJWGWNNNyiNca2a3Z JdzTSfoPFZIShBSdpVJW5HbjQTAnC1PYnSgc+uNcEhwDf0aVA+O/xvrkPTGnkei6PbzPB13wAj1Q 9I3Ii/NI8GPErnjxJG7yzcfoHGlmY2l6KDJ6KdL65BimP4HoDlSIsZTwUZze41SyeXTE+1fVMg+Y M1KwDH7YITzl6JgvROCog9ka X-Report-Abuse-To: spam@semaster01.route25.eu Received-SPF: pass client-ip=185.95.31.95; envelope-from=rladams@adamsinfoserv.com; helo=se16.route25.eu X-detected-operating-system: by eggs.gnu.org: First seen = 2020/09/15 05:58:09 X-ACL-Warn: Detected OS = Linux 3.11 and newer [fuzzy] X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, 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.23 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-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Spam-Score: -0.51 X-TUID: O/eqzvCUbVKg On Tue, Sep 15, 2020 at 11:17:57AM +0200, Przemysław Kamiński wrote: > > Org mode IS an elsip application. This is the main goal. The reason it > > works so well is because elisp is largely a DSL that focuses on text > > manipulation and is therefore ideally suited for a text based organiser. > > So, I keep clock times for work in org mode, this is very handy. > However, my customers require that I use their service to provide the > times. They do offer API. So basically I'm using elisp to parse org, > make API calls, and at the same time generate CSV reports with a Python > interop with org babel (because my elisp is just too bad to do > that). Please consider this is a very specialized use case. > If I had access to some org parser, I'd pick a language that would > be more comfortable for me to get the job done. I guess it can all > be done in elisp, however this is just a tool for me alone and I > have limited time resources on hacking things for myself :) Maintainer time is limited too. Maintaining a parser library outside of Emacs would be difficult for the reasons already given. I'd encourage you to pick up some more Elisp, which I am also trying to do. > Anyways, my parser needs aren't that sophisticated: just parse the file, > return headings with clock drawers. I tried the common lisp library but > got frustrated after fiddling with it for couple of hours. If it's that small you could always do that in Python with regexps for your usage if you're more comfortable in Python. Org's plain text format means you can read it with anything. I suspect grep might even pull headlines and clocks successfully. I haven't looked at the elisp parser much, but I do wonder if someone couldn't write an exporter that exports a programmatic version of your org file data (ie: to xml). Then other tools could ingest those xml files. That'd certainly be a contrib module and not in the core, but might be worth your while to explore the idea if you really want to work with Org data outside of Emacs. ------------------------------------------------------------------ Russell Adams RLAdams@AdamsInfoServ.com PGP Key ID: 0x1160DCB3 http://www.adamsinfoserv.com/ Fingerprint: 1723 D8CA 4280 1EC9 557F 66E8 1154 E018 1160 DCB3