Mac OS XのTerminal.appと画面/ vimのスクロールをうまくプレイする方法は?


13

OSX 10.6.3 Terminal.app

かなり専用の画面ユーザーです。Terminal.appの行バッファやスクロールが機能しないようです。それは、画面上でフレームの上部を通過するものがなくなっている間、スクロールバックできないことです。これは、他のターミナルアプリgnome、cygwinでも問題なく動作するようです。おそらくこれはシェルのenv、config、またはコマンドですか?

.screenrc:

startup_message off  
autodetach on  
shell -$SHELL  
vbell off  
defutf8 on  
caption always  
caption string "%{= wk}%w"  

ここで異なる値でdefscrollbackを使用しようとしましたが、効果はありません。

いくつかの.bashrc設定:

set -o physical  
export TERM=xterm-color  
shopt -s checkwinsize  

回答:


15

Lionでは、デフォルトのターミナルタイプが異なるため、.screenrc代わりに次の行を使用する必要があります。

termcapinfo xterm-256color|xterm-color|xterm|xterms|xs|rxvt ti@:te@


これは私には機能しません:(「echo $ TERM」は「xterm-256color」を返すので、正しい端末値であると確信していますが、提供した値は有効になりません。
Tim Harper

15

ホームディレクトリで、ファイル.screenrcに次のテキストを入力します。

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

Terminal.appでも機能します。


2
これはSnow Leopardで機能したことは知っていますが、OS X Lionでは機能していないようです。バマー:(
ティムハーパー

1
これはまさに私が探していたものでした-OS X Lion 10.7.3でTerminal.appを使って働いていたのは素晴らしいです!
-dossy

OS X Lion 10.7.5でも動作します(注:答えには若干の誤字があります。コマンドを保存する必要があるファイルは〜/ .screenrcです。つまり、ホームディレクトリの名前のファイルです。 「.screenrc」-「screenrc」ではありません。これを反映するために、今答えを編集しました。)
likethesky

8

私もそれがうまく機能するはずだと思う、さらに普遍的な:

termcapinfo xterm* ti@:te@

これは、より普遍的なエバンになるでしょう。それは合法です:

termcapinfo * ti@:te@

これが最高の答えです。
スティーブベネット14

3

古いスレッドですが、それが価値があるものは:

Mac OS X Mountain Lion 10.8.2で正しく構成されたiTerm2を使用している場合、上記のGarethの役立つ提案に従って、.screenrcファイルを作成/編集する必要はないようです。

  1. iTerm2-1_0_0_20120726をインストールします

  2. iTerm2を起動>プロファイルメニュー>プロファイルを開く>デフォルトを選択>プロファイルの編集>ターミナルタブ>にチェックを入れる:

    • アプリのステータスバーが存在する場合、スクロールバックする行を保存します
    • 無制限のスクロールバック(オプション)
  3. iTerm 2を再起動します(または新しいシェルを起動します)

  4. テスト:個人的に、AWS EC2でUbuntu 12.04.1 LTSにSSHで接続> byobuを起動(デフォルトのtmuxではなく、画面を使用するように設定済み)> Scrollbackが正常に動作(プラス、とにかくTerminalよりもiTermのmo bettah)

-dk


すごい!!
HaxElit

@David Keenanこのソリューションを投稿してよかったです!
イヴァン14年

2

短い答え:

crtl-a+ [を入力し、スクロール/矢印キーまたはpgup/ を使用しますpgdwn。「スクロールモード」(実際の名前ではない)を終了するには、を押しますEsc

長い答え:これは画面のスクロールバックバッファーに関するこの記事です。


投票にコメントしてください。
ラジュエット

このメソッドは実行中のプロセスを一時停止するように見えることに注意してください。望まれるかもしれないし、望まれないかもしれない
-cavalcade

1

Terminalのスクロールバッファを取得してgnu画面のスクロールバックを収集して動作させることが可能かどうかはわかりません。

画面内のスクロールバックについて詳しく読むことをお勧めします。いくつかの新しいキーの組み合わせを学ぶ必要があります-既にスクリーンを使用しているので、それはあなたを怖がらせるとは思いません。

Googleから少し助けを借りて、Working with the Scrollback Bufferというブログ記事を見つけました。

スクロールバックがTerminal.appのバッファーと統合されるとは、まったく期待していませんでした。ある仮想画面から別の仮想画面に切り替えると、ターミナルのバッファーはどうなりますか?1台のマシンから切断し、3時間後に再接続すると、ターミナルバッファの同期がとれなくなります。

screen別のサーバーへの私の小さなウィンドウです。私はその画面のスクロールバックバッファがセッションで保持されるのが好きなので、どこからでも接続できます。セッション内の各画面に独自のスクロールバックバッファがあることが気に入っています。

screenxtermの「代替画面」機能を使用しているため、これはgnomeとcygwinで動作していると思います。この詳細については、この画面のよくある質問ページの最初の質問で説明しています。


ありがとう、素晴らしい情報。はい、コピーモードは非常にvimに似ています。:)
rustychains

1

iTerm 2を使用します。profiles> terminalには、「アプリのステータスバーが存在する場合に行をスクロールバックに保存する」というオプションがあります。それとパッティング:

defutf8 on
termcapinfo xterm-color|xterm|xterms|xs|rxvt ti@:te@

screenrcで私のためにトリックをしました。スクロール!


0

[ターミナル]メニューに移動して[設定...]を選択し、下部のウィンドウタブをクリックすると、スクロールバックのオプションがあります。[無制限]のラジオボタンは選択されていますか?


無制限が選択されました
rustychains

0

これは古いスレッドであり、適切に回答されていることは承知していますが、私の評判は、適切な回答についてコメントするだけでは十分ではありません。この答えの静脈では、環境変数をrcfileに貼り付けることができます:

termcapinfo $TERM ti@:te@私のためにやった。参照された回答に似ていますが、ワイルドカードはありません。


0

私の場合、Mac Terminal.appの問題は、デフォルトの端末プロファイルが端末をとして宣言していないことでしたxterm-256color。プロファイル設定の「詳細」タブの「Terminfo」見出しの下にある「Declare terminal as」の値を変更すると、問題が修正されました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.