CUIで避けては通れないvimを使いこなす技

その昔、自身が共有サーバを使っていた時代は、サーバへのファイル転送は、ローカルからのFTP接続による転送が当たり前でした。

ローカルでは秀丸エディタを使ってファイルを編集し、転送する。そんな事を繰り返していました。

その後は、サーバにSSH接続し、サーバー上でファイルを直接書き換えるようになりました。

切り替え初期でこそ、画像ファイルの転送にFTPを使わないと面倒だなと思っていたりもするのですが、rsync等の転送コマンドを使えばローカルからホストへのファイル転送は簡単に出来ますし、わざわざFTPツールを立ち上げる必要も無いので楽ちんですね。

ファイルを直接書き換えることでのメリット

  • 転送作業が必要ないので楽です
  • ファイルを保存した瞬間 [ :w ]に反映されます
  • phpなんかを編集していてやらかしてしまったらundoして保存しなおせばすぐ戻ります
    • 重要なサービスでは、きちんとテスト環境を作りましょう
  • 全てターミナル上でやれてしまうのでローカルでのツール群の立ち上げなどは不要です。楽

ファイルを直接書き換えることで失敗した事

  • ファイル保存後ファイルを閉じる [:wq] としてしまったがために、undoができなくなってしまった
    • ローカルで言うところの、編集中のファイルをエディタを終了して閉じてしまった状態ですね

そんな訳で、あまりデメリットを感じません。

ちょっとした開発程度ならvimでやってしまって良いのではないでしょうか。大きめな開発になるのであれば、atomあたりをインストールして管理する方法もあります。atomはローカルで直接ホストの書き換えが出来ますのでvimはハードル高いけど、ローカルからの転送から卒業したいという人はそちらでも良いかもしれません。個人的には、ちょっとしたことにわざわざ立ち上げる必要性は感じません。

Vimの基本

初心者はまずこれを抑えておきましょう。

  • vimには、いわゆるメモ帳やWord等のエディタとは違い、コマンドモードとインサートモードがあります
  • インサートモードがメモ帳やWord等のエディタと同様の機能を提供するモードです
    • vimは最初はコマンドモードになっているので、そこでストレスに感じる事が多いと思います。自分もそうでした
  • コマンドモードこそがvimの大事な部分で、検索・カーソル移動・置換・様々なコマンドの実行を行うことの出来るモードです。これは追々覚えましょう

基本コマンド

  • i :インサートモードに変更するには i を押しましょう。insertのiです。iを押すと普通のエディタとして使えると思います
  • escボタン:インサートモードを解除するコマンドです。コマンドモードに戻ります。
  • :w :コロン+w を押すとファイルが保存できます。
  • :q :quit コマンド。vimエディタを終了します
  • :wq :保存してファイルを閉じるというコマンドになります。vimエディタが終了しますので、変更が確定的であれば良いのですが、上にも書いたとおり、undoできなくなってしまうので注意してください
  • ! :コマンドを強制するコマンドです。よくあるのが、読み込み専用のパーミッションのファイルを編集した場合に、そのまま :w とやっても保存出来ません。rootで作業していれば :w! とコマンドを打つことで強制的に保存する事が出来ます。逆に、本当は編集できないファイルを編集してしまい、保存も終了も出来ないみたいになる事があります。そっと閉じるには :q! と打ちましょう

 

オススメNginx本

nginx実践入門 (WEB+DB PRESS plus) 単行本(ソフトカバー) – 2016/1/16

nginxを現場で活用するための知識を、実践的なノウハウを交えて解説した書籍です。nginxのインストール方法や基本的な設定方法からはじめ、nginxを利用した「静的コンテンツ配信サーバ」「HTTPSサーバ」「Webアプリケーションサーバ」「大規模コンテンツ配信システム」の構築方法をそれぞれ詳しく紹介しています。後半ではnginxサーバのモニタリングやログの収集、そして軽量スクリプト言語Luaでnginxを拡張する方法について解説しているので、nginxをこれから使う方はもちろん、さらに活用したい方にもお勧めです。

公開日: