Как скопировать вывод из терминала zsh с помощью движений vi (или, если это невозможно, то каким-либо другим способом)?

Как скопировать вывод из терминала zsh с помощью движений vi (или, если это невозможно, то каким-либо другим способом)?

В настоящее время я использую vi motions в zsh, и это невероятно. Я много работаю в терминале, и мне надоедает переключаться обратно, чтобы переместить, чтобы скопировать вывод. Есть ли способ использовать vi motions или что-то еще, чтобы иметь возможность подняться в предыдущих результатах оболочки и скопировать их для использования позже?

решение1

Я не знаю, есть ли что-то конкретное для zsh, но режим копирования в GNU screen(по умолчанию вызываемый с помощью Ctrl-A Esc) в целом похож на vi, поэтому запуск zshвнутри screenсеанса должен дать вам по крайней мере приблизительно то, что вам нужно.

решение2

Если вы хотите скопировать команду для использования в дальнейшем:

  • ESC K возвращается в историю
  • когда вы дойдете до команды, которую вы (частично) хотите сохранить:
  • скопируйте его в именованный буфер, скажем, буфер a, с помощью "ayy" или любой другой подходящей команды vi, например "ayt=", которая скопирует все до = в буфере a
  • находясь в командной строке, вы можете вызвать этот буфер с помощью
  • ESC "ап
  • RETURN и ваша команда будет выполнена.

Связанный контент