From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Jorgen Schaefer Newsgroups: gmane.emacs.devel Subject: Re: Emacs contributions, C and Lisp (was: Re: /srv/bzr/emacs/trunk r101338: ...) Date: Sun, 16 Feb 2014 18:07:12 +0100 Message-ID: <20140216180712.236069f6@forcix.jorgenschaefer.de> References: <87r47bi1e5.fsf@yandex.ru> <52F96284.50507@yandex.ru> <52FAE12B.6060101@yandex.ru> <52FC3BEE.60604@yandex.ru> <52FCD2B4.5080006@yandex.ru> <52FD9F1D.50205@yandex.ru> <83mwhucg1h.fsf@gnu.org> <878ute589i.fsf@fencepost.gnu.org> <83d2iqc84m.fsf@gnu.org> <87wqgxkcr9.fsf@yandex.ru> <834n41db0d.fsf@gnu.org> <52FE2985.4070703@yandex.ru> <831tz5daes.fsf@gnu.org> <8738jlohd6.fsf@yandex.ru> <83txc1bl83.fsf@gnu.org> <5300189A.9090208@yandex.ru> <83wqgv9fbj.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1392570454 22462 80.91.229.3 (16 Feb 2014 17:07:34 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 16 Feb 2014 17:07:34 +0000 (UTC) Cc: emacs-devel@gnu.org, Dmitry Gutov To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Feb 16 18:07:42 2014 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 1WF5Bu-0001PO-A1 for ged-emacs-devel@m.gmane.org; Sun, 16 Feb 2014 18:07:42 +0100 Original-Received: from localhost ([::1]:34226 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WF5Bt-0006hC-2E for ged-emacs-devel@m.gmane.org; Sun, 16 Feb 2014 12:07:41 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:50798) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WF5Bl-0006gs-RW for emacs-devel@gnu.org; Sun, 16 Feb 2014 12:07:38 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WF5Bg-0005mx-OX for emacs-devel@gnu.org; Sun, 16 Feb 2014 12:07:33 -0500 Original-Received: from loki.jorgenschaefer.de ([87.230.15.51]:39179) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WF5Bb-0005kd-8f; Sun, 16 Feb 2014 12:07:23 -0500 Original-Received: by loki.jorgenschaefer.de (Postfix, from userid 998) id 50E70201383; Sun, 16 Feb 2014 18:07:21 +0100 (CET) Original-Received: from forcix.jorgenschaefer.de (185-23-224-117.lsn.wtnet.de [185.23.224.117]) by loki.jorgenschaefer.de (Postfix) with ESMTPSA id 1AD3A20136B; Sun, 16 Feb 2014 18:07:13 +0100 (CET) In-Reply-To: <83wqgv9fbj.fsf@gnu.org> X-Mailer: Claws Mail 3.9.3 (GTK+ 2.24.22; i486-pc-linux-gnu) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 87.230.15.51 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:169649 Archived-At: On Sun, 16 Feb 2014 18:45:36 +0200 Eli Zaretskii wrote: > But how about starting with those GUI code folding > decorations like every IDE nowadays has, while Emacs doesn't? (ECB > comes close, but why shouldn't an Emacs user have that out of the box, > especially when Speedbar does something very similar for ages?) Assuming you mean something like this: http://pythonthusiast.pythonblogs.com/gallery/230/pycharm2.PNG Yes please. The whole code folding infrastructure in Emacs needs work, really. The problem, as often with Emacs, is not that it wouldn't exist at all, but that there are two dozen solutions that all have different shortcomings. > > Despite certain expectations that everything is better when written > > in Emacs Lisp, context-dependent code completion and documentation > > display support is usually delegated to an external process, and > > there are relatively new packages that use editor-agnostic > > services: Jedi for Python, nREPL for Clojure, Tern for JavaScript, > > OmniSharp for C#. > > Where's their integration with Emacs, though? Jedi: https://github.com/tkf/emacs-jedi Jedi and Rope: https://github.com/jorgenschaefer/elpy nrepl: https://github.com/technomancy/nrepl.el (and others) tern: https://github.com/marijnh/tern/tree/master/emacs (and others) OmniSharp: https://github.com/sp3ctum/omnisharp-emacs (apparently) Some of them have integration with company, too. As I said in the thread you mentioned, the problem is not that these extensions wouldn't exist for Emacs, it's that each and every one of them reinvents most of the wheel to get similar features to Emacs. > > There are even several packages that provide support for C/C++ code > > completion using Clang or libclang. They are older, though, than > > the ones mentioned above. > > And where's _their_ integration with Emacs? The integration was declined on this list because Emacs should prefer gcc over clang to protect user's freedoms, and gcc does not provide such features. > > One feature that has seen less attention is refactoring, but there > > already are a few packages providing simplistic (and some, even > > more complex) refactorings: js2-refactor, ruby-refactor, > > clj-refactor, traad and others. > > Yes, refactoring is very important, and we should have it before we > can call ourselves IDE. Various Rope-based extensions for Emacs (ropemacs, elpy) offer access to Rope's Python refactoring tools. It's still short of "real" integration, though, but the first steps are there. Regards, Jorgen