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: How to save custom variable programmatically? Date: Tue, 17 Nov 2020 18:07:23 +0300 Message-ID: References: <87blg5e9re.fsf@web.de> <87o8k5b7oq.fsf@web.de> <87o8k5eyea.fsf@web.de> <875z6441e3.fsf@web.de> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="13280"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mutt/2.0 (3d08634) (2020-11-07) Cc: help-gnu-emacs@gnu.org To: Michael Heerdegen Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Tue Nov 17 16:12:39 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 1kf2es-0003Jv-HP for geh-help-gnu-emacs@m.gmane-mx.org; Tue, 17 Nov 2020 16:12:38 +0100 Original-Received: from localhost ([::1]:46676 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kf2er-0007J4-Ie for geh-help-gnu-emacs@m.gmane-mx.org; Tue, 17 Nov 2020 10:12:37 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:46938) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kf2dm-0006td-RV for help-gnu-emacs@gnu.org; Tue, 17 Nov 2020 10:11:33 -0500 Original-Received: from static.rcdrun.com ([95.85.24.50]:50561) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kf2di-0005ds-KC for help-gnu-emacs@gnu.org; Tue, 17 Nov 2020 10:11:30 -0500 Original-Received: from localhost ([::ffff:41.202.241.56]) (AUTH: PLAIN admin, TLS: TLS1.2,256bits,ECDHE_RSA_AES_256_GCM_SHA384) by static.rcdrun.com with ESMTPSA id 00000000002C0006.000000005FB3E81B.00002604; Tue, 17 Nov 2020 15:11:22 +0000 Content-Disposition: inline In-Reply-To: <875z6441e3.fsf@web.de> Received-SPF: pass client-ip=95.85.24.50; envelope-from=bugs@gnu.support; helo=static.rcdrun.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/11/17 10:11:24 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_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:125294 Archived-At: * Michael Heerdegen [2020-11-17 15:24]: > Jean Louis writes: > > > Do you have example for: > > > > - client's name (to be key for below) > > - address line 1 > > - address line 2 > > - address line 3 > > - postal code > > - city > > - country > > - phone > > - fax > > - mobile > > - email > > BTW, if you actually happen to want to have a database of contacts, I > have to add that there are special solutions for that task of course: > BBDB, its successor EDBD, and org-contacts (I currently use the first > one; there may be more). Question for the structure is meant for packages that produce invoices and quotations for customers where user does not need any outside package or anything more sophisticated. Just entering few tables, few items or articles or goods, pricing and creating invoice. For contacts management I will have new package for GNU ELPA, it will come. I am using it since quite some time for me and it comes from CRM or Customer Relationship Management database and different web GUI. GeDaFe - PostgreSQL Generic Database Interface ============================================== Hyperlink: http://gedafe.github.io/doc/gedafe-sql.en.html Gedafe is a generic web front-end to PostgreSQL. Generic means in this context that Gedafe does not know anything about the structure or contents of the database it is presenting. Over many years using Gedafe interface I have developed many various PostgreSQL tables for various use cases. Let us say for mapping lands and generation of maps or for planning, invoices, etc. Contacts are of course included together with various accounts and integrations that is way complex than BBDB. For me personally I have contacts management that satisfied all personal needs (not public need). For a package to create invoices and to be very simple as Emacs is simple for the user, I am looking how to structure data and save it for the user. I think that packages should support various databases: 1. Emacs based databases should be simplest 2. GDBM database, I hope to sponsor dynamic module for GDBM soon, 3. PostgreSQL, dynamic module already exists For the option 3. I have the solution and `emacs-libpq` will come soon to GNU ELPA: https://github.com/anse1/emacs-libpq.git For option 1. I look for solution to make it simple for those users who do not have many clients and do not need sophisticated database in background. Option 3. with GDBM will come in future and I hope it will enhance Emacs as programming interface to databases. So structure with EIEIO will serve for option 1. Jean