     @movements.B = @movements.b
     @movements.W = @movements.w
 
-    if @options.runMovement
-      # This instance has been created just to run a single movement.
-      @handleMovementKeyChar @options.runMovement
+    if @options.singleMovementOnly
+      # This instance has been created just to run a single movement only and then yank the result.
+      @handleMovementKeyChar @options.singleMovementOnly
       @yank()
       return
 
     @push
       _name: "#{@id}/keypress"
       keypress: (event) =>
-        @keyPressCount += 1
+        @keypressCount += 1
         unless event.metaKey or event.ctrlKey or event.altKey
           @keyQueue += String.fromCharCode event.charCode
           # We allow at most three characters for a command or movement mapping.

class VisualMode extends Movement
  constructor: (options = {}) ->
    @selection = window.getSelection()

    switch @selection.type
      when "None"


# Todo:
# Konami code?
# Use find as a mode.
# Refactor visual/movement modes.

# This prevents printable characters from being passed through to the underlying page.  It should, however,
# allow through chrome keyboard shortcuts.  It's a keyboard-event backstop for visual mode and edit mode.
class SuppressPrintable extends Mode
  constructor: (options = {}) ->
    handler = (event) =>
      if KeyboardUtils.isPrintable event
        if event.type == "keydown"
