Linux-使用多个控制台 + vim

Linux-使用多个控制台 + vim

我逐渐习惯了 Ubuntu 的 CLI。我习惯在编辑文件时在窗口之间切换,转到命令行运行 cmd,然后再返回等等。

我感觉 CLI 限制了我很多,因为我似乎一次只能做一件事。当然,一定有办法让我在多个命令行控制台之间“切换”吧?

另外,我正在使用 vim,有时需要访问命令行。目前,我必须退出 vim 才能进入 CLI,然后重新启动 vim。这效率不高。

有人能告诉我如何在 CLI 屏幕/控制台之间切换,以及如何从 vim 内部切换到 CLI,然后再切换回 vim,而不必关闭 vim?

顺便说一句,我的发行版是 Ubuntu Lucid Lynx (10.04 LTS)

答案1

  1. 按下ctrlz即可暂停 vim,并将其放入当前 shell 的后台。
  2. 做其他事
  3. 获得jobs后台作业列表
  4. 使用%N(N 是第 n 个后台作业)或者仅仅fg(如果它是唯一的后台作业)将 vim 带回前台。

整个主题都包含在“作业控制”一词中。您可以阅读更多内容:

关于您的“切换虚拟终端”问题:我还建议您使用screentmux作为终端多路复用器,而不是切换虚拟终端。

替代文本

答案2

听起来您正在使用完整的 GUI 桌面并使用终端程序在本地机器上执行偶尔的命令。

假设情况确实如此,那么您可以执行以下任一操作:

  • 打开终端程序的多个实例
  • 使用 Ctrl-Shift-T(或菜单或右键单击)在终端程序中打开多个选项卡
  • 安装终结者程序(sudo apt-get install terminator)——它允许您使用 Ctrl-Shift-O 水平分割屏幕或使用 Ctrl-Shift-E(或使用右键单击)垂直分割屏幕——这样您最终会得到类似这样的屏幕截图:

终结者 截图

答案3

L_AltF1通过L_AltF12VT1 至 VT12 之间的开关,以及L_AltL_ShiftF1通过L_AltL_ShiftF12VT13 至 VT24 之间的开关。L_CtrlL_AltLeftL_CtrlL_AltRight用于在活动虚拟终端之间循环。openvt可用于激活另一个虚拟终端。

您还可以screen在同一个 VT 上拥有多个控制台区域。

答案4

  1. 您可以在 Vim 中使用垂直分割 ( :vs) 和水平分割 ( :sp) 在不同的“窗口”中编辑多个文件。

  2. 上述技巧还可以与 Vim 插件 Conque 结合使用,它允许您在 Vim 内部运行任何终端命令,例如 shell。

我经常拆分 Vim 窗口来编辑多个文件,但如果我需要在单个终端中将 Vim 与 shell 结合使用,我会使用 tmux。我个人对 Conque 插件的体验并不好,但我认为我可以提一下它来帮助完成讨论。

相关内容