Comments (4)
Have you consider using
getChangedRanges
to execute the plugin only on the changed nodes?
No. I was not aware of this. Thanks for the link.
There are many optimization ideas we can apply for spellcheck or similar usecases. For example, keeping the dictionary of words and the corresponding API result(spellcheck result) and checking the word in that one before an API request, so that we can fast lookups. That would be independent of transactions and text changes. Imagine a paragraph is cut(Say Transaction-12) and then pasted somewhere else as Transaction-42. In such case, a content diff from previous transactions wont save API cost, but the cached results would help. Am I right?
For my usecase, I was not interested in optimizing this editor usage since my purpose is just demo the spellcheck API. Improving the spellcheck and underlying morphology anayser is where I would spend time. But definitely the spellchecker won't be useful if there is no good text editor :-)
from mlmorph.
Thanks for the question. Yes, I did this intentionally, but not for any performance optimization(I have not checked if there is a problem with performance by doing like this). This was just a lazy attempt to avoid waiting for all promises(checknode
is async) to finish, aggregate all problems. I thought if I just dispatch the transaction, once the node is checked is more easier and may be faster response to user. By the way, nodes are not necessarily lines, they are probably paragraphs, or inline markup elements.
from mlmorph.
That's interesting, thank you very much.
Have you consider using getChangedRanges
to execute the plugin only on the changed nodes?
from mlmorph.
Thanks so much for your insights! Very helpful and much appreciated!
from mlmorph.
Related Issues (10)
- plural+inflection not supported HOT 1
- usage for converting number to malayalam text HOT 4
- conflict between mlphon and mlmorph
- hsft HOT 1
- broken hyperlinks
- മുൻവിനയെച്ചരൂപങ്ങൾ ഒറ്റയ്ക്ക് നിൽക്കുമോ? HOT 2
- Agglutination of noun+verb is not working HOT 2
- Use adj tag for noun agglutination HOT 1
- package is not working well in mac HOT 2
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 mlmorph.