From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: raman Newsgroups: gmane.emacs.devel Subject: Re: general customize-like data editor? Date: Wed, 14 Dec 2016 08:30:00 -0800 Message-ID: References: <87pokuk0zb.fsf@lifelogs.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1481733280 6819 195.159.176.226 (14 Dec 2016 16:34:40 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 14 Dec 2016 16:34:40 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Dec 14 17:34:35 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cHCVi-0000NM-R0 for ged-emacs-devel@m.gmane.org; Wed, 14 Dec 2016 17:34:30 +0100 Original-Received: from localhost ([::1]:48712 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cHCVn-0004iP-1j for ged-emacs-devel@m.gmane.org; Wed, 14 Dec 2016 11:34:35 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:49714) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cHCSp-000800-DO for emacs-devel@gnu.org; Wed, 14 Dec 2016 11:31:35 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cHCSl-0003OV-8u for emacs-devel@gnu.org; Wed, 14 Dec 2016 11:31:31 -0500 Original-Received: from mail-pg0-f42.google.com ([74.125.83.42]:32848) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cHCSl-0003Df-2B for emacs-devel@gnu.org; Wed, 14 Dec 2016 11:31:27 -0500 Original-Received: by mail-pg0-f42.google.com with SMTP id 3so9702891pgd.0 for ; Wed, 14 Dec 2016 08:31:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=from:to:subject:references:date:in-reply-to:message-id:user-agent :mime-version; bh=aQrpoKG82JGVPqGWrc/HcJjQ8RDNVdmr1YHM7m3xQ+c=; b=i4UGezX+aKhWEs6nfhvLk0P0CwqmGRuq1jll+tY5ZxseNhobQBdH7NbHcpeYnfCRik YOOfJHx5JVmQhPZ41GTH26QB/gqQKlVIzDCi/i+ng6CpYLJj/pLpiovHyMqQfnUP/psD iix2J/D1Q8q4zt0NsiTbtGqPrUYvHQG5XBJKK0GLJp/JykKNZisMzRHnODcQEXuVVVTa RngMrkUzE7WEh8IJTLnGKqRDow/Z5mfATiX5gDE8bLBqxoO5L+37uF4VdRePqkZwCnzY lm9ZTO4mZMRR+RrN6vQT62ghTy+opLGyOYGCByNq4oloNPJGevpCbpA3psaOHLo8jv6H ua+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=aQrpoKG82JGVPqGWrc/HcJjQ8RDNVdmr1YHM7m3xQ+c=; b=g5IY6rc36vwHg3AjSYtw76JdVdeeEmA2lj2Kup3s9Otxh9fIEobmW7y+fBERYIaPLP 21JGSqlc1N1pANWuZAw625oT41Y3n8TsSF+IlO96g+gnAXrS56nr3jw4cGyI5KxbzNBs yN0+Lu5Zn1azBYAWKh2FGs2a3mTBzNIgNnbtduuIHAuuS3Uz+YwLvCq1KzJE7gRrmkmF BBdutrdGQ+Q0EOuBep9SY0+7YB8yhUjlZOMtzkiRqLR1l/W3PU2fR0N0ig2L/I+4KgiU C4M37VMv+Hl9w5H1TWvzpQdZxvBFkz7lvm0RkUqZCGL+hh5m1Vg6jQZ59Ypa6jiZEGmm Q1uQ== X-Gm-Message-State: AKaTC01+4D0vpcxFPm7MCb4Wr/NzX3v42fAwDWY+HWGr6Y8juv1xuXb3184QNW05fkLV0Fyg X-Received: by 10.98.14.82 with SMTP id w79mr105853399pfi.153.1481733003049; Wed, 14 Dec 2016 08:30:03 -0800 (PST) Original-Received: from raman-glaptop2 ([207.198.106.187]) by smtp.gmail.com with ESMTPSA id t193sm89164713pgb.4.2016.12.14.08.30.02 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Wed, 14 Dec 2016 08:30:02 -0800 (PST) In-Reply-To: <87pokuk0zb.fsf@lifelogs.com> (Ted Zlatanov's message of "Wed, 14 Dec 2016 10:02:32 -0500") X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 74.125.83.42 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:210458 Archived-At: Ted Zlatanov writes: forms-mode?> Several times[1] I've wished for a general data editor. > > It would behave like Customize but at the data level. The closest I've > found is `eieio-customize-object' from eieio-custom.el. The EIEIO > facilities make a lot of sense for this, and I don't think it's a big > burden for packages to map their *editable* structures to defclasses, > even if they don't buy into it generally. > > So my questions are: > > 1) are there non-EIEIO field editors, based on alists or plists when you > don't know all the fields in advance, but can specify their type? The > use case here is "I have a data structure with integer keys x, y, z; all > the rest should default to string editing." > > 2) inside Emacs, `eieio-customize-object' is only used by CEDET. Are > there other packages that use it? Any experiences, positive or negative? > > 3) currently `eieio-customize-object' is focused on editing a single > object. Are there table editors that would allow changing multiple > objects? For instance the process environment editor in > https://github.com/dgtized/list-environment.el could use that. The > use case here is "I have a data structure with a list of strings I'd > like to edit." > > Clearly this parallels the Customize interface, which knows how to > validate and edit things like '(repeat string) etc. so if there are ways > to simply use that interface, that's probably easiest. But that doesn't > solve editing multiples as in (3) and seems to have a lot of hard-coded > behavior specific to customizing named variables. So I'm not sure what > to do. > > Thanks > Ted > > > [1] https://github.com/vmware/govmomi/issues/646 and https://github.com/dgtized/list-environment.el/issues/2 for instance > > --