2021-10-14 06:13:50 +08:00
---
description: If I could just go back and make everything undone … you can.
2021-10-15 03:20:21 +08:00
icon: history-line
2021-10-14 06:13:50 +08:00
---
2020-08-19 03:39:41 +08:00
# History
2021-01-25 17:35:52 +08:00
[![Version ](https://img.shields.io/npm/v/@tiptap/extension-history.svg?label=version )](https://www.npmjs.com/package/@tiptap/extension-history)
[![Downloads ](https://img.shields.io/npm/dm/@tiptap/extension-history.svg )](https://npmcharts.com/compare/@tiptap/extension-history?minimal=true)
2020-09-02 21:48:02 +08:00
This extension provides history support. All changes to the document will be tracked and can be removed with `undo` . Undone changes can be applied with `redo` again.
2020-09-23 15:52:04 +08:00
## Installation
```bash
2020-10-30 21:24:16 +08:00
# with npm
2020-09-23 15:52:04 +08:00
npm install @tiptap/extension -history
2020-10-30 21:24:16 +08:00
# with Yarn
2020-09-23 15:52:04 +08:00
yarn add @tiptap/extension -history
```
2020-09-23 18:03:03 +08:00
## Settings
2021-10-02 07:20:09 +08:00
### depth
The amount of history events that are collected before the oldest events are discarded. Defaults to 100.
Default: `100`
```js
History.configure({
depth: 10,
})
```
### newGroupDelay
The delay between changes after which a new group should be started (in milliseconds). When changes aren’ t adjacent, a new group is always started.
Default: `500`
```js
History.configure({
newGroupDelay: 1000,
})
```
2020-08-19 03:39:41 +08:00
2020-08-20 21:33:16 +08:00
## Commands
2021-10-02 05:13:49 +08:00
### undo()
Undo the last change.
```js
editor.commands.undo()
```
### redo()
Redo the last change.
```js
editor.commands.redo()
```
2020-08-19 03:39:41 +08:00
2020-09-10 17:24:33 +08:00
## Keyboard shortcuts
2021-10-02 05:13:49 +08:00
| Command | Windows/Linux | macOS |
| ------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
| undo() | `Control` `Z`< br > `Control` `я` | `Cmd` `Z`< br > `Cmd` `я` |
| redo() | `Shift` `Control` `Z`< br > `Control` `Y`< br > `Shift` `Control` `я` | `Shift` `Cmd` `Z`< br > `Cmd` `Y`< br > `Shift` `Cmd` `я` |
2020-08-19 03:39:41 +08:00
2020-09-21 22:59:28 +08:00
## Source code
2021-04-21 21:31:11 +08:00
[packages/extension-history/ ](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-history/ )
2020-08-19 03:39:41 +08:00
2020-09-02 21:48:02 +08:00
## Usage
2021-08-26 05:10:20 +08:00
< tiptap-demo name = "Extensions/History" > < / tiptap-demo >