diff --git a/packages/slate/src/commands/at-range.js b/packages/slate/src/commands/at-range.js index 574e2c8da..ed2b598b1 100644 --- a/packages/slate/src/commands/at-range.js +++ b/packages/slate/src/commands/at-range.js @@ -455,7 +455,8 @@ Commands.deleteWordForwardAtRange = (change, range) => { const offset = startBlock.getOffset(start.key) const o = offset + start.offset const { text } = startBlock - const n = TextUtils.getWordOffsetForward(text, o) + const wordOffset = TextUtils.getWordOffsetForward(text, o) + const n = wordOffset === 0 ? 1 : wordOffset change.deleteForwardAtRange(range, n) } diff --git a/packages/slate/test/commands/at-current-range/delete-word-forward/join-blocks.js b/packages/slate/test/commands/at-current-range/delete-word-forward/join-blocks.js new file mode 100644 index 000000000..2651be7fa --- /dev/null +++ b/packages/slate/test/commands/at-current-range/delete-word-forward/join-blocks.js @@ -0,0 +1,28 @@ +/** @jsx h */ + +import h from '../../../helpers/h' + +export default function(change) { + change.deleteWordForward() +} + +export const input = ( + + + + word + + another + + +) + +export const output = ( + + + + wordanother + + + +)