editor.js/docs/usage.md
Nikita Nafranets 5f71c6f637 Allow holderId work with ref on dom element (#710)
* done

* update types

* attempt to simplify code

* remove useless helper

* revert holderId logic and add holder property

* Apply suggestions from code review

Co-Authored-By: dimensi <eddimensi@gmail.com>

* update holder type on string | HTMLElement

* fix typo

* add deprecated notice and fix typos

* fix wrong compare

* fix comments

* swap console.log on _.log

* update types for editor config

* update examples

* update docs

* update build
2019-04-15 18:34:13 +03:00

2.3 KiB

So how to use Editor.js

Basics

Editor.js is a Block-Styled editor. Blocks is a structural units, of which the Entry is composed. For example, Paragraph, Heading, Image, Video, List are Blocks. Each Block is represented by a Plugin. We have many ready-to-use Plugins and the simple API for creation new ones.

So how to use the Editor after Installation.

  • Create new Blocks by Enter or with the Plus Button
  • Press TAB or click on the Plus Button to view the Toolbox
  • Press TAB again to leaf Toolbox and select a Block you need. Then press Enter.

  • Select text fragment and apply a style or insert a link from the Inline Toolbar

  • Use «three-dots» button on the right to open Block Settings. From here, you can move and delete a Block or apply Tool's settings, if it provided. For example, set a Heading level or List style.

Shortcuts

We really appreciate shortcuts. So there are few presets.

Action Shortcut Restrictions
TAB Show/leaf a Toolbox. On empty block
SHIFT+TAB Leaf back a Toolbox. While Toolbox is opened
ENTER Create a Block While Toolbox is opened and some Tool is selected
CMD+B Bold style On selection
CMD+I Italic style On selection
CMD+K Insert a link On selection

Also we support shortcuts on the all type of Tools. Specify a shortcut with the Tools configuration. For example:

var editor = new EditorJS({
  //...
  tools: {
    header: {
      class: Header,
      shortcut: 'CMD+SHIFT+H'
    },
    list: {
      class: List,
      shortcut: 'CMD+SHIFT+L'
    }
  }
  //...
 });

Autofocus

If you want to focus Editor after page has been loaded, you can enable autofocus by passing autofocus to the initial config

var editor = new EditorJS({
  //...
  autofocus: true
  //...
 });

Holder

The holder property supports an id or a reference to dom element.

var editor = new EditorJS({
  holder: document.querySelector('.editor'),
})

var editor2 = new EditorJS({
  holder: 'codex-editor' // like document.getElementById('codex-editor')
})