这是我应该问的问题而不是这个问题:
我想定义一堆用于在除插入模式之外的所有状态下移动、在它们之间移动、打开和关闭窗口和缓冲区的命令,并且都是“SPC”形式。能够设置一次并且在任何地方都很好(除非有冲突,尽管覆盖会很好),但如果这不容易,我也想知道如何覆盖新状态下的键绑定我遇到了我的键绑定不起作用的地方。希望知道这也能帮助我编辑任意状态下的键绑定。
我目前拥有的是:
(define-key evil-normal-state-map (kbd "SPC") nil)
(define-key evil-motion-state-map (kbd "SPC") nil)
(define-key evil-motion-state-map (kbd "SPC h") 'evil-window-left)
(define-key evil-motion-state-map (kbd "SPC j") 'evil-window-down)
(define-key evil-motion-state-map (kbd "SPC k") 'evil-window-up)
(define-key evil-motion-state-map (kbd "SPC l") 'evil-window-right)
(define-key evil-normal-state-map (kbd "SPC h") 'evil-window-left)
(define-key evil-normal-state-map (kbd "SPC j") 'evil-window-down)
(define-key evil-normal-state-map (kbd "SPC k") 'evil-window-up)
(define-key evil-normal-state-map (kbd "SPC l") 'evil-window-right)
Run Code Online (Sandbox Code Playgroud)
和“SPC H”等用于移动窗口。它在列表缓冲区或 Dired 中不起作用。邪恶领袖似乎只适用于普通模式。
我在 Haskell 中查找集合并将集合转换为列表,我看到了这个:
将集合转换为元素列表。以列表融合为准。
( https://hackage.haskell.org/package/containers-0.5.10.2/docs/Data-Set.html )
我在许多处理集合和列表转换的函数中看到了这一点。我什么时候需要担心这会做什么,在这种情况下我需要考虑什么?如果我正在处理流,我是否只需要担心它,正如建议的重复问题所暗示的那样?