web-dev-qa-db-ja.com

Nanoでの長い行の折り返し

Nanoでauthorised_keysファイルを編集するとき、長い行を折り返して、行の終わりが見えるようにします(つまり、誰のキーであるかを伝えます)。基本的にはcat authorised_keysの出力のようにしたい

だから、私はヒット Esc + L これは私のプラットフォームで長い行の折り返しを有効にするためのメタキーであり、長い行の折り返しが有効になっているというメッセージが表示されますが、期待どおりに行が折り返されません。

OSX 10.8.5でターミナルを使用しています

80
codecowboy

説明したワードラッピングスタイルを確認するには、nanoの「ソフトラッピング」を使用します。 Esc+$

 Esc+L あなた(そしてみんな)が試みたコマンドは「ハードラッピング」を行います。

キーストローク表記に関する注意-Linuxを初めて使用する場合、表記 Esc+$ プレスアンドリリースを意味します Esc そして次に押します $。次に、完全なキーを押すシーケンスは Esc、 Shift+4

(それはではありませんは押しながらエスケープを押し続けることを意味します $。)

ソース: https://www.nano-editor.org/dist/v2.9/nano.html (--softwrapを検索)


ソフトラップとフォーマットの間違いに関する注意-nanoを初めて使用する場合は、ソフトラップに少し注意してください。設定ファイルなど、改行やインデントに影響されやすいものを編集している場合、フォーマットの誤りが発生する可能性があります。ソフトラップの動作に慣れるまで、保存する前にソフトラップをオフにして(キーシーケンスを再度実行して)簡単なチェックを行うことをお勧めします。

以下の回答で他の人が提供する良さについてのメモ-オペレーティングシステムやnanoのバージョンが異なると、動作が少し異なります。

  • 常にソフトラップが必要な場合は、x0aの 以下の回答 で説明されているように、.nanorcに設定してください。
  • Raspberry Piを使用している場合は、ソフトラップを有効にするために追加のキーストロークが必要であることについて chainsawmascaraの回答 に注意してください。
  • lodeOfCodeの以下の回答 のようなMacをお持ちの場合は、いつでも pdate nano および here を使用して、ソフトラップの温かみのある輝きを浴びることができます。

nanolinewrap

104
coreyt

ここで返信を読んでいるので、これを正直に設定する必要があります。

Nanoは2つのdifferentフォームのラッピングをサポートしており、違いを知ることは不可欠です!

まず、以下のMetaキーはしばしばAltキーですが、必ずしもそうとは限りません。

  • Soft line wrappingは Meta-$。ファイルに改行文字を挿入せずに行を折り返します。つまり、効果は純粋に視覚的なものです。
  • ハードラインの折り返しは Meta-L。ファイルに改行を挿入して行を折り返しますby。ファイルは物理的に変更されます。

したがって、ラップが意味のあるファイル(構成ファイル、プログラミング言語、スクリプト)でアクティブ化した場合、基本的にハードラインラップが必要になったり、コードの意味が変わったりすることはありません。

また、これらのショートカットは^ G(つまり Ctrl-G)ナノ。

17
Jonas

Nano行の折り返しを検索したところ、結果が高くなったので、GNU nano 2.2.6の検索結果をRaspberry Pi、Raspbian GNU/Linux 7に投稿します。 Esc+L 同じメッセージをくれました。しかし、行の折り返しを有効にするには、行を変更する必要がありました。長い行に別の文字を入力するとすぐに、ラッピングが始まりました。

14
chainsawmascara

通常は〜/ .nanorcまたは/ etc/nanorcでnanorcを開き、行をコメント化します。

set nowrap

そしてコメントを外します

set softwrap
9

~/.nanorcでデフォルトを設定できます。ただし、nano 1、nano 2、nano 3の構成設定は異なることに注意してください。

Nano 1では、allラッピングを無効にするset nowrap設定のみがあります。

Nano 2で、set softwrapが追加されました。これにより、ソフトラップが有効になり、ハードラップが無効になります。 set nowrapが変更されましたonlyハードラップが無効になります

Nano では、set softwrapは無視され、set nowrapも指定しない限り、nanoは引き続きハードラップします。

したがって、構成ファイルを壊さない長い行のテキストの折り返しが必要な場合(ソフトラップのみ)、これはバージョン2およびで機能します。次の2行を~/.nanorc

set nowrap
set softwrap
6
x0a

Nanoエディターのエイリアスの設定もうまくいきます。
私は通常以下を使用します:

 alias  e='nano -\$cwS'
 alias se='Sudo nano -\$cwS'

エイリアスを~/.bashrc~/.bash_aliases、またはお気に入りのシェルスタートアップファイルの最後に追加します。

使用法:

e [filename]

またはSudoバージョン:

se [filename]

使用されるフラグ/オプション:

\$ =行のソフトラップを有効にする( エスケープ バックスラッシュを使用)
c =一定のカーソル位置を(下部に)表示します
w =「ハードラッピング」を無効にします
S =スムーズなスクロール

そして(すでに述べたように)一度エディタで、使用します Esc、 $ ソフトラッピングのオン/オフを切り替えます。

5
bshea

Macユーザーは、High Sierra(v2.0.6)以前に出荷されたバージョンのNanoでは、ここで説明するソフトラインラッピングをサポートしていないことに注意してください。不明なコマンドエラーが発生します。 v2.2は、マニュアルページでソフトラップについて言及した最も古いバージョンです。だから私がしたようにこれらのすべてのソリューションを試すために1時間を費やすことはありません。

Esc + Lは期待どおりに機能します。

3
lodeOfCode