Nanoでの長い行の折り返し


66

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

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

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

回答:


89

説明した単語のラッピングスタイルを表示するには、nanoの「ソフトラッピング」を使用します:Esc+ $。+ あなた(誰もが)しようとしたコマンドは、「ハードラッピング」を行います

EscL

キーストローク表記に関する注意-Linuxを初めて使用する場合、表記Esc+ $は、押して放してEscからを押すことを意味し$ます。完全なキープレスシーケンスはEscShift+4です。

(を押しながらエスケープを押し続けるという意味ではありませ$。)

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


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

以下の回答で他の人が提供する良さについて注意してください -異なるオペレーティングシステムと異なるバージョンのnanoは少し異なることをするためです。

  • 常にソフトラップが好きな場合は、以下の x0aの回答で説明されているように、.nanorcに設定してください。
  • Raspberry Piをお持ちの場合は、ソフトラップを有効にするために余分なキーストロークが必要であるというチェーンソーマスカラの答えに注意してください。
  • 以下のlodeOfCodeの答えのようにMacをお持ちの場合は、nanohereをいつでも更新できます。したがって、softwrapの温かい輝きに浸ることができます。


3
これは、ナノにおける私の最大の問題でした。これを整理してくれてありがとう。
user208145

1
私は、行番号を有効に推薦するAlt + Shift + 3set linenumbers~/.nanorc設定ファイル。
ダニエル・ソコロウスキ

1
nanoの古いバージョンには、このソフトラップ機能が含まれていないことに注意してください。バージョン2.0.9では含まれていませんが、バージョン2.5.3では含まれています。この機能を持たないバージョンを使用している場合、テキスト編集領域の中央下部に「不明なコマンド」という警告メッセージが表示されます。
フレデリク

15

ここで返信を読んでいるので、これをまっすぐに設定する必要があります!

Nanoは2 種類の行の折り返しをサポートしています。違いを知ることは不可欠です。

まず、下のMetaキーは多くの場合Altキーですが、必ずしもそうではありません。

  • ソフト行の折り返しMeta- でアクティブになり$ます。ファイルに改行文字挿入せずに折り返します。つまり、エフェクトは純粋に視覚的です。
  • ハードラインの折り返しMeta- で有効になりLます。行をラップすることにより、ファイルに改行を挿入します。ファイルは物理的に変更されます。

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

また、Nano では^ G(つまりCtrl- G)でこれらのショートカットを見つけました。


5
Meta $= Alt+ Shift+4
JamesTheAwesomeDude

1
nanorcではソフトラッピングが有効になっていますがset softwrap、nanorc ではハードラッピングが無効になっていset nowrapます。
mwfearnley

14

ただ、ナノ行の折り返しを検索し、この結果に高い来たので、私はラズベリーパイのGNU nanoの2.2.6、Raspbian GNU / Linuxの7のための私の調査結果を投稿します:Esc+は、L私に同じメッセージを与えました。しかし、行の折り返しを有効にするには、行を変更する必要がありました。長い行に別の文字を入力するとすぐに、ラッピングが開始されました。


7

一般的に〜/ .nanorcまたは/ etc / nanorcでnanorcを開き、行をコメントアウトします

set nowrap

そして、コメント解除行

set softwrap

1
pfSense(およびより一般的にはFreeBSD)では、必要なファイルは/ usr / local / etc / nanorcです。それに失敗すると、find / -type d -name etc他の可能な場所が見つかると思います。
mwfearnley

5

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

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

(これらを~/.bashrc(または.bash_aliases一部のシステムで)またはお気に入りのシェルスタートアップに設定します)

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

\$=行のソフトラッピング(イネーブルエスケープバックスラッシュを使用して)
c =(底部の)一定のカーソル位置を表示
w =任意のハードラッピングを'無効
S =スムーススクロール

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


3

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

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

nano 2では、set softwrapソフトラッピングを有効にし、ハードラッピングを無効にする機能が追加されました。ハードラッピングのみを無効にするset nowrapように変更されました

nano 3では、set softwrap無視され、nanoはハードウェアラップを続けますset nowrap

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

set nowrap
set softwrap

これも思慮深い答えであり、私は上記の私の答えからそれを参照しています。
コリート

2

Macユーザーは、High Sierra(v2.0.6)以前で出荷されたNanoのバージョンは、ここで説明されているようにソフト行の折り返しをサポートしていません。不明なコマンドエラーが表示されます。v2.2は、manページにソフトラップが記載されている最も古いバージョンです。だから、私がやったようにこれらのすべての解決策を試して1時間を費やさないでください。

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

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