したがってman whatever
、whatever
コマンドに関する使用法やその他の情報を取得するために使用します。情報の関連セクションが見つかったら、man
画面に情報を残したままコマンドを終了します。したがって、上記の審判と次のコマンドを入力できます。ただし、man
コマンドは画面全体を終了して、に似た古い画面を復元しvim
ます。これを達成する方法はありますか?
したがってman whatever
、whatever
コマンドに関する使用法やその他の情報を取得するために使用します。情報の関連セクションが見つかったら、man
画面に情報を残したままコマンドを終了します。したがって、上記の審判と次のコマンドを入力できます。ただし、man
コマンドは画面全体を終了して、に似た古い画面を復元しvim
ます。これを達成する方法はありますか?
回答:
これはman
それ自体ではなくPAGER
、使用中の端末と組み合わせた選択したページャー(環境変数)についてのものだと思います。
私はあなたのページャーがおそらくだと思いますless
(最近の典型的なデフォルトのページャーは説明に適合しています)。
less
-X
あなたが探しているものの線に沿ってあなたに行動を起こすかもしれないオプションがあります。
-X or --no-init
Disables sending the termcap initialization and deinitialization
strings to the terminal. This is sometimes desirable if the
deinitialization string does something unnecessary, like clear‐
ing the screen.
たとえばPAGER="less -X" man man
、それをテストするために使用できます。この動作が望ましい場合はPAGER
、この値を永続的に設定することを検討してください。
LESS=-X
変更することを避けるために、PAGER
(それが男で働くけれども、私は、そのようなスペースを持つすべてのプログラムで動作しない100%の信頼それを行う。)
ページャーとして実行する時間が少ない場合(非常に一般的です)、ページャーの変更に対処する必要はなく、I / Oリダイレクトを実行するだけです。
man <whatever you want to man> | cat -
これにより、端末にコピーが印刷されるので、必要なときにスクロールアップできます。
-
は標準入力を意味しますcat
が、とにかく
同様にless
、他のテキストアプリケーションもvim
同じように非常に迷惑な機能を示しているので、terminfo
データベースから関連するコマンドをサポートする端末の機能を単に削除するだけです。
これらのコマンドはsmcup
およびrmcup
であり、cup
コマンド(カーソル位置)が許可された場所での移動および移動を許可するように設計されています。
タスクを自動化するために使用したシェル関数は次のとおりです。少なくともSolarisおよびおそらくほとんどのLinuxディストリビューションで動作します。
fixterminfo()
{
(
[[ ! -d /tmp/terminfo ]] && { mkdir /tmp/terminfo || return ; }
cd /tmp/terminfo || return
TERM=xterm infocmp > xterm.src.org
sed -e 's/rmcup=[^,]*,//' -e 's/smcup=[^,]*,//' xterm.src.org > xterm.src
if diff xterm.src.org xterm.src
then
echo xterm terminfo already patched
return
fi
TERMINFO=/tmp/terminfo tic xterm.src
if [ -f /usr/share/lib/terminfo/x/xterm ] ; then
XTERM=/usr/share/lib/terminfo/x/xterm
else
if [ -f /lib/terminfo/x/xterm ] ; then
XTERM=/lib/terminfo/x/xterm
else
if [ -f /usr/share/terminfo/x/xterm ] ; then
XTERM=/usr/share/terminfo/x/xterm
else
echo xterm terminfo not found ; return
fi
fi
fi
if [ ! -f ${XTERM}.org ]
then
sudo cp ${XTERM} ${XTERM}.org || return
fi
cat /tmp/terminfo/x/xterm | sudo dd of=${XTERM}
)
}
ターミナルエントリがにフォールバックしない場合は、スクリプト内の正しいターミナル名にxterm
置き換える必要xterm
があります。
2016年です。2つ目のターミナル、タブ、またはウィンドウを開くか、オンラインで男を読んでください。