在Vim中,我通常通过删除行(使用dd或可视行模式)移动行,将光标移动到新位置,然后将它们放在p中:
first
second
third
如果我的光标在第二行,我可以使用ddp向下移动它:
first
third
second
但是在Emacs +邪恶模式下,将行放回不像预期的那样工作:例如,如果当我点击p时,我的光标位于第三位的i上,那么我的结果是:
first
thisecondrd
我如何使Emacs +邪恶模式插入新的行时,把整个拉线?
在C中,我希望当我输入{,然后}时,emacs会在它们之间插入一个新行,然后把光标放在它们之间。例如:
int main() {
现在,我键入},将会发生以下情况:
int main()
{
//cursor is here
}
编辑:忘记提到-我想让emacs知道,当定义一个函数时,它应该做上面描述的事情,但是当做for循环时,或者if语句时,例如,我希望它做以下事情:
if (bla bla) {
类型}和...:
if (bla bla) {
//cursor here
}
下面是我在vim中编辑的代码片段。目前,我的光标处于插入模式的。我想删除光标上方的大括号({)。什么是实现这一目标的最佳方式。
目前我正在做这件事,如下所示
ESC => to go back to escape mode
k => to move up to previous line
x => delete {
j => to move back to the original line
i => switch back to insert mode to continue my editing
long long modpow(long
虽然这个问题与Emacs (可能还有Auctex)中LaTeX的格式有关,但我相信这个问题可以应用于Emacs中更一般的情况,比如圆括号、方括号和大括号等分隔符。
我希望能够使用Emacs (和elisp)来做以下事情,但不知道从哪里开始。假设我有:
(This is in parentheses)
通过Emacs中的一些键绑定,我希望Emacs在光标旁边找到匹配的分隔符(我知道Emacs可以做到这一点,因为它可以在各种模式下突出显示匹配的分隔符),并能够将它们都更改为
\left( This is in parentheses \right)
我希望使用的分隔符是:(...)、[...]、\
仅供参考,我是.emacs文件的新手。
我喜欢将我的.emacs文件设置为自动缩进和自动配对,这样可以使编写代码的速度更快。我已经找到了一些关于如何独立完成这些事情的信息,但我不确定如何在我拥有的emacs版本中将它们放在一起。最后,我想将这些定义设置为我正在用哪种语言编写代码。作为开始,我将使用java作为示例。
显然,自动配对",(,‘是相当直接的。我只想让它自动插入一个闭合",),’并将光标放在中间。
对于{,我希望它自动插入两个换行符和光标位于中间的结束}。
示例
while (true) {
<--- cursor would be here with au
在Emacs中,我希望实现类似IDE的行为,并使用括号块和光标位置。也就是说,当我输入(例如int main() { RET )时,它应该扩展到
int main() {
I <- cursor position
}
我已经安装了smartparens插件来自动插入对,但它不处理游标:
int main() {
I <- cursor position}