Commit Graph

114 Commits

Author SHA1 Message Date
Strahinja Val Markovic
207a0779c3 Ensuring filename is a plain Python string
We don't want to send a unicode string to the user's ycm_extra_conf.py file.
This should fix problems with sending the filename to YCM's CompilationDatabase
API.
2013-11-05 10:28:40 -08:00
Strahinja Val Markovic
f91790e2ee Only importing ycm_core in ycmd
I'm not sure, but it seems that loading both ycm_client_support and ycm_core
into the same process is causing random ycmd crashes.
2013-10-28 12:17:18 -07:00
Strahinja Val Markovic
6e782508b3 Now possible to sent Vim data to FlagsForFile func
Fixes #612.
2013-10-26 16:22:43 -07:00
Strahinja Val Markovic
63534e1a6f Fixing some cs completer subcommands failing
The subcommand would execute correctly, but since there would be no return
statement, it would hit the bottom of the function and raise an error.
2013-10-26 12:28:10 -07:00
Strahinja Val Markovic
78107361b3 Killing some dead code 2013-10-22 13:48:15 -07:00
Strahinja Val Markovic
5b76bcf8b7 GetDetailedDiagnostic actually takes 2 params
The Completer class version of the func only took 1 by mistake.
2013-10-22 13:46:24 -07:00
Strahinja Val Markovic
9d8fdac518 Minor cleanup of Completer comments 2013-10-18 12:35:40 -07:00
Strahinja Val Markovic
436017bd4d Now using new ycm_client_support shared lib
This means we can now load just ycm_client_support (which is a much smaller
library) into Vim and ycm_core into ycmd. Since ycm_client_support never depends
on libclang.so, we never have to load that into Vim which makes things much,
much easier.
2013-10-15 14:15:04 -07:00
Strahinja Val Markovic
98f549aeae More robust way of picking an unused local port
Fixes #584.
2013-10-14 20:38:45 -07:00
Strahinja Val Markovic
bc607724f0 Ensuring ident completion works always
A bug turned it off when omni completion was available.

Fixes #583.
2013-10-14 13:29:28 -07:00
Strahinja Val Markovic
a534a58477 Checking if ultisnips data present before using it
Mentioned in issue #583, but it's not the root cause.
2013-10-14 12:32:18 -07:00
Strahinja Val Markovic
8ce07f508c <c-space> again filters the semantic completions
Fixes #576.
2013-10-09 20:20:34 -07:00
Strahinja Val Markovic
70a51be209 Making the cs_completer test less flaky 2013-10-09 13:17:53 -07:00
Strahinja Val Markovic
d84f2b0e8e cs_completer works again 2013-10-08 20:52:04 -07:00
Strahinja Val Markovic
daa0d50655 Removed the logging code from Clang completer
The exceptions are already logged by Bottle so what's the point.
Also removed an outdated TODO.
2013-10-08 20:20:15 -07:00
Strahinja Val Markovic
3d55748400 Correctly handling ycm_extra_conf files now
The user is asked about loading unknown extra conf files, as they were before.
2013-10-08 16:21:43 -07:00
Strahinja Val Markovic
5000d2e4ae NativeFiletypeCompletionAvailable now a local call
It used to block on the server to get the data. Now it doesn't anymore. This
speeds up Vim startup.
2013-10-07 16:10:48 -07:00
Strahinja Val Markovic
c7be1f1b47 Omni completion works again 2013-10-07 15:47:48 -07:00
Strahinja Val Markovic
ff7fa74fc9 <c-space> works again (forces semantic completion) 2013-10-07 13:09:34 -07:00
Strahinja Val Markovic
a836f68142 Fileype completer calls InCFamilyFile correctly 2013-10-07 11:03:30 -07:00
Strahinja Val Markovic
cb98dc8537 Fixing python 2.6 compatibility
string.format() requires the number inside '{}' for Python 2.6.
2013-10-07 11:03:30 -07:00
Strahinja Val Markovic
9747bbc26f Removing the sys.path changes from jedi_completer
This not needed anymore, the correct path to jedi is added to sys.path in
ycmd.py
2013-10-07 11:03:30 -07:00
Strahinja Val Markovic
da723b1425 Moving Jedi under third_party 2013-10-07 11:03:30 -07:00
Strahinja Val Markovic
c43327d176 YcmShowDetailedDiagnostic works again 2013-10-07 11:03:29 -07:00
Strahinja Val Markovic
c274b7d4f8 Fixing the diagnostic-related race conditions
Now, every FileReadyToParse event returns diagnostics, if any. This is instead
of the previous system where the diagnostics were being fetched in a different
request (this caused race conditions).
2013-10-07 11:03:29 -07:00
Strahinja Val Markovic
b9bb788a2a Diagnostics work again... somewhat.
There appear to be timing issues for the diag requests. Somehow, we're sending
out-of-date diagnostics and then not updating the UI when things change.

That needs to be fixed.
2013-10-07 11:03:29 -07:00
Strahinja Val Markovic
6c53bad58f No more threading in completers!
The server is multi-threaded and will spawn a new thread for each new request.
Thus, the completers need not manage their own threads or even provide async
APIs; we _want_ them to block because now were implementing the request-response
networking API.

The client gets the async API through the network (i.e., it can do something
else while the request is pending).
2013-10-07 11:03:28 -07:00
Strahinja Val Markovic
3ca758a581 Getting debug info works again 2013-10-07 11:03:28 -07:00
Strahinja Val Markovic
c9b4e9ed3a Minor code style changes 2013-10-07 11:03:28 -07:00
Strahinja Val Markovic
a6a364de41 Fix bug in cache clear clang completer subcommand 2013-10-07 11:03:27 -07:00
Strahinja Val Markovic
4a95c2fc7c GoTo commands for clang completer work again 2013-10-07 11:03:27 -07:00
Strahinja Val Markovic
fe0c0a1607 GoTo commands work again 2013-10-07 11:03:27 -07:00
Strahinja Val Markovic
4c6a69b432 The UltiSnips completer works again 2013-10-07 11:03:27 -07:00
Strahinja Val Markovic
c01bc0481a Refactoring the server tests to use a helper func
This makes the tests smaller, less repetitive and easier to maintain.
2013-10-07 11:03:27 -07:00
Strahinja Val Markovic
3b9b9ed036 Ident completer loads syntax keywords again 2013-10-07 11:03:27 -07:00
Strahinja Val Markovic
088eb4d0d2 Cleaner server shutdown
Listening for VimLeave was sub-optimal. popen.terminate() is much cleaner.
2013-10-07 11:03:26 -07:00
Strahinja Val Markovic
1730660555 A (barely) working version of ycmd + client
Still a lot of work to do.
2013-10-07 11:03:26 -07:00
Strahinja Val Markovic
fba4477ca3 Deleting a stray 'print' statement
This was put in for debugging at some point.
2013-10-07 11:03:26 -07:00
Strahinja Val Markovic
1d29a9a3bd Updating Jedi to v0.7.0 2013-10-07 11:03:26 -07:00
Strahinja Val Markovic
f5ad981f67 Converting Jedi unicode data to strings 2013-10-07 11:03:26 -07:00
Strahinja Val Markovic
6acc381262 Identifier completer now fully decoupled from Vim 2013-10-07 11:03:26 -07:00
Strahinja Val Markovic
a7c609efd7 More python unicode object support in ycm_core 2013-10-07 11:03:26 -07:00
Strahinja Val Markovic
3f0b719846 Encoding data to utf8 if 'unicode' object
ycm_core only deals with utf8 and the functions only accept python string
objects.
2013-10-07 11:03:26 -07:00
Strahinja Val Markovic
29bb90a6b4 Decoupling completers from Vim; still WIP & broken
Note to self: squash this commit before merging into master.
2013-10-07 11:03:25 -07:00
Strahinja Val Markovic
28c3d9648c Deleting some dead code 2013-10-07 11:03:25 -07:00
Strahinja Val Markovic
a26243092f Now more explicit about accessing user options
We don't inspect the Vim process anymore when we want an option; we parse the
options on startup and then use that data structure.
2013-10-07 11:03:25 -07:00
Strahinja Val Markovic
1d224eb8b4 Indentation fix 2013-10-07 11:03:25 -07:00
Strahinja Val Markovic
22256f361d ShouldUseNow now takes a current_line param
This is now used instead of examining the vim.current.line property.
2013-10-07 11:03:25 -07:00
Strahinja Val Markovic
9d34fad24f Now parsing file on every normal mode cursor move
This is still fast & efficient because if we detect that the buffer hasn't been
changed (by examining b:changedtick), the parse doesn't proceed.

In effect, we now make sure we parse the file after every change to the buffer
as soon as that change happens. This means that compilation error feedback will
now be much, MUCH quicker.
2013-08-16 14:49:00 -07:00
Chiel92
44786c58ef Merge https://github.com/Valloric/YouCompleteMe 2013-08-16 21:03:39 +02:00