问题标签 [viper-mode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
1891 浏览

vim - 在 Emacs 中使用 viper + vimpulse 时,Vim 宏不起作用

任何其他使 emacs 尽可能类似于 vim 的调整也将不胜感激。

附录:我不只是使用 vim 的主要原因是我喜欢 emacs 如何让您在两个不同的框架中打开文件[添加:抱歉,这令人困惑:我的意思是单独的windows,emacs 称之为“框架”]。这就像进行垂直分割,但我不必有一个巨大的窗口。

0 投票
8 回答
7870 浏览

vim - 带有 Viper 和 Vimpulse 的 Emacs 中缺少哪些 Vim 功能?

Vim 中缺少 Emacs 的一些重要功能,例如 comint 模式,并且没有脚本/插件可以替代它们。

与 Emacs 相比,Vim 也有一些好处,例如模式编辑和通常更好的默认快捷方式。然而,毒蛇模式让我两者兼得。Vimpulse 还启用了可视模式。不幸的是,没有任何模式可以让 Emacs 像 Vim 一样快速运行。

所以我主要学习 Vim-in-Emacs。我缺少哪些 Vim 功能?

0 投票
2 回答
1458 浏览

configuration - 在 Emacs viper-mode 中插入空格而不是 TAB

我是 vim 的长期用户,最近发现 emacs 有 viper 模式,提供两全其美(至少对我而言)。然而有一件事真的让我很困扰,因为我主要是在 python 中编码,并且混合制表符和空格是一件大事。

在插入模式下,我想在按 TAB 时插入 viper-shift-width 空格而不是 TAB。我怎样才能做到这一点?我想一些简单的 lisp 函数/设置是解决方案。

我在毒蛇模式设置中没有找到任何可以做到这一点的东西。

编辑:

(setq-default indent-tabs-mode nil)在我的 .emacs 中,但是当我在 viper 模式下处于插入模式(在插入模式的 vim 中)时,这不起作用

0 投票
1 回答
127 浏览

emacs - 如何使用 / 和 逐步进行 viper 搜索?在 emacs 中?

类似于下面 TODO 部分中提到的内容:

http://common-lisp.net/project/vial/darcs/extended-viper/vimlike.el

任何人 ?

0 投票
2 回答
380 浏览

emacs - viper-auto-indent 打破劣质模式

作为一个 vim 转换者,我已经习惯了 viper 模式。然而,我发现的一个问题是 viper-auto-indent 会破坏所有劣质模式。发生的情况是,当我进入任何一种低级模式(sql-mode、ess-mode 等)并按 Enter 键时,Enter 键实际上并没有将命令发送到低级进程,而只是给出了进程的外观绞刑。

在没有设置 viper-auto-indent 的情况下,我遇到的问题是 Enter 键在编写代码时不会自动缩进,这意味着我需要在输入新行后总是按 Tab,这很烦人。我一直在使用的解决方法是默认启用viper-auto-indent(因为我大部分时间都在编程),然后在我进入劣质模式缓冲区时禁用它。

有谁知道如何解决这个问题?或者,任何人都可以帮我提供 elisp 以在切换到内部模式缓冲区时禁用 viper-auto-indent,并在非劣质模式缓冲区中启用它吗?谢谢。

0 投票
2 回答
2130 浏览

emacs - 所有模式下的蝰蛇模式

我正在从 vi 转移到 emacs,并且使用 viper 和 vimpulse,当我C-w C-w进入一个窗口并且无法使用相同的命令返回到原始窗口时,它变得非常烦人,因为另一个缓冲区(可能是帮助缓冲区)不是在毒蛇模式下。我怎样才能解决这个问题?

我尝试将其他模式添加到 viper 配置中,并使用挂钩使它们默认以 viper 模式启动:

但是这些命令都不起作用。事实上,第一个产生了以下错误:

除了C-w C-w,我还想念无法使用 hjkl 导航。有没有办法重用 viper 设置的键绑定,而不是为每种模式重新绑定它们?

0 投票
2 回答
557 浏览

emacs - 将抄送重新绑定到抄送

我正在使用 Viper,我想将其更改C-cC-g原始 emacs 功能。我可以用 重新绑定C-g(define-key viper-vi-global-user-map "C-g" 'keyboard-quit)但我怎么能重新绑定C-c,因为它是前缀键?

谢谢!

0 投票
2 回答
924 浏览

emacs - 如何在 Emacs viper-mode 中重新映射前缀键 'c'、'd' 等

我正在使用 Colemak 键盘布局,并想从这里使用 Vimpulse 尝试 Vim 布局。然而,布局重新映射命令前缀 Vim 键 'c' 和 'd' 等,这些键似乎不容易用标准 Viper 键重新映射命令重新映射。它们都映射到 viper 键盘映射中的“viper-command-argument”,实际的键功能似乎在 Viper 源的其他地方定义。

有没有比复制我的 Viper 源的本地副本并在其中重新定义魔术前缀键值更简单的方法来将前缀命令重新绑定到其他键?

0 投票
1 回答
222 浏览

emacs - viper-insert 错误数量的参数错误

我的.viper文件中有以下功能和键绑定:

我在viper-insert我认为的命令上收到以下错误 -

0 投票
1 回答
134 浏览

vim - 使 Viper 状态全球化

EmacsWiki

有一种方法可以使 Viper 状态和 Viper 插入状态全局化,就像在 Vim(可能还​​有 vi)中一样。在 Vim(可能还​​有 vi)中,您从普通模式开始。你可以切换缓冲区,Vim 保持在正常模式。按“i”将 Vim 置于插入模式。然后,如果您通过单击另一个窗口来切换缓冲区,Vim 将停留在插入模式。你不必记住哪个缓冲区处于什么模式,你只需要记住 Vim 是什么模式。

但是很遗憾,他们没有说这个方法是什么,我也没有很快找到。有人知道吗?