vi-mode

vi 命令行编辑模式 - 一个奇怪的观察
vi-mode

vi 命令行编辑模式 - 一个奇怪的观察

这不是一个真正的问题,但我很好奇 - 也许有人知道解释。我在多台服务器上工作,主要是 Ubuntu 20.04 和 22.04,还有一些 Debian 11。 我总是在命令行上工作,我的编辑模式是vi。我经常会编写临时脚本,例如: root@ceres:/etc/pam.d# for i in common* > do > echo $i > grep -vE '^$|^#' $i > echo > done 然后,稍后,我搜索回相同的命令(Esc-k当然是使用 )和 prev以查看 中的命令vi。在某些系统上会发生这种情...

Admin

彩色光标在 zsh 中指示 vi 模式,但无法重置颜色
vi-mode

彩色光标在 zsh 中指示 vi 模式,但无法重置颜色

我试图在 zsh 中使用光标颜色来指示正常/插入模式,但是一旦进入正常模式,光标的颜色不会重置为插入模式下的默认颜色。 来源是: # color cursor zle-keymap-select () { if [ $KEYMAP = vicmd ]; then echo -ne "\033]12;Cyan\e[2 q\033[m" else echo -ne "\e[2 q\033[m" zle -K viins fi } zle -N zle-keymap-select zle-l...

Admin

我已经知道的
vi-mode

我已经知道的

特别是向上/向下用于历史导航。 我已经知道的 我明白dash是一个简约、不臃肿、(有些)严格的 POSIX shell。 我理解它背后的哲学,以及在其他交互式 shell 中已成为基本功能的原因,但在dash. 我研究了以下资源: 男人页 Arch Linux 维基页 以及一堆其他有关历史的页面和答案dash。 从我的阅读中,我收集到有既是历史机制,又是vi模式。但是,我找不到如何将<ESCAPE>键或[UP]/[DOWN]箭头键(或任何键)映射到任何有意义的操作。 没有bind或bindkey内置命令。 我的目标 - 使 dash 最低限度...

Admin

在 VI 模式下扩展匹配时是否可以使 readline 忽略 compspec?
vi-mode

在 VI 模式下扩展匹配时是否可以使 readline 忽略 compspec?

我在使用 bash 时使用 VI 模式,有时发现某些标准 compspec 定义不能满足我的要求。例如,似乎不知道自 Java 9 以来java您已经能够做到这一点。java Source.java 有没有办法在 VI 模式下获得“哑”扩展。在 emacs 模式下,我知道我可以这样做,ESC /并且它将扩展文件而无需执行该compspec功能。但这在 VI 模式下不起作用(ESC刚刚结束正常模式)。 ...

Admin

Zsh 在未绑定密钥上进入命令模式
vi-mode

Zsh 在未绑定密钥上进入命令模式

我喜欢 Zsh 中的 vi 模式,用bindkey -v.按 escape 会触发命令模式,但令我烦恼的是未绑定的键和弦会触发命令模式,例如 Alt+1 和 F1。有办法阻止吗? ...

Admin

如何将 vi 模式中的选择粘贴到剪贴板
vi-mode

如何将 vi 模式中的选择粘贴到剪贴板

ctrl我想通过终端中的命令+v或ctrl++shift来使用剪贴板的 vi 模式访问我在缓冲区中复制的内容v。 我在 .zshrc 中复制了以下内容:(来自此答案: 从剪贴板粘贴到启用 vi 的 zsh 或 bash shell) vi-append-x-selection () { RBUFFER=$(xsel -o -p </dev/null)$RBUFFER; } zle -N vi-append-x-selection bindkey -a '^X' vi-append-x-selection vi-yank-x-selection () {...

Admin

如何在 zsh 中使用 `Alt + .` 与 Vim 绑定
vi-mode

如何在 zsh 中使用 `Alt + .` 与 Vim 绑定

我正在使用 zsh 和bindkeys -v. Alt + .不按预期工作。它似乎在下一行重复当前在标准输入中输入但未输入的内容。 这个帖子似乎暗示它确实像在 bash 中那样工作,即获取最后输入的命令的最后一个参数。 需要什么才能使这项工作按预期进行? ...

Admin

Fish shell vi-模式缺少“重复”命令(Zsh 中的点/句点/. 键)
vi-mode

Fish shell vi-模式缺少“重复”命令(Zsh 中的点/句点/. 键)

我最近从 Zsh 迁移到 Fish,并且在 Fish 中使用 vi 模式时遇到问题。似乎没有“重复”键绑定,如 Zsh 的 vi 模式(绑定到“点” .)。我认为这是 vi 模式下最有用的命令之一,因为它可以防止您重复命令。 有没有办法将此命令添加到 Fish shell 中的 vi 模式。知道我该怎么做吗?谢谢。 ...

Admin

寻求KeyNav的替代品(用键盘驱动鼠标,适用于X)
vi-mode

寻求KeyNav的替代品(用键盘驱动鼠标,适用于X)

正如标题所述,我正在寻找 KeyNav 的用户友好型替代品。 我是 CLI&TUI 应用程序的粉丝,大部分时间都停留在终端模拟器上, 我可以使用键盘完成大部分工作。 但是,我必须不时使用浏览器,这意味着我必须使用鼠标(嗯,在笔记本电脑上,我只有触控板/触摸板),即使我有vimnium extesion. 我发现很难将指针导航到一些小元素(例如表单中的单选标签)。 所以我想知道是否存在一种快速准确的方法来模拟鼠标移动/拖动/单击。 链接 keynav 的 github 存储库 KeyNav 的主页(在开发者的博客上) ...

Admin

在 bash 中使用 vim 键绑定,有没有办法以普通模式启动?
vi-mode

在 bash 中使用 vim 键绑定,有没有办法以普通模式启动?

我刚刚开始在 bash 终端中使用 vim 键绑定,因为我经常在两者之间切换,而且我只想坚持使用一种编辑模式。因此,我将这一行添加bash set -o vi到了 my 中.bash_profile,但困扰我的一件事是您以插入模式而不是正常模式启动。有办法改变这个吗? ...

Admin

在 vi 模式下的 bash 中插入最后一个参数,不插入前导空格
vi-mode

在 vi 模式下的 bash 中插入最后一个参数,不插入前导空格

在默认(emacs)模式下使用 bash,当我点击 , 时,我会得到以下行为Esc。 . $ echo hello hello $ hello # I hit `<ESC>.` to insert this 请注意,当我点击, hello时插入的单词之前没有空格。Esc. 如果我切换到 vi 模式并配置,.我确实会得到一个前导空格: $ set -o vi $ bind -m vi-command ".":yank-last-arg $ echo hello hello $ hello # I hit `<ESC>.` to ...

Admin

Vim 模式复制粘贴在 Tmux 上不起作用
vi-mode

Vim 模式复制粘贴在 Tmux 上不起作用

我是使用 Tmux 的新手。我发现在 Tmux 中复制粘贴非常困难。所以我寻找一种更简单的方法。有些网站建议我应该使用 vim 模式,因为我对 vim 非常熟悉。但是,vim 模式复制粘贴不起作用。我不知道我做错了什么。这是我的 ~/.tmux.conf 文件。 # Improve colors set -g default-terminal 'screen-256color' # Set scrollback buffer to 10000 set -g history-limit 10000 # Customize the status line s...

Admin

如何配置 vi 模式 bash 用于复制和粘贴的缓冲区?
vi-mode

如何配置 vi 模式 bash 用于复制和粘贴的缓冲区?

总而言之: 有谁知道如何配置 vi-mode bash 使用哪个缓冲区进行拉取(复制)和粘贴? 长版: 我set editing-mode vi在我的.inputrc, 中使用该库的程序readline(即 bash)使用类似 vi 的键绑定。与此无关,我已经设置了 vim 和 tmux 以使用系统剪贴板进行拉取和粘贴。我想对 bash 做同样的事情。这似乎没有必要,因为我主要通过 tmux 使用 bash,但即便如此,能够使用p(在正常模式下)从剪贴板复制而不是C-a P或类似的东西(带有 tmux 前缀)也会很好。但是,我找不到任何有关如何配置 bash...

Admin