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: Emacs learning curve Date: Wed, 14 Jul 2010 15:06:24 +0200 Message-ID: <87d3uqusa7.fsf@engster.org> References: <4C3B6A8A.80105@gmx.de> <87wrt0e81n.fsf@telefonica.net> <62E9699C07054418AB66F9C5FCB54E5C@us.oracle.com> <87sk3oe3la.fsf@telefonica.net> <1154D96E7D2F401D849266F359E44BB9@us.oracle.com> <87ocecdzou.fsf@telefonica.net> <87hbk4i1m4.fsf@uwakimon.sk.tsukuba.ac.jp> <87bpacdpwl.fsf@telefonica.net> <878w5fizcb.fsf@uwakimon.sk.tsukuba.ac.jp> <4C3C553D.9090203@siege-engine.com> <87vd8jlh4h.fsf@lola.goethe.zz> <87mxtvl7l6.fsf@lola.goethe.zz> <87r5j7webw.fsf@engster.org> <87bpabl55y.fsf@lola.goethe.zz> <87hbk3w79e.fsf@engster.org> <87wrsyhj5w.fsf@uwakimon.sk.tsukuba.ac.jp> <4C3DA2EE.7070607@siege-engine.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1279113014 27497 80.91.229.12 (14 Jul 2010 13:10:14 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 14 Jul 2010 13:10:14 +0000 (UTC) Cc: emacs-devel@gnu.org To: "Eric M. Ludlam" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Jul 14 15:10:12 2010 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1OZ1iz-0006S7-7O for ged-emacs-devel@m.gmane.org; Wed, 14 Jul 2010 15:10:09 +0200 Original-Received: from localhost ([127.0.0.1]:34610 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OZ1iy-00012b-5B for ged-emacs-devel@m.gmane.org; Wed, 14 Jul 2010 09:10:08 -0400 Original-Received: from [140.186.70.92] (port=37877 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OZ1is-00010j-Hd for emacs-devel@gnu.org; Wed, 14 Jul 2010 09:10:03 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OZ1fV-0002gE-8H for emacs-devel@gnu.org; Wed, 14 Jul 2010 09:06:35 -0400 Original-Received: from m61s02.vlinux.de ([83.151.21.164]:43894) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZ1fU-0002ft-TQ for emacs-devel@gnu.org; Wed, 14 Jul 2010 09:06:33 -0400 Original-Received: from [134.76.4.240] (helo=myhost) by m61s02.vlinux.de with esmtpsa (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.69) (envelope-from ) id 1OZ1fS-0002yZ-NE; Wed, 14 Jul 2010 15:06:30 +0200 In-Reply-To: <4C3DA2EE.7070607@siege-engine.com> (Eric M. Ludlam's message of "Wed, 14 Jul 2010 07:43:42 -0400") User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.2 (gnu/linux) Mail-Followup-To: "Eric M. Ludlam" , emacs-devel@gnu.org X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:127278 Archived-At: Eric M. Ludlam writes: > I had responded to a couple different assertions. One was something > David Kastrup wrote: > > | The question is why the respective facilities are not part of the > | generic Emacs language support framework. Support for every language > | has a completely disjoint set of features, keybindings, highlighting, > | and so on of wildly differing quality, design and usability. > > My response was meant that CEDET is not a C/C++ only feature, but an > infrastructure under which a mode can support code completion and the > like. CEDET doesn't tackle keybindings or font lock since Emacs > already does that. However, a suite of minor modes based on the > infrastructure of CEDET can provide features (like code completion) > which a mode author then does not need to implement themselves if a > grammar is supplied. Maybe I can give a small example for this, though it's more of a shameless plug. I've extended the Minimap package to include information from the Semantic parser. See the first screenshot at http://www.emacswiki.org/emacs/MiniMap You'll see on the left that certain areas have a dark gray background, which correspond to Semantic tags. Those areas have an overlay in the middle with their name, in the font lock color for the class (function/variable/type). The code which does that is maybe 20 lines and almost trivial. It should work with every mode which is supported by CEDET. All one needs to know to access Semantic information is in the "Semantic Application Development" manual; I don't know this is included in Emacs, though. -David