iVimでvimrcを設定する。IPadやIPhoneでもvimが使える！

#ivimとは
AppStoreでダウンロードするだけで使える。vimのことです。専用のキーボードがついているため、通常のタッチ操作だけでもesc,Ctrlキーなどを使うことができます。

#どんな人に向けての記事か
Vimの操作になれたい！もしくは慣れすぎてしまったのでIPadやIPhoneでもvimを使いたい！というvimを愛してやまない方がivimというアプリを使って快適にコーディングするお手伝いができればと思い記事を書きました。私自身は2019.12.19現在、vimmer歴1か月未満の絶賛勉強中ですので普段からvimを使って体になじませていこうと考えてivimを使っています。慣れてきたのでカーソルキーを使うのが面倒になってきたというのもありますが。
#動作環境
①IPad第六世代 Software Version 13.1.2
②IPhoneSE Software Version 13.1.3

#before-after
皆様にモチベーションを上げていただくためにもvimrcの設定前と後の変化をお見せします。パッと見た感じではあんまりわからないかも...

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/455763/cedebd3e-7a83-445e-2784-1e89a53b6b46.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/455763/753596f4-65a1-a70e-06e3-047598102f67.png)


#vimrcのパスを探してみる
まずやってみたのはvimrcのパスを調べることです。

````
echo $VIM
```
とするとvimrcのパスが表示されます。

```
e $VIM/vimrc　
```
とするとvimrcを開くことができました。しかし、readonlyfileなので編集できないようです。
これには困ってしまったのでGoogle先生の力を借りましょう。

#vimrcの設定 ~たすけて!Google先生!!~
 https://www.atmarkit.co.jp/ait/articles/1201/25/news149_3.html
このサイトにざっくりですがvimrcの導入方法が書かれていました。ざっくりで苦労したので、ここで詳しく解説していこうと思います。
まずvimrcのファイルをカレントディレクトリに作ります。
おそらくこれは通常のvimで$vim --version実行すると表示されるもののシステムではなくユーザの方のvimrcにあたるものと思われます。

```
e .vimrc
```
そしてこのファイルに

```
set number
```
を入力して:wqで一度終了してivimを再起動すると変更が反映されていました！！！

#vimrcを手打ちしたくない人へ
vimrcが使えたのはうれしいのですが、ひとつ問題がありました。それは**スマートフォン側でコピーしたものを直接ivimに貼り付けたり、逆にコピーすることができない**ということです。スマートフォンの小さな画面でvimrcの設定を打つのは嫌なのでファイルの共有ができないか調べました。

そこでわかったのはIOSのデフォルトアプリを使えばファイルの内容を共有できるようです。しかし、このアプリでは隠しファイルを表示する方法がわからなかったので別名で外部から持ち込んだファイルの名前をvimのEXコマンドを使って、名前を変更することにしました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/455763/fe101a41-ec2c-dadb-17e2-2f48b5a99876.png)
まずは、PCでいつも使っているCentOS7のvimrcの内容をコピーしてメモ帳に貼り付けました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/455763/0bbf03b4-1feb-807d-b747-6107220a6d2b.png
これをPC版のItunesを使ってスマートフォンに送ります。ファイル共有→iVimを選択し、ドラッグ＆ドロップするだけでファイル共有が完了します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/455763/75a0ef75-9651-d3d5-0951-28fe368a37f1.png)
ここからは、iVimでの操作に移ります。

```
e .
```
としてiVimのカレントディレクトリにコピーしてきたファイルがあることを確認します。
その後カーソルを動かしてvimrc.txtを選択して開きます。
自分の場合だとvimrc.txtの名前になっていたのでファイルを開いた状態でカレントファイルの名前の変更を行います。

```
:call rename(expand('%'), '.vimrc')　　#変更前ファイル　変更後ファイル
```
%がカレントファイルを表すので、その名前を**.vimrc**に変更します。
**しかし、なぜか変更が反映されません!!**
理由はわかりませんが、外部からいれたファイルにはpermissionが通らないとかあるんでしょうか？
しかし、先ほどvimrc側で作ったファイルは動いたので、新規ファイルを作りなおして持ってきた内容をコピーすればきちんと動作するはずです。

```
:call rename(expand('%'), '.vimrc2' #名前の変更
gg #カーソルを先頭行に
V-G　y　#全選択してヤンク(コピー）
:e .vimrc　#新規.vimrcの作成
p #プット(貼り付け）
:wq
```
上記の操作を行ったところ、無事変更が反映されました。
＊名前を間違ってしまったりいらないファイルを作成してしまったときには隠しファイル以外はファイルアプリで消せますがコマンドで消すなら

```
:call delete(expand('%'))
```
とすると開いているファイルを消すことができます。
vim単体でもファイル操作は結構できるようですが、普段はPCでファイル操作するのでivimをメインで使わないという方はファイルの作成とデリートぐらい覚えておけばとりあえず困らないでしょう。

#補足　ivimでの文書作成、コーディングなど
IPadなどでコーディングをする際にivimを使った後直接のコピペはできませんが、先ほど紹介したファイルアプリを使うことで作成したファイルを外部に持ち出せます。
ファイルアプリを開きivimを選択。selectボタンを押して、持ち出したいファイルにチェックをつけてノートなどに貼り付けるたものはコピペしたりもできます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/455763/fc686e95-dbd0-9808-2756-7a575db4a517.png)

**それではみなさんが楽しいvimライフを送られることを祈っています**