![如何在 Emacs 中更改字符串文字(来自 VIM 用户)](https://linux22.com/image/1407796/%E5%A6%82%E4%BD%95%E5%9C%A8%20Emacs%20%E4%B8%AD%E6%9B%B4%E6%94%B9%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%96%87%E5%AD%97%EF%BC%88%E6%9D%A5%E8%87%AA%20VIM%20%E7%94%A8%E6%88%B7%EF%BC%89.png)
假设光标位于以下文件的顶部:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Hello World</string>
<string name="hello_world">Hello world!</string>
<string name="menu_settings">Settings</string>
</resources>
如何复制最后一个string
元素并将其值更改为:
<string name="edit_message">Enter a message</string>
在 VIM 中我/men<Enter>
将到达终点线,Yp
然后复制如下,然后简单ciw
地改变name
属性并cit
改变值。
请注意我不是我对使用插件让 Emacs 表现得像 VIM 感兴趣,但我更感兴趣的是学习 Emacs 的思维方式我很感兴趣组织模式我想开始使用 Emacs因为它被设计用来。
另请注意,这个问题改编自之前关于 Eclipse 的问题因为现实世界的情况非常适合学习编辑文本的不同方法。
答案1
我想这取决于你的喜好。就我个人而言,我会
C-s men
这是增量搜索;men
只是最短的子字符串,可以让我找到我想要更改的行home C-k
这会让我回到行首并删除该行C-y Ret C-y
粘贴该行,插入一个换行符并再次粘贴,将光标留在新行的末尾C-r men
,即向后增量搜索C-M-k
在我的计算机上,它必定kill-sexp
会删除menu_settings
- 类型
edit_message