--- title: Upgrading to 2.0 --- Quill has been significantly modernized. Leveraging the latest browser-supported APIs, Quill now delivers a more efficient and reliable editing experience. ## Quill The Quill repository has been rewritten in TypeScript, providing an official TypeScript definition file. - If you have `@types/quill` installed, uninstall it, as it is no longer needed - SVG icons are now inlined in the source code, eliminating the need to set up loaders for .svg files in your bundler. ### Options - `strict` *removed* Previously some changes that were small in practice (renames) but would warrant a semver major bump would be hidden under this configuration. This ended up being more confusing than helpful as we will no longer make use of this. - `registry` - added to allow multiple editors with different formats to coexist on the same page. [Learn more](/docs/registries). - `formats` *removed* - `registry` is now strictly more powerful and safer. - `scrollingContainer` *removed* Quill will now automatically detect the scrollable ancestor, eliminating the need to provide this option. This new behavior is more robust and works seamlessly with nested scrollable elements. ## Clipboard - `convert` - API changed to include both HTML and text and previous functionality is broken into multiple method calls (`convert`, `onCapturePaste`) to allow more surface to hook into. - `onCapturePaste` - Added ### Configuration - `matchVisual` *removed* - Previously there was a choice between using visual or semantic interpretation of pasted whitespace; now just the semantic interpretation is used. Visual matching was expensive, requiring the DOM renderer which is no longer available in the new clipboard rewrite. - `pasteHTML` *removed* - Deprecated alias to `dangerouslyPasteHTML`. ## Keyboard - Binding `key` is no longer case insensitive. To support bindings like `key: '@'`, modifiers are taken into account so the shift modifier will affect case sensitivity. - Binding `key` now supports an array of keys to easily bind to multiple shortcuts. - Native keyboard event object is now also passed into handlers. ## Parchment - All lists use `
    ` instead of both `