Emacs злой режим привязки события мыши

Я сделал эти привязки.

  (define-key prog-mode-map [double-down-mouse-1] 'evil-jump-to-tag)
  (define-key evil-motion-state-map [down-mouse-1] nil)
  (define-key prog-mode-map [mouse-8] 'xref-pop-marker-stack)

Это работает, но есть небольшая проблема. Если позиция, с которой нужно идти, отличается от текущей, то evil / emacs переходит в визуальный режим. Я пытался понять, но не смог.

К счастью, я выяснил, что происходит, когда дважды щелкнул в режиме командного журнала. Вот такие.

<down-mouse-1>
       evil-mouse-drag-region
<mouse-1>  mouse-set-point
<double-down-mouse-1>
       evil-jump-to-tag

Я думаю, что предшествующие 2 и вызывают странный визуальный выбор и неправильное положение курсора.

Пожалуйста, дайте мне знать, если вы знаете, как отключить эти 2 только один раз, когда я хотел бы перейти к определению, дважды щелкнув.

Благодарю. заблаговременно.

1 ответ

Это помогло мне решить эту проблему. Поместите в свой файл.emacs следующее:

(with-eval-after-load 'evil-maps (define-key evil-motion-state-map [down-mouse-1] nil))

Не совсем понятно, что вызывает поведение. Пожалуйста, ознакомьтесь с этой проблемой, о которой я сообщил разработчикам режима зла, где Василий Шнейдерманн (@wasamasa) любезно предложил вышеуказанное решение.

К сожалению, не похоже, что они, вероятно, решат это. Я надеюсь, что обходной путь поможет вам.

Я также сообщил об этом в списке рассылки об ошибках Emacs.

Другие вопросы по тегам