anchor.diff:         "C-e" 'end-line
          "M-a" 'backward-sentence
          "M-e" 'forward-sentence)
  -      ;; have no idea what to do with vi-style bindings (yet)
  -      ;; they seem very different from Emacs ones, and there even
  -      ;; seem to be multiple visual modes (char-wise, line-wise, block-wise)
  -      #||scheme:vi
  +      ;; vi keybindings only enable use of plain "visual" mode for now
  +      scheme:vi-normal
         (list
  -       "")||#))
  +       "h" 'backward-char
  +       "j" 'forward-line
  +       "k" 'backward-line
  +       "l" 'forward-char
  +       "w" 'forward-word
  +       "$" 'end-line
  +       "<end>" 'end-line
  +       "<space>" 'forward-char
  +       "<backspace>" 'backward-char
  +       "0" 'beginning-line
  +       "<home>" 'beginning-line
  +       "v" 'visual-mode
  +       "<escape>" 'visual-mode
  +       "C-c" 'visual-mode)))
      (destructor
       (lambda (mode)
         (make-page-uneditable)
  
positive.code:                        (rem n 26)))) ""))
  
    (add-stylesheet)
    (hints-add (qsa-text-nodes))
    ;;(hints-add (qsa document "p"))
    )
  
  (defclass paragraph-hint (nyxt/web-mode::hint) ())
  
  
negative.code:     (lambda (mode)
        (make-page-editable)
        (block-page-keypresses)
        (select-paragraph)
        ;; imitating visual mode in vim
        (if (equal (keymap-scheme-name (buffer mode)) scheme:vi-normal)
          (setf *mark-set* t))))))
  
  (define-parenscript %add-paragraph-hints (&key annotate-visible-only-p)
    (defun qs (context selector)
  