Commit Graph

170 Commits

Author SHA1 Message Date
Ben Jackson
7989b7b0fd Support for additional FixIts on java completions
Java completer can include FixIts which are applied when a completion
entry is selected. We use the existing mechanism implemented for c-sharp
to perform these edits using the CompleteDone autocommand.

However, the existing mechanism relies on pattern matching the source to
work out which item was completed. Vim patch 8.0.1493 introduces support
for user_data on completion items, so when available we populate it with
the completion array index of the item and use that to get the exact
element that was selected. This is both a lot faster and a lot more
accirate.

Of course when applying these 'FixIts' we don't interrupt the user with
confirmation or the quickfix list as this would just be annoying. If the
server reports that an edit must be made, we just make the edit. This is
achieved by adding a silent flag to ReplaceChunks.
2018-02-11 18:11:34 +00:00
Ben Jackson
aacff42403 Update help doc 2018-02-10 21:47:34 +00:00
Boris Staletic
605ef42cd6 Drop Python 2.6 and Python 3.3 2018-01-30 18:34:50 +01:00
micbou
af5a3ae36e
Move macOS builds to CircleCI 2018-01-20 10:36:18 +01:00
zzbot
e59e3afcde Auto merge of #2848 - micbou:cs-completer-property-platform, r=bstaletic
[READY] Update MSBuild command in documentation

See PR https://github.com/Valloric/ycmd/pull/884. Also, remove the part where we suggest to replace `msbuild` with `xbuild` since [`xbuild` is deprecated](http://www.mono-project.com/docs/about-mono/releases/5.0.0/#xbuild).

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/valloric/youcompleteme/2848)
<!-- Reviewable:end -->
2017-12-26 14:12:16 -08:00
micbou
497a803188
Prompt the user to select a logfile with YcmToggleLogs
When no argument is given to the YcmToggleLogs command, instead of displaying
the list of available logfiles, prompt the user to open (or close if already
open) one of them.
2017-12-22 19:58:29 +01:00
micbou
0f836e8407
Update MSBuild command in documentation
Specify the Platform property in the MSBuild command. Do not mention xbuild.
2017-12-07 15:40:58 +01:00
micbou
103d45fc4c
Update JavaScript documentation 2017-12-01 17:56:12 +01:00
micbou
7e2e1e7d34
Only call completefunc if needed
Do not call user's completion function if the start column is after the current
column or if there are no candidates. This avoids keeping the user in
completion mode even if there is no completion menu.
2017-11-15 18:51:55 +01:00
micbou
75ecccef90
Update 7-Zip requirement to 16.04 or later 2017-10-26 14:40:38 +02:00
zzbot
cd41727462 Auto merge of #2802 - micbou:auto-insert-wrap, r=bstaletic
[READY] Mention auto-insert wrapping bug in the FAQ

Prior to version 8.0.0127, Vim would insert the first suggestion when leaving completion while auto-wrapping text. See issue https://github.com/vim/vim/issues/1312 and [the corresponding patch](73fd498886). This would cause issues #771 and #2789 when using YCM.

We mention this bug in the FAQ and suggest to update to Vim 8.0.0127 or later.

Closes https://github.com/Valloric/YouCompleteMe/issues/771.
Closes https://github.com/Valloric/YouCompleteMe/issues/2789.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/valloric/youcompleteme/2802)
<!-- Reviewable:end -->
2017-10-14 08:11:30 -07:00
micbou
81be23b59e
Update Rust documentation
Mention rustup to get the Rust source code.
2017-10-10 21:26:47 +02:00
micbou
8429ff28ee
Rename completer options in documentation 2017-10-10 20:25:41 +02:00
micbou
24690b44b0
Mention auto-insert wrapping bug in the FAQ 2017-10-08 11:42:43 +02:00
micbou
8817bc1f25
Remove obsolete notes in documentation 2017-09-18 00:02:27 +02:00
micbou
d61944098a
Do not open location list at the bottom of screen
The location list is specific to the current window so it should be opened
inside the current window, not to full width at the bottom of the screen.
2017-09-17 20:34:52 +02:00
micbou
ed9f0b9449
Update extra conf link in documentation 2017-09-10 16:33:24 +02:00
micbou
70121844fe
Add maximum number candidates options to documentation 2017-09-10 16:33:24 +02:00
micbou
a0f110622f
Fix typo in documentation 2017-09-10 12:07:07 +02:00
micbou
f185b4ef12
Update ClearCompilationFlagCache docs 2017-09-05 14:17:39 +02:00
micbou
9f5b45cdc3
Pin YCM extra conf version in documentation 2017-08-01 18:34:56 +02:00
micbou
904c23f7ce
Fix typo in documentation 2017-07-31 23:04:56 +02:00
Boris Staletic
8f68f1ca3e Correct vim 7.4 patch requirement 2017-06-28 08:06:20 +02:00
micbou
377e472b7e
Add key mappings to close completion menu 2017-06-21 02:58:15 +02:00
micbou
ea48fcffea
Require UTF-8 encoding 2017-06-19 18:00:19 +02:00
micbou
9c6fd9f3a7
Update C# instructions in documentation 2017-06-05 11:34:38 +02:00
micbou
d44ad0894b
Display diagnostics asynchronously
Use the timers feature to display diagnostics asynchronously instead of waiting
for an autocommand to trigger.
Increase Vim version requirement to 7.4.1578.
Drop the CursorHold and CursorHoldI autocommands.
Parse buffer on the TextChanged autocommand instead of CursorMoved.
2017-05-15 23:57:09 +02:00
micbou
4e08cde268
Shut down ycmd after 30 minutes of inactivity 2017-05-15 11:20:48 +02:00
micbou
9fd6c8e533
Add FAQ entry about YCM not shutting down 2017-05-11 02:25:06 +02:00
micbou
f7db6a1f36
Update autocommands examples 2017-05-05 21:36:47 +02:00
micbou
51cf5f9dde
Fix indentation in documentation 2017-04-11 15:48:55 +02:00
micbou
de330302b6
Update Visual Studio generators in documentation 2017-04-08 12:43:10 +02:00
micbou
2e5b2e1cef
Update copyright years 2017-04-06 15:03:40 +02:00
micbou
78d04b30bc
Fix links in documentation 2017-04-01 20:09:25 +02:00
micbou
cfac475fb3
Remove outdated FAQ entry 2017-03-29 18:16:21 +02:00
micbou
edf7e600c8
Update ycmd
Release notes:
 - update racerd;
 - update Tern to 0.21.0;
 - fix finding node on Debian-based distributions;
 - add Visual Studio 2017 support;
 - drop Visual Studio 2012 support.
2017-03-12 12:03:50 +01:00
micbou
0d476a0164
Refactor diagnostic commands
Move s:ShowDiagnostics and s:ForceCompileAndDiagnostics logic to the Python layer.
Clear message about compilation blocking Vim once it is done.
2017-02-20 18:28:49 +01:00
Ben Jackson
3eb8a33ec2 Update vim documentaion 2017-01-08 18:02:35 +00:00
Homu
39be8b1aad Auto merge of #2430 - micbou:client-logfile, r=Valloric
[READY] Add client logfile

We have a lot of issue reports with Python exceptions that interrupt user workflow or even worse make the editor unusable and force users to restart it (e.g. issue https://github.com/Valloric/YouCompleteMe/issues/2192). We really want to avoid that but at the same time we can't just silence these exceptions because they are useful to debug the issue. Logging them to Vim `:messages` is not practical because we can't write to it without displaying messages in the status line which, in addition to distract users, may lead to various issues like the infamous `Press ENTER or type command to continue` message. This is why a logfile is needed.

For now, only server crashes are logged but more logging will be added: connection issues with the server (`ConnectTimeout`, `ReadTimeout`, etc. exceptions), UltiSnips unavailability, requests sent to the server, etc.

The behavior of the `:YcmToggleLogs` command is changed to accept multiple arguments where each argument is a logfile name. Each of these files is opened in a separate window or closed if already open. When no argument is given, the list of available logfiles is displayed to the user. Example:
```
Available logfiles are:
ycm_pz83u7.log
ycmd_23830_stderr_gf6j3i.log
ycmd_23830_stdout_gmpa_k.log
```

With this change and PR #2342, we will add the completers logfiles to the list of files that can be opened with the `:YcmToggleLogs` command.

A bunch of tests are added that cover almost all changes introduced by this PR.

<!-- Reviewable:start -->

---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/valloric/youcompleteme/2430)
<!-- Reviewable:end -->
2016-11-28 00:30:18 +09:00
micbou
e179e860b4
Bump Clang version in documentation 2016-11-22 02:13:09 +01:00
micbou
b93c1fd47c
Add client logfile 2016-11-19 18:47:43 +01:00
micbou
9605c1d50a
Add Gitter badge 2016-10-31 18:13:36 +01:00
Homu
c895f09375 Auto merge of #2396 - dpzmick:patch-1, r=micbou
Update README.md

# PR Prelude

Thank you for working on YCM! :)

**Please complete these steps and check these boxes (by putting an `x` inside
the brackets) _before_ filing your PR:**

- [x] I have read and understood YCM's [CONTRIBUTING][cont] document.
- [x] I have read and understood YCM's [CODE_OF_CONDUCT][code] document.
- [x] I have included tests for the changes in my PR. If not, I have included a
  rationale for why I haven't.
- [x] **I understand my PR may be closed if it becomes obvious I didn't
  actually perform all of these steps.**

[cont]: https://github.com/Valloric/YouCompleteMe/blob/master/CONTRIBUTING.md
[code]: https://github.com/Valloric/YouCompleteMe/blob/master/CODE_OF_CONDUCT.md

# Why this change is necessary and useful
ycmd has this support: https://github.com/Valloric/ycmd/pull/628

no tests needed, only a change to docs

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/valloric/youcompleteme/2396)
<!-- Reviewable:end -->
2016-10-28 15:47:24 +09:00
David Zmick
0acafe7fc7 Update README.md
https://github.com/Valloric/ycmd/pull/628
2016-10-27 20:14:49 -05:00
dhleong
04c48e48c4 Rebuild the vim doc 2016-10-23 10:50:58 -04:00
dhleong
abc0dd5e31 Add some documentation for g:ycm_quiet_messages 2016-10-22 23:31:46 -04:00
micbou
9d6a17b140
Add coverage support
Use codecov for coverage reports. Add badge to README.
2016-10-12 23:03:37 +02:00
micbou
a68f59410f
Bump Ubuntu version to 14.10 in documentation
Ubuntu 14.10 has Vim 7.4.273.
2016-10-03 13:00:54 +02:00
Ben Jackson
94a81144af Update ycmd. Update docs for GetTypeImprecise and GetDocImprecise 2016-10-02 18:36:11 +01:00
Homu
cd6a16f0ae Auto merge of #1901 - oblitum:use-TextChangedI-when-available, r=micbou
[READY] Bumps required Vim to 7.4.143 and adopts TextChangedI.

Long and personal experience, when TextChangedI gets used, YCM seems
to perform better, diagnostics will trigger much less frequently at
inappropriate occasions, even less with whitespace agnostic triggers,
if I recall correctly...

There's a previous discussion at #1337. At the time this change was bundled in
a single pull request with other changes.

It has gone through the test of the time, sole issue I've stumbled upon was reported
by @puremourning at https://github.com/oblitum/YouCompleteMe/issues/10. This
is what me and other users of my fork use daily.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/valloric/youcompleteme/1901)
<!-- Reviewable:end -->
2016-10-01 21:46:05 +09:00