不完全ですが、役に立つかもしれないアイデアがいくつかあります。
方法1-マウス。
端末のスクロールバーを使用します。
詳細(想定xterm。他の端末では調整が必要です。)
- スクロールバーが有効になっていない場合は有効にします。(では
xterm、Ctrl + Button2で取得するメニューにあります。)
- オプションで
less実行されていないことを確認してください-c(LESS環境変数でこのオプションを有効にしていますが、これからやろうとしていることと干渉するので、入力-cする必要があります)。
- 任意の
lessコマンドを使用して、コピーする最初の行が画面に表示されるように上下にスクロールします。
- triple-Button1選択した開始行を選択します。
- コピーする最後の行が画面に表示されるまで下にスクロールします。
/検索ではなく、スペースバーまたは他の単純なスクロールキーのみを使用する必要があります。ここでのポイントは、lessすべての行を端末に送信してコピーできるようにすることです。
- 選択範囲を拡張するには、選択した終了行のButton3。
考えられる困難:スクロールバックバッファーが十分に大きくない可能性があります。それは中に変更することができるxtermとのsaveLinesリソースまたは-slコマンドラインオプションが、私はすでに実行しているxtermの中でそれを変更する方法を知りません。
方法2-非マウス。
|(パイプ)コマンドを使用してless、テキストをに送信しますxclip。
詳細:
- 任意の
lessコマンドを使用して、画面の一番上にコピーする最後の行を配置するために上下にスクロールします。最後までコピーする場合は、この手順と次の手順をスキップできます。
m(マーク)コマンドを使用して、選択した終了位置にマークを設定します。マークスは自分で便利な機能であり、あなたはすでにから彼らを知っている必要がありviますが、念のために、あなたはしないでください:mxマーク、セットxの任意の文字をすることができ、そして'x、後に戻りますが。
- 次に、上にスクロールして、コピーする最初の行が画面の最上部に来るようにします。
- pipeコマンドを使用|xします。外部コマンドを入力するためのプロンプトが表示されます。これ
xは、mコマンドで使用したものと同じマーク文字、または$「最後まで」である必要があります。xclipそこに入力します。
マニュアルページ全体をコピーする単純なケースはに減少しg|$xclipEnterます。
警告(つまり、私に起こった恐ろしいこと):xclip半バックグラウンドで、lessプロセスグループの一部として実行されます。サスペンドしようlessとして、同じ端末で別のジョブを開始し、そこに貼り付けても、機能しません。その後、man/ lessジョブをフォアグラウンドにすると、突然ペーストが表示されます。これはxclipバグと考えるべきだと思います...