* YouCompleteMe available as a Server
@ 2014-08-05 6:27 Tom
2014-08-05 8:08 ` Daniel Colascione
0 siblings, 1 reply; 9+ messages in thread
From: Tom @ 2014-08-05 6:27 UTC (permalink / raw)
To: emacs-devel
It may be of interest of emacs code completion developers.
The developers of this VIM plugin separated the semantic
part from the VIM frontend, so the backend can be used
by other editors. It's a much more sensible approach than
reinventing the semantic wheel separately for each editor
and thus duplicating the work and wasting developer
resources.
The YouCompleteMe (YCM) code-completion plugin for Vim has been a
resounding success. It’s one of the most popular Vim plugins, if
not the most popular one.1 The main YCM logic is now available as
ycmd, an independent HTTP+JSON server. Client plugins for
different editors can easily be written.
http://val.markovic.io/articles/youcompleteme-as-a-server
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: YouCompleteMe available as a Server
2014-08-05 6:27 YouCompleteMe available as a Server Tom
@ 2014-08-05 8:08 ` Daniel Colascione
2014-08-05 12:22 ` John Yates
` (2 more replies)
0 siblings, 3 replies; 9+ messages in thread
From: Daniel Colascione @ 2014-08-05 8:08 UTC (permalink / raw)
To: Tom, emacs-devel
[-- Attachment #1: Type: text/plain, Size: 1082 bytes --]
On 08/04/2014 11:27 PM, Tom wrote:
> independent HTTP+JSON server.
It's 2014: of course we're using JSON over HTTP over TCP over IP to get
two programs running on the same machine as the same user to talk to
each other. There's even an HMAC system to avoid the usual attacks. At
the very least, I'd want a non-IP securable transport before using this
thing --- preferably one that doesn't rely on HTTP (which, based on the
source, seems to be used only to discriminate between short text commands).
(Does this program really start 30 threads to handle requests?)
Emacs has existing out-of-tree completion backends that talk to the same
modules ycm uses internally (e.g., clang and jedi), so I'm not sure ycm
is much of a win for us.
Also, the list of supported languages for identifier completion (along
with one regex that tries to match all kinds of comment) appears to be
hardcoded in ycm's C++ codebase; this design choice would make it
difficult to add support for new languages. (GNU Global has the same
flaw.) Doesn't dabbrev fill the same niche?
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 884 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: YouCompleteMe available as a Server
2014-08-05 8:08 ` Daniel Colascione
@ 2014-08-05 12:22 ` John Yates
2014-08-05 13:01 ` Danil Orlov
2014-08-05 22:22 ` Richard Stallman
2014-08-06 13:59 ` Dmitry
2 siblings, 1 reply; 9+ messages in thread
From: John Yates @ 2014-08-05 12:22 UTC (permalink / raw)
To: Daniel Colascione; +Cc: Tom, Emacs developers
[-- Attachment #1: Type: text/plain, Size: 1355 bytes --]
Agreed that YCM seems to bring little to the table. OTOH the reference web
page includes a link to an impressive snippet engine:
https://github.com/SirVer/ultisnips
/john
On Tue, Aug 5, 2014 at 4:08 AM, Daniel Colascione <dancol@dancol.org> wrote:
> On 08/04/2014 11:27 PM, Tom wrote:
> > independent HTTP+JSON server.
>
> It's 2014: of course we're using JSON over HTTP over TCP over IP to get
> two programs running on the same machine as the same user to talk to
> each other. There's even an HMAC system to avoid the usual attacks. At
> the very least, I'd want a non-IP securable transport before using this
> thing --- preferably one that doesn't rely on HTTP (which, based on the
> source, seems to be used only to discriminate between short text commands).
>
> (Does this program really start 30 threads to handle requests?)
>
> Emacs has existing out-of-tree completion backends that talk to the same
> modules ycm uses internally (e.g., clang and jedi), so I'm not sure ycm
> is much of a win for us.
>
> Also, the list of supported languages for identifier completion (along
> with one regex that tries to match all kinds of comment) appears to be
> hardcoded in ycm's C++ codebase; this design choice would make it
> difficult to add support for new languages. (GNU Global has the same
> flaw.) Doesn't dabbrev fill the same niche?
>
>
[-- Attachment #2: Type: text/html, Size: 1862 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: YouCompleteMe available as a Server
2014-08-05 12:22 ` John Yates
@ 2014-08-05 13:01 ` Danil Orlov
2014-08-05 13:20 ` John Yates
0 siblings, 1 reply; 9+ messages in thread
From: Danil Orlov @ 2014-08-05 13:01 UTC (permalink / raw)
To: John Yates; +Cc: Daniel Colascione, Tom, Emacs developers
It seems that ultisnips has totally same functionality as Yasnippet, the only
difference - last one uses elisp instead of python.
On Tue, Aug 05, 2014 at 08:22:39AM -0400, John Yates wrote:
> Agreed that YCM seems to bring little to the table. OTOH the reference web
> page includes a link to an impressive snippet engine:
>
> https://github.com/SirVer/ultisnips
>
> /john
>
>
> On Tue, Aug 5, 2014 at 4:08 AM, Daniel Colascione <dancol@dancol.org> wrote:
>
> On 08/04/2014 11:27 PM, Tom wrote:
> > independent HTTP+JSON server.
>
> It's 2014: of course we're using JSON over HTTP over TCP over IP to get
> two programs running on the same machine as the same user to talk to
> each other. There's even an HMAC system to avoid the usual attacks. At
> the very least, I'd want a non-IP securable transport before using this
> thing --- preferably one that doesn't rely on HTTP (which, based on the
> source, seems to be used only to discriminate between short text commands).
>
> (Does this program really start 30 threads to handle requests?)
>
> Emacs has existing out-of-tree completion backends that talk to the same
> modules ycm uses internally (e.g., clang and jedi), so I'm not sure ycm
> is much of a win for us.
>
> Also, the list of supported languages for identifier completion (along
> with one regex that tries to match all kinds of comment) appears to be
> hardcoded in ycm's C++ codebase; this design choice would make it
> difficult to add support for new languages. (GNU Global has the same
> flaw.) Doesn't dabbrev fill the same niche?
>
>
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: YouCompleteMe available as a Server
2014-08-05 8:08 ` Daniel Colascione
2014-08-05 12:22 ` John Yates
@ 2014-08-05 22:22 ` Richard Stallman
2014-08-06 13:59 ` Dmitry
2 siblings, 0 replies; 9+ messages in thread
From: Richard Stallman @ 2014-08-05 22:22 UTC (permalink / raw)
To: Daniel Colascione; +Cc: adatgyujto, emacs-devel
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
Emacs has existing out-of-tree completion backends that talk to the same
modules ycm uses internally (e.g., clang and jedi), so I'm not sure ycm
is much of a win for us.
And we don't want to use Clang.
--
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
Use Ekiga or an ordinary phone call.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: YouCompleteMe available as a Server
2014-08-05 8:08 ` Daniel Colascione
2014-08-05 12:22 ` John Yates
2014-08-05 22:22 ` Richard Stallman
@ 2014-08-06 13:59 ` Dmitry
2014-09-09 15:48 ` Tom
2 siblings, 1 reply; 9+ messages in thread
From: Dmitry @ 2014-08-06 13:59 UTC (permalink / raw)
To: Daniel Colascione; +Cc: Tom, emacs-devel
Daniel Colascione <dancol@dancol.org> writes:
> Emacs has existing out-of-tree completion backends that talk to the same
> modules ycm uses internally (e.g., clang and jedi), so I'm not sure ycm
> is much of a win for us.
I believe the main value proposition (aside from the "shared
infrastructure" the project advertises), would be its fuzzy matching
algorithm. Emacs has nothing comparable built-in, and flx
(https://github.com/lewang/flx) hasn't yet been integrated with any
completion engines.
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2014-09-09 15:48 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-05 6:27 YouCompleteMe available as a Server Tom
2014-08-05 8:08 ` Daniel Colascione
2014-08-05 12:22 ` John Yates
2014-08-05 13:01 ` Danil Orlov
2014-08-05 13:20 ` John Yates
2014-08-08 17:38 ` João Távora
2014-08-05 22:22 ` Richard Stallman
2014-08-06 13:59 ` Dmitry
2014-09-09 15:48 ` Tom
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.