GNU nanoを使いこなす

# nano editorとは
UNIX系にインストールされているテキストエディタです。検索と置換、取り消し/やり直し、シンタックスハイライト、自動インデントなど一通りの機能が揃い、文書作成やコーディングができます。
#設定(~/.nanorc)
はじめに設定ファイル(.nanorc)の作成をします。

```
$cd ~/ # ホームディレクトリに移動
$nano .nanorc　# 設定ファイルを作成
```

```:.nanorc
set autoindent

# syntax highlightの設定
include "/usr/share/nano/*"

# Colorの設定
set titlecolor white,green
set statuscolor white,green
set keycolor white,green
set functioncolor white,green

# 保存は
# Ctrl+O　+ Enter
```

## 起動のコマンドラインオプション

```
nano [Option] [File Name]　# 起動はnano+オプション+ファイル名
#　使用頻度の高い[Option]
-v # 閲覧モード
-m # マウスを使用可
-B # バックアップファイルの作成
-F # 新しいバッファーでファイルを読む
```
## 基本操作のチートシート

| 移動単位　　   | キーボード |
|:--------------|----------:|
| 文字　　　| 方向キー |
| 単語　　　| Ctrl + 方向キー |
| 行頭　　　| Ctrl + A  |
| 行末　　　| Ctrl + E  |
| 次ページ　| Ctrl + Y  |
| 前ページ　| Ctrl + N  |
| 文頭　| Alt + \  |
| 文末　| Alt + /  |
| 任意の行　| Esc  + G  |

| 検索と置換　　　　　| キーボード|
|:-------------|---------:|
| 後方検索　　　　　| Ctrl + W |
| 前方検索　　　　　| Ctrl + Q |
| 前方へ続けて検索　　　　　| Alt + W |
| 後方へ続けて検索　　　　　| Alt + Q |
| 置換　　　　　| Ctrl + WR |

| 操作　　　　　| キーボード|
|:-------------|---------:|
| 現在地　　　　| Ctrl + C |
| word/line/charのカウント| Alt + D |
| 複数行の選択　| Esc  + A |
| 選択した領域をインデント　| Tab |
| 選択した領域をアンインデント　| Shift  + Tab |
| 一行削除　　　| Ctrl + K |
| Back Space 　| Ctrl + H |
| Delete       | Ctrl + D |
| Enter      　| Ctrl + M |
| 貼り付け　　　| Ctrl + U |
| ファイルの挿入| Ctrl + R |
| 取り消し　　　| Esc  + U |
| やり直し　　　| Esc  + E |
| 上書き保存　　　　　| Ctrl + S |
| 名前をつけて保存　　　　　| Ctrl + O |
| 閉じる　　　　| Ctrl + X |

## インストール
2019 March 24にGNU nano ver4.0が公開されました。大きな変更は自動改行がなくなり、スムーススクロールがデフォルトになりました。その他も修正されています。古いバージョンでは取り消し、やり直しが使えません。UTF8を有効にて最新版をインストールします。詳しい設定は公式の[Document](https://www.nano-editor.org/dist/v4/nano.pdf) をどうぞ。

```
$ cd ~/
$ sudo apt-get install libncursesw5-dev
$ wget https://www.nano-editor.org/dist/v4/nano-4.0.tar.gz
$ tar -zxvf nano-4.0.tar.gz
$ cd nano-4.0
$ ./configure --enable-utf8
$ make
$ sudo make install
$ cd ~/
$ rm -rf nano-4.0*
```

## 以前と同じ操作にするためには

```
nano -bfje [File Name] # if you use like old version
```
## 状態切り替え

| 編集中に　　　| キーボード|
|:-------------|---------:|
|現在値を常に表示| Esc+C |
|マウスを使用可　| Esc+M |
|ヘルプを非表示　| Esc+X |
|現在値を常に表示| Esc+I |
|マウスを使用可　| Esc+M |
|ヘルプを非表示　| Esc+X |

## 設定について

設定を変更するときは、
/etc/nanorc
~/.nanorc
のファイルを編集する。

```:.nanorc
# Settings
set autoindent    #インテンドを揃える
set backup        #[file name]~で保存
set cutfromcursor #切取を現在地から行末までに
set linenumbers   #左端に行表示
set multibuffer   #^Rで新しいファイル編集に
set zap           #指定範囲を削除可能に
#set nohelp       #暗記したら(画面の有効活用)

# syntax highlight
include "/usr/share/nano/c.nanorc"
include "/usr/share/nano/python.nanorc"
include "/usr/share/nano/tex.nanorc"
include "/usr/share/nano/sh.nanorc"
#include "/usr/share/nano/*"
#include "~/.nano/*"

# Color　文字,背景
set titlecolor white,green
set numbercolor white,green
set selectedcolor white,green
#set statuscolor white,green
#set keycolor white,green
#set functioncolor white,green
```


## ファイルブラウザから保存と書き込み

|操作　　　　 |          |          |
|:-----------|---------:|---------:|
|ブラウザから読込/保存| ^R/^O| ^T|

## Syntax Highlight

```
$ git clone https://github.com/scopatz/nanorc.git ~/.nano
```

を実行したあと、設定ファイルに追記する。」

```:.nanorc
include "~/.nano/*.nanorc"
```


#最後に

公式のDocumentは下記を参考ください。

>GNU nano公式サイト
https://www.nano-editor.org/docs.php
https://github.com/madnight/nano
>Syntax highlight
https://github.com/scopatz/nanorc