Comments (7)
Quill's clipboard module deliberately does not want to store all baseDeltas (which would be the entire document). Also its clipboard deals with insert-only deltas which can use diff()
if one is willing to store all baseDeltas. Are there other use cases you have in mind?
from delta.
Right, you wouldn't be storing the baseDelta
s. I'm envisioning this as a better way to do diff()
that is aware of what the delta was that is making the change.
So instead of
const undoDelta = baseDelta.compose(delta).diff(baseDelta);
you can do
const undoDelta = delta.undoCompose(baseDelta)
from delta.
I see what you mean now. baseDelta
needs to be an insert-only delta I believe but delta
can be an arbitrary delta in your examples. I can see its use for undo and could replace guessUndoDelta. Are there other use cases though? If not it should arguably belong in Quill instead of here. Either way is this something you'd be willing to contribute a PR to?
from delta.
Yup, I'd definitely be willing to contribute a PR. I'd much rather have it live here, because quill is tied to the dom, and this undoCompose
would be data-only
from delta.
Great thanks! Let me know when there is something to look at or if you have questions getting started.
from delta.
Hey is this something you are still planning on working on? We were planning on adding this soon if not.
from delta.
I haven't gotten to this yet, it's a little farther down on my priority list
from delta.
Related Issues (20)
- Validity checking insert/delete/retain operations HOT 1
- Release the package as es6 module HOT 1
- Format of a multi-line block quote?
- How to find the effective length of a Delta
- Quill delta / Angular 13 / Webpack error HOT 3
- Supporting nested quotes and lists HOT 1
- Question: how to convert Delta to DeltaStatic? HOT 1
- Definition of "document" vs "non-document" delta HOT 1
- Any plans for the ES version? HOT 5
- Delta `alignment` attribute is ambiguous and doesn't have the right value HOT 1
- Word-level diff behavior HOT 3
- Get incorrect delta by Delta.transform HOT 1
- Generic `Delta<T>`? HOT 5
- Delta doesn't insert empty line
- Bug in production from using Esnext + vite HOT 2
- can't diff embed bolt
- RFC:Nested combinations
- Feature request: an operation to convert Delta format to html HOT 2
- Request support for ESM HOT 3
- I packed quill-delta with a webpack but can't use new Delta() 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 delta.