Unable to use Screen efficiently in Mac's Terminal

▼魔方 西西 提交于 2019-12-18 10:14:15

问题


The post summarizes problems in using Screen in Mac's terminal when you have the following in your .zshrc

if [[ $STY = '' ]] then screen -xR; fi 
  1. Solution #1 is not working but Solution #2 works: Clipboard programs: pbcopy, pbpaste and xsel do not work at all
  2. Bug in Vim when used in Mac: Unable to have no scattered windows in Screen by .Xresources.
  3. Solved: Ctrl A stops working in terminal. This suggests me that Screen's keyboard bindings need to be changed slightly.
  4. Solved: The scrolling with touchpad does not work. By editing your .screenrc the scrollback works normally (including touchpad)
  5. Solved: Unable to have Dvorak keybindings for Screen for moving in Scrollback mod.
  6. How can you use pbcopy/pbpaste/xsel inside Screen?

回答1:


I usually solve the ctrl-a problem by setting my escape character to ctrl-z (which you generally don't need to use as often when you're running screen, since instead of backgrounding a process, you can just start up a new screen). In my .screenrc:

escape ^Zz

Scrolling using the touchpad just isn't going to work; screen is acting as a terminal emulator inside a terminal emulator, and it's just not possible for screen to switch the scrollback buffer in Terminal.app whenever you switch between screens. You're going to have to use screen's scrollback features. See this article for some tips on using screen's scrollback features.




回答2:


In screenrc:

# Make xterm scrolling work properly with screen.
termcapinfo xterm-256color|xterm-color|xterm|xterms|xs|rxvt ti@:te@

Works for Terminal.app too.




回答3:


The default OS X Terminal app is weak. Get iTerm instead:

iTerm

If I'm not mistaken, iTerm solves all of these out of the box (my install is a couple years old, so I can't test that theory now).




回答4:


Problem #3 might be solvable if you enable the alternate screen buffer. Use altscreen on in .screenrc




回答5:


Solution #1 which does not work

To be able to copy/paste in OSX put the following to your .screenrc

bind b eval "writebuf" "exec sh -c 'pbcopy < /tmp/screen-exchange'"

> Th[e] line - - sends that file to pbcopy - -.

The command is bound to C-a b (in my case, C-z b).

Solution #2 which works but is rather slow to type

Use Scrollback mode i.e. copy mode by

Coping

C-A [

Pasting

C-A ]

The solution is great, since it is the same in all terminal apps. It is similar to the clipboard as you use with your mouse.




回答6:


Q5: Impossible: The scrolling with touchpad does not work.

You can use ^A Esc to scroll up the screen. You cannot use Touchpad in Screen.




回答7:


This solves the scrollback issue, although it is somewhat broken in that it isn't aware of screen's buffers. env TERM=vt100 screen



来源:https://stackoverflow.com/questions/810025/unable-to-use-screen-efficiently-in-macs-terminal

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!