TextAreaKeyMap constructor

TextAreaKeyMap({
  1. KeyBinding? characterForward,
  2. KeyBinding? characterBackward,
  3. KeyBinding? wordForward,
  4. KeyBinding? wordBackward,
  5. KeyBinding? selectAll,
  6. KeyBinding? selectLine,
  7. KeyBinding? lineStart,
  8. KeyBinding? lineEnd,
  9. KeyBinding? lineNext,
  10. KeyBinding? linePrevious,
  11. KeyBinding? insertNewline,
  12. KeyBinding? deleteBeforeCursor,
  13. KeyBinding? deleteCharacterForward,
  14. KeyBinding? deleteWordBackward,
  15. KeyBinding? deleteWordForward,
  16. KeyBinding? deleteToLineStart,
  17. KeyBinding? deleteToLineEnd,
  18. KeyBinding? deleteAfterCursor,
  19. KeyBinding? inputBegin,
  20. KeyBinding? inputEnd,
  21. KeyBinding? transposeCharacterBackward,
  22. KeyBinding? uppercaseWordForward,
  23. KeyBinding? lowercaseWordForward,
  24. KeyBinding? capitalizeWordForward,
  25. KeyBinding? copy,
  26. KeyBinding? undo,
  27. KeyBinding? redo,
})

Implementation

TextAreaKeyMap({
  KeyBinding? characterForward,
  KeyBinding? characterBackward,
  KeyBinding? wordForward,
  KeyBinding? wordBackward,
  KeyBinding? selectAll,
  KeyBinding? selectLine,
  KeyBinding? lineStart,
  KeyBinding? lineEnd,
  KeyBinding? lineNext,
  KeyBinding? linePrevious,
  KeyBinding? insertNewline,
  KeyBinding? deleteBeforeCursor,
  KeyBinding? deleteCharacterForward,
  KeyBinding? deleteWordBackward,
  KeyBinding? deleteWordForward,
  KeyBinding? deleteToLineStart,
  KeyBinding? deleteToLineEnd,
  KeyBinding? deleteAfterCursor,
  KeyBinding? inputBegin,
  KeyBinding? inputEnd,
  KeyBinding? transposeCharacterBackward,
  KeyBinding? uppercaseWordForward,
  KeyBinding? lowercaseWordForward,
  KeyBinding? capitalizeWordForward,
  KeyBinding? copy,
  KeyBinding? undo,
  KeyBinding? redo,
}) : characterForward =
         characterForward ??
         KeyBinding.withHelp(
           ['right', 'ctrl+f'],
           Arrows.right,
           'character forward',
         ),
     characterBackward =
         characterBackward ??
         KeyBinding.withHelp(
           ['left', 'ctrl+b'],
           Arrows.left,
           'character backward',
         ),
     wordForward =
         wordForward ??
         KeyBinding.withHelp(['Alt+f'], 'alt+f', 'word forward'),
     wordBackward =
         wordBackward ??
         KeyBinding.withHelp(['Alt+b'], 'alt+b', 'word backward'),
     selectAll =
         selectAll ?? KeyBinding.withHelp(['ctrl+a'], 'ctrl+a', 'select all'),
     selectLine =
         selectLine ??
         KeyBinding.withHelp(['ctrl+l'], 'ctrl+l', 'select line'),
     lineStart =
         lineStart ?? KeyBinding.withHelp(['home'], 'home', 'line start'),
     lineEnd =
         lineEnd ?? KeyBinding.withHelp(['end', 'Ctrl+e'], 'end', 'line end'),
     lineNext =
         lineNext ??
         KeyBinding.withHelp(['down', 'ctrl+n'], Arrows.down, 'next line'),
     linePrevious =
         linePrevious ??
         KeyBinding.withHelp(['up', 'ctrl+p'], Arrows.up, 'previous line'),
     insertNewline =
         insertNewline ??
         KeyBinding.withHelp(
           ['enter'],
           KeyboardChars.enter,
           'insert newline',
         ),
     deleteBeforeCursor =
         deleteBeforeCursor ??
         KeyBinding.withHelp(
           ['backspace'],
           KeyboardChars.backspace,
           'delete',
         ),
     deleteCharacterForward =
         deleteCharacterForward ??
         KeyBinding.withHelp(['delete', 'ctrl+d'], 'del', 'del char forward'),
     deleteWordBackward =
         deleteWordBackward ??
         KeyBinding.withHelp(
           ['alt+backspace'],
           'alt+${KeyboardChars.backspace}',
           'delete word',
         ),
     deleteWordForward =
         deleteWordForward ??
         KeyBinding.withHelp(['Alt+delete', 'Alt+d'], 'alt+del', 'del word'),
     deleteToLineStart =
         deleteToLineStart ??
         KeyBinding.withHelp(['Ctrl+u'], 'ctrl+u', 'del to start'),
     deleteToLineEnd =
         deleteToLineEnd ??
         KeyBinding.withHelp(['Ctrl+k'], 'ctrl+k', 'del to end'),
     deleteAfterCursor =
         deleteAfterCursor ??
         KeyBinding.withHelp(['Ctrl+k'], 'ctrl+k', 'del after cursor'),
     inputBegin =
         inputBegin ??
         KeyBinding.withHelp(['alt+<', 'ctrl+home'], 'alt+<', 'input start'),
     inputEnd =
         inputEnd ??
         KeyBinding.withHelp(['alt+>', 'ctrl+end'], 'alt+>', 'input end'),
     transposeCharacterBackward =
         transposeCharacterBackward ??
         KeyBinding.withHelp(['Ctrl+t'], 'ctrl+t', 'transpose'),
     uppercaseWordForward =
         uppercaseWordForward ??
         KeyBinding.withHelp(['alt+u'], 'alt+u', 'uppercase word'),
     lowercaseWordForward =
         lowercaseWordForward ??
         KeyBinding.withHelp(['alt+l'], 'alt+l', 'lowercase word'),
     capitalizeWordForward =
         capitalizeWordForward ??
         KeyBinding.withHelp(['alt+c'], 'alt+c', 'capitalize word'),
     copy = copy ?? KeyBinding.withHelp(['ctrl+c'], 'ctrl+c', 'copy'),
     undo = undo ?? KeyBinding.withHelp(['ctrl+z'], 'ctrl+z', 'undo'),
     redo =
         redo ??
         KeyBinding.withHelp(['ctrl+y', 'ctrl+shift+z'], 'ctrl+y', 'redo') {
  shortHelp = [
    this.characterForward,
    this.characterBackward,
    this.wordForward,
    this.wordBackward,
    this.lineNext,
    this.linePrevious,
  ];
  fullHelp = [
    [this.characterBackward, this.characterForward],
    [this.wordBackward, this.wordForward],
    [this.selectAll, this.selectLine],
    [this.lineStart, this.lineEnd],
    [this.linePrevious, this.lineNext],
    [
      this.deleteBeforeCursor,
      this.deleteCharacterForward,
      this.deleteWordBackward,
      this.deleteWordForward,
      this.deleteToLineStart,
      this.deleteToLineEnd,
      this.deleteAfterCursor,
    ],
    [
      this.inputBegin,
      this.inputEnd,
      this.undo,
      this.redo,
      this.transposeCharacterBackward,
      this.uppercaseWordForward,
      this.lowercaseWordForward,
      this.capitalizeWordForward,
    ],
  ];
}