Comments (4)
I was going to speak to @maxbrunsfeld about this - it would be great if we could flush the changes out when we make an autocomplete request.
from atom-languageclient.
Can we just use onDidChangeText
instead of onDidStopChanging
? I think it behaves the exact same way, except that it fires once per transaction instead of every 300ms.
EDIT - We need to stop using onDidChange
anywhere, because certain commands can cause that event to fire many times per keystroke (e.g. performing a search-and-replace, typing with many cursors, indenting many lines, etc).
from atom-languageclient.
We can retrieve the changes since the last onDidStopChanging
event by calling buffer.createCheckpoint()
in the event handler and then calling getChangesSinceCheckpoint
when making an autocomplete request, but that will introduce some complexity because the next time the onDidStopChangingEvent
fires, we will have already synced some of those changes.
from atom-languageclient.
@maxbrunsfeld Yep we will switch from onDidChange
as soon as 1.17 becomes stable :) We need the oldText
field, which was only added recently (see atom/text-buffer#223)
from atom-languageclient.
Related Issues (20)
- TypeError: Cannot read property 'isIncomplete' of null
- abc log console
- Hook to server termination HOT 4
- Is this project dead? HOT 3
- Autocomplete handling does not meet spec HOT 1
- Why is activate() without parameter? HOT 1
- replacementPrefix generated by textEdit for autocompletion suggestions is overruled HOT 3
- Client throws error after receiving a diagnostic message HOT 1
- Include Apache Camel Language Server in wiki HOT 1
- Atom ide being deprecated HOT 8
- Succesfully cancelled request still log a (spurious) error HOT 1
- Doesn't install on windows HOT 1
- Better source of languageId HOT 2
- Request to add ide-gopls to the wiki page HOT 1
- slash or 'normalised-path' - warning HOT 1
- Update to LSP Version 3.15 HOT 1
- Hover markdown is not syntax highlighted
- Is this project dead? HOT 2
- Add Erlang to wiki of supported languages
- This repo has officially moved to atom-community HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from atom-languageclient.