From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jean Louis Newsgroups: gmane.emacs.help Subject: Re: Toggle appointment notification Date: Fri, 4 Dec 2020 08:59:27 +0300 Message-ID: References: <875z5jiroy.fsf@web.de> <875z5ibigp.fsf@web.de> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="21833"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mutt/2.0 (3d08634) (2020-11-07) Cc: Michael Heerdegen , help-gnu-emacs@gnu.org To: pietru@caramail.com Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Fri Dec 04 07:00:35 2020 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kl48x-0005ZL-4i for geh-help-gnu-emacs@m.gmane-mx.org; Fri, 04 Dec 2020 07:00:35 +0100 Original-Received: from localhost ([::1]:42752 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kl48w-0005eq-6v for geh-help-gnu-emacs@m.gmane-mx.org; Fri, 04 Dec 2020 01:00:34 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:59330) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kl488-0005eg-Ih for help-gnu-emacs@gnu.org; Fri, 04 Dec 2020 00:59:44 -0500 Original-Received: from static.rcdrun.com ([95.85.24.50]:44511) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kl486-0005Ap-1u for help-gnu-emacs@gnu.org; Fri, 04 Dec 2020 00:59:44 -0500 Original-Received: from localhost ([::ffff:197.157.0.57]) (AUTH: PLAIN admin, TLS: TLS1.2,256bits,ECDHE_RSA_AES_256_GCM_SHA384) by static.rcdrun.com with ESMTPSA id 00000000002C0006.000000005FC9D04B.00001A1C; Fri, 04 Dec 2020 05:59:38 +0000 Content-Disposition: inline In-Reply-To: Received-SPF: pass client-ip=95.85.24.50; envelope-from=bugs@gnu.support; helo=static.rcdrun.com 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_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.io gmane.emacs.help:125952 Archived-At: Dear Pietru, * pietru@caramail.com [2020-12-04 03:28]: :PROPERTIES: :CREATED: [2020-12-04 Fri 08:58] :ID: 30c62de6-cc11-42b7-8f1b-5f23313b3a94 :END: > > > Sent: Friday, December 04, 2020 at 12:49 AM > > From: "Jean Louis" > > To: "Michael Heerdegen" > > Cc: help-gnu-emacs@gnu.org > > Subject: Re: Toggle appointment notification > > > > * Michael Heerdegen [2020-12-04 02:05]: > > > pietru@caramail.com writes: > > > > > > > Fair enough, but the response could easily be interpreter to be > > > > addressed to us rather than to every emacs user. I understand we > > > > asked for points of view, but that was after Michael informed us that > > > > he was planning some work on diary appointments and he asked me for > > > > suggestions on our planned use and strategy. Emanuel confirmed that > > > > changes will became part of the official release. > > > > > > I'm sorry, but there was some misunderstanding. I'm a user of calendar, > > > diary, org and diary, and plan to donate some related stuff to Gnu > > > Elpa. I dunno to what Emanuel answered. > > > > > > I'm interested in making diary expressions more common and useful. I > > > want to have something better than appointments, and a better > > > integration of these things with Org. But I'm not an Org developer. > > > > > > I'm just curious about how people are currently using this stuff, as an > > > inspiration for the direction of development of my stuff, so that it may > > > end up in something useful for others. > > > > {M-x appt-add} While called `appointments' it may be used for any type > > of daily alarm or notification. I find warnings or alarms useful. User > > may write something and be focused and is then reminded of > > appointment. Or bread being baken. Or child that has to be driven from > > kindergarten. > > > > (appt-add TIME MSG &optional WARNTIME) > > > > Probably introduced at or before Emacs version 23.3. > > > > Add an appointment for today at TIME with message MSG. > > The time should be in either 24 hour format or am/pm format. > > Optional argument WARNTIME is an integer (or string) giving the number > > of minutes before the appointment at which to start warning. > > The default is ‘appt-message-warning-time’. > > > > > > I am currently thinking same as you, how to streamline and shorten and > > make faster actions of life and education of others. > > > > If you have structured data to deal with it is good to use databases. > > Ok, it could be. But bloody hell, you need to make an sql query. And > of course SQLight works on binary files. It is problematic. SQL queries are pretty much human understandable queries. Using database spares are lot lot of problems. This function replaces org-todo-list in org-agenda. You may try to see what org-todo-list is doing. (defun hyperscope-all-actions () (interactive) (hyperscope-remember-parent) (hyperscope-highlight) (let* ((sql "SELECT hlinks_id FROM hlinks, hlinktypes, actionstatuses WHERE hlinktypes_id = hlinks_hlinktypes AND actionstatuses_id = 2 AND actionstatuses_id = hlinks_actionstatuses ORDER BY hlinks_globalpriority, hlinks_rank DESC;") (id-list (rcd-sql-list sql *hs*))) (hyperscope nil nil nil nil nil id-list) (message "Hyperdocuments list of all pending actions"))) The main hyperscope function is about double then what you see. It spares coding in human understandable way as it is already programmed, there is no need to reinvent the wheel and integration that becomes useful for user is just few functions away. org-ql is Org query language that does useful queries for Org users. It attempts to be glue to Org mode to replace SQL and does it job of coping with text very good: org-ql or Org query language https://github.com/alphapapa/org-ql > It could be made an option, but using text should be kept. We often > do not have structured data. At times we come up with things on the > go, and don't have people who would help if things get too technical > when things go wrong. But with text you can hack things up on the > spot and keep working. I could be working in a swamp, so not into > the cosmetic stuff. Other people can use the fancy complex tree > stuff. There are many instances where it would be an overkill. When doing some text writing on the go, mobile, one has to make notes any how, be it on the paper, on mobile device, by sending oneself SMS, email, or by telling fellows to write it down. Such information is then processed later. There is nothing that I think of the database unless during the development stage. Once developed functions work for years, I just looked back and I see decades passed. I could as well stay working with the old PostgreSQL version. Inside of a database is text. All editing is text. When such simple function as above is integrated for user one only needs key bindings. For my side it is '-a to see all hyperdocuments with actions. If my staff member accesses the database there is reference sheet or help screen and staff member just do ' and a to get all hyperdocuments with actions. It could be as well letter "a" or function key. Minimizing the number of keys to get to the function execution is what makes it useful for user. Then we are people, people need to collaborate together. When using database to store tasks those tasks become available in various other forms. - users can access tasks by using web interface or Emacs interface, but they may use console with `fzf' tool for fuzzy searching, they could use `dmenu' dynamic menu to find current agenda or display what is necessary with `zenity', or Emacs without integration could use a console script with C-u ! to insert agenda into Emacs, mobile devices use Javascript and access information, user can use any editor that allows remote execution and access one's one information, insert into editor or print it out, KDE could use its graphical user interface, Gnome could use its own and programs become integrated together. fzf - fuzzy search https://github.com/junegunn/fzf fzf is for console with ivy and helm are for Emacs. Dmenu is for X what ivy and helm are for Emacs. There is nothing too technical with SQL databases. Emacs Lisp is way more technical than majority of SELECT, INSERT, UPDATE, DELETE queries that one usually does not even think of as those are bound to some keys or mouse click. The Cherrytree software uses database, it is transparent to user which never thinks about it. Cherrytree - hierarchical note taking application with rich text and syntax highlighting https://www.giuspen.com/cherrytree/ Example is this above hyperlink that I am inserting with keys / f for filter "cherry" for query and W to insert into other window. WWW hyperlinks are not structured data in Org mode and except of activating them there are not many actions integrated for the user, not that I know that one can share Org hyperlinks to other users in easy manner, collaborate on such, add notes for hyperlink itself without disturbing the heading's body, or assign various tasks to hyperlink and relate it to user, group of people or rank the actual number of hyperlink number of activations. Org mode already handles structured data and with time it becomes more and more with tedious coding that replaces database functions. 129 Org mode files are there for review of the hard work developers did. Database based Org mode may replace many of its actions with one file or few, not 129. Collaboration becomes possible as soon as networked ready databases are involved. > Could you have a look at Gnu Recutils, so we can read and write using > rec-format. Quite unsure how you are trying to do things, but sounds > like office work to me. GNU recutils is good tool and it is type of way better structured database then what now Org structure offers. Actually I am surprised that neither GDBM nor GNU recutils, nor GNU SQL similar type of query language is not used with GNU Emacs in general as integrating with other tools and liberating data helps with tremendous integration with other software, other platforms, types of accesses. Things become simpler and more useful, not complexer and less useful. https://www.gnu.org/software/parallel/sql.html Would it be used from beginning then underlying generic functions to access data from Org mode could be today expanded to be using MySQL and other databases with similar queries without user needing to know about it. Jean