并没有,但是有专门做这个事情的插件,比如说 better-jumper.
Emacs 中很多时候的跳转是用的 xref-find-definitions
, xref-pop-marker-stack
.
同一个文件中,如果有选择,都可以用 meow-pop
往回取消。或是通过 meow-grab
来记录位置。
并没有,但是有专门做这个事情的插件,比如说 better-jumper.
Emacs 中很多时候的跳转是用的 xref-find-definitions
, xref-pop-marker-stack
.
同一个文件中,如果有选择,都可以用 meow-pop
往回取消。或是通过 meow-grab
来记录位置。
重做了 grab 和 kmacro 的部分。
一直尝试在做减法和消除 DWIM 风格的命令。前者是能用 emacs 内置的概念和功能的尽量用内置的,后者是一个命令可以有多个效果,但要始终一致而不是在不同情况下表现不同。
Grab 之前设计为 Meow 的第二选择区域,后来发现 Emacs 有自带的 secondary selection,而且这个自带的版本和 Linux x-selection 是相通的,所以就让 grab 使用 secondary selection.也去掉了和 kill-ring 首项的同步,添加了两个命令 meow-swap-grab
将 secondary selection 当前 region 互换;meow-sync-grab
用当前 region 内容覆盖第二选区。这里 grab 的选择区域是允许为空的,在 emacs 中为 secondary-selection-start,即用 Meta + 鼠标左键单击记录的位置。
KMacro 这里去掉了 meow-quick-kmacro
,分解成了两个 meow-kmacro-lines
和 meow-kmacro-matches
分别为录制后直接应用到选择中的每一列或选择中每个匹配 (car regexp-search-ring)
的地方。这样就是一个命令做一件事了。
今天更新了下,然后按Esc
能够从插入模式进入一般模式,但是Ctrl+[
确不能。这是什么情况?
在终端下,zsh
开启vi-mode
,Ctrl+[
是有效的
你 C-h k 看一下按 C-[ 的时候识别成了什么?我这里是可以的,因为 C-[ 就是被认为是 esc。
另外,你可以用
(define-key meow-insert-state-keymap (kbd ???) #'meow-insert-exit)
绑定到任意键回到 normal 模式。
当把所有的 26 个字母排好之后(算上大小写共有 52 个位置)里面大约 28 个命令是用来移动和选择的,差不多在一半的样子。
按理来说,完全可以左右分工,一只手做一类事。
<secape>
和ESC
虽然都是esc,但是在GUI下,似乎被识别为两种不同的按键行为。
(define-key meow-insert-state-keymap (kbd "ESC") #'meow-insert-exit)
我之前的问题就解决了。
这似乎和系统有关?
添加了直接绑定时用 kbd-macro string 的功能。所以 define-key 的时候大概用这些个用法,以自己的配置举例。
(meow-leader-define-key
;; reverse command query
'("^" . meow-keypad-describe-key)
;; cheatsheet
'("?" . meow-cheatsheet)
;; high frequency keybindings
'("e" . "C-x C-e")
'(")" . "C-)")
'("}" . "C-}")
'("." . "M-.")
'("," . "M-,")
;; window management
'("w" . other-window)
'("W" . +rotate-window)
'("o" . delete-other-windows)
'("s" . +split-window-dwim)
;; high frequency commands
'("$" . +change-theme)
'(";" . comment-dwim)
'("k" . kill-this-buffer)
'("p" . project-find-file)
'("d" . dired)
'("b" . switch-to-buffer)
'("r" . deadgrep)
'("f" . find-file)
'("i" . imenu)
(cons "a" +magit-keymap)
;; toggles
'("t" . treemacs-select-window)
'("L" . display-line-numbers-mode)
'("T" . telega)
'("R" . org-roam-mode)
'("D" . writeroom-mode))
自从从doom切换到原生后,我的小手指又开始疼了。后来试了下meow, 目前开始渐入佳境。不过奇怪的是网上的教程我始终测试不成功。今天又自己查看了下文档,又查看了我的query模板,终于发现了问题,例子中的按键和Dvrak 按键模板匹配。 主要自己懒得自己研读文档,导致用得磕磕绊绊。 多谢狗哥。
没有固定的按键的话,写文档包括看文档都有些麻烦。。
想请教一下有没有办法结合Evil + Meow keypad? 我希望主要编辑模式还是Evil,然后用keypad来输入快捷键。
感觉似乎不可以,目前 keypad 退出时会尝试激活之前的 normal 或 motion 模式。
好吧。感谢回复
可以试试evil + god-mode + evil-god-state。
怎么设置一些Special Mode默认为Normal模式,替代Motion模式?
加了个hook,搞定了。
就小拇指的疲劳问题而言,我认为 key-chord 的思路是相对更好的方案,至于在高频输入的状态下触发 key-chord
,我的解决方案是将 kj
按键作为开关,尽可能的抛弃键盘两侧需要用小拇指触发的按键。
有个变量叫 meow-state-mode-list 控制默认的模式。如果觉得有模式适合 normal,可以说一下,我加到默认值里面。因为我没用过的 mode 太多了。
GitHub - beancount/beancount-mode: Emacs major-mode to work with Beancount ledger files 是这个。
beancount mode
为什么开启了meow mode后,选中一块内容,再按 backspace
只能删除一字符?
按s, meow-kill