From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Engster Newsgroups: gmane.emacs.devel Subject: Re: Better help support for EIEIO classes and methods Date: Tue, 05 Feb 2013 22:23:51 +0100 Message-ID: <87pq0eh2u0.fsf@engster.org> References: <877gmpz9mt.fsf@engster.org> <87txprhq5g.fsf@engster.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1360099446 21223 80.91.229.3 (5 Feb 2013 21:24:06 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 5 Feb 2013 21:24:06 +0000 (UTC) Cc: emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Feb 05 22:24:26 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1U2q09-0006tk-Iw for ged-emacs-devel@m.gmane.org; Tue, 05 Feb 2013 22:24:25 +0100 Original-Received: from localhost ([::1]:47382 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U2pzq-0000HC-Sz for ged-emacs-devel@m.gmane.org; Tue, 05 Feb 2013 16:24:06 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:38810) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U2pzn-0000Fn-Fn for emacs-devel@gnu.org; Tue, 05 Feb 2013 16:24:05 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U2pzk-0005nE-BO for emacs-devel@gnu.org; Tue, 05 Feb 2013 16:24:02 -0500 Original-Received: from randomsample.de ([83.169.19.17]:40694) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U2pzj-0005m8-Ua for emacs-devel@gnu.org; Tue, 05 Feb 2013 16:24:00 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=randomsample.de; s=a; h=Content-Type:MIME-Version:Message-ID:Date:References:In-Reply-To:Subject:Cc:To:From; bh=wGIer1yHhWHa+kweWPL3xmafwsvLzGRWhyGh3H2Z9VM=; b=F7ZB3XkgJUK3zlopDbcYPDgjWLaEgPSOVwGJvLG8PBFVqSoa6aOCabXk371aDv8etKGFpPTJo9YWAJhlcIZVdVAr9yqR6bXISVwU9jq7r1Mv+92f65XwwMDpZxK78cY/; Original-Received: from dslc-082-083-037-196.pools.arcor-ip.net ([82.83.37.196] helo=spaten) by randomsample.de with esmtpsa (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from ) id 1U2pzc-00037x-1i; Tue, 05 Feb 2013 22:23:52 +0100 In-Reply-To: (Stefan Monnier's message of "Mon, 04 Feb 2013 14:53:53 -0500") User-Agent: Gnus/5.130006 (Ma Gnus v0.6) Emacs/24.2.92 (gnu/linux) Mail-Followup-To: Stefan Monnier , emacs-devel@gnu.org X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 83.169.19.17 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:156833 Archived-At: Stefan Monnier writes: >> Then do a describe-function on semanticdb-file-table. You'll get this: > >> ,---- >> | semanticdb-file-table is a Lisp function in `db.el'. >> | >> | (semanticdb-file-table &rest LOCAL-ARGS) >> | >> | From OBJ, return FILENAME's associated table object. >> `---- > >> Now, this is pretty misleading since there are actually two >> implementations of this function, which will become clear if you use >> eieio-describe-generic, which will give you this: > > Here's a suggestion: in describe-function-1 we do: > > (help-fns--compiler-macro function) > (help-fns--parent-mode function) > (help-fns--obsolete function) > > How 'bout we replace that with > > (run-hook-with-args 'help-fns-describe-function-functions function) > > So EIEIO can add some text between "(semanticdb-file-table &rest > LOCAL-ARGS)" and "From OBJ, return FILENAME's associated table object."? I guess that could work. I still think it would be a bit confusing: in the first line it says this is a "lisp function in 'db.el'", and clicking on the link will only lead to the beginning of the file because the definition cannot be found. Then further down are the actual links to the implementations. But I think it is best if I just fix up an initial patch and see how it works out in practice. If it is too confusing, I can simply change that first line, too. >> This is already pretty good, but is still lacking an IMO crucial >> feature: the filenames 'db.el' and 'db-global.el' are not >> links. However, just do >> (add-hook 'temp-buffer-show-hook 'eieio-help-mode-augmentation-maybee t) > > Can't you insert the `db.el' and `db-globals.el' directly as buttons? > Or does something later strip away the text-properties of those buttons? > If that's the case, maybe we could fix that problem. I don't see why they couldn't be inserted directly. It guess this hack above is for historical reasons, when Eric wanted to reuse as much code from describe-function as possible and the augmentation function became bigger and bigger over the years. -David