WindowsでUnixコマンドを使うためにMSYS2を導入する方法
Thinkpad X260を中古で34000円にて購入しました。2018年にプログラミング学習を開始してすぐにMacbook Proを買って使ってきたこと、先入観かもですが、Windowsのコマンドは使いにくそう&見た目も好きじゃないので、UnixコマンドをWindowsで使いたいと考えました。
Thinkpadに急にハマって、Thinkpad好きなひとのブログを読んでいたら、デスクトップ上でキャラクターが動くアニメーションのプログラムを紹介した記事を見つけて、環境について紹介していたのが、MSYS2です。
MSYS2の公式サイトはこちら↓
MSYS2をWindowsにインストールすることで、macOSのターミナルのような環境が作れ、macOSで慣れ親しんでいるUnixコマンドが使えるようになります。
パッケージ管理はPacmanを使い、必要なパッケージをインストールしたり、パッケージを更新したり、削除したりします。
MSYS2のことを僕自身分かっていない状況ですが、とりあえずインストールしました。
ちなみに、Thinkpad X260のスペックはこんな感じです。
・Windows10 Pro 64bit
・core i5、メモリ8GB、SSD256GB
WSYS2のインストール、個別パッケージのインストール
インストールの参考にしたのが、下記の記事です。
https://qiita.com/yuukiyouki/items/a84c14240429e453428b
上記の記事が良さげかなと思い、参考にして進めたら、インストール正常にできました。
個別にインストールしたパッケージは正直あんまりどんなものか分かってないですが、とりあえず記事の通りにインストールしました。
インストールが完了すると、WindowsのCドライブにMSYS64 というフォルダが生成されます。
MSYS64のフォルダの中に、home/ユーザー名
のフォルダが作られています。
上記フォルダの中に作りたいアプリのプロジェクトなど保存する感じかも。
もしかしたら、MSYS2はMSYS64のフォルダ内だけしか操作対象にできないのか?などと素人なので思ったのですが、MSYS64以外のフォルダに移動してlsコマンドで構成を見れたりしたので、本当にWindowsのデフォルトのコマンドからUnixコマンドに移行できているみたい。
パッケージの設定
個別にパッケージの設定を前述の記事に沿って進めようと思いました。
ターミナルの画面に相当するのがMintty、行数や色などカスタマイズなど設定するのが.minttyrcとのことなので、ファイルを開きたいけど、どこにあるのか不明。
そこでファイルを探すコマンドをググって調べました。
find [ディレクトリ名] -name [ファイル名]
で調べられるみたいなので、調べてみたけど、見つかりませんでした。
なので他で試してみようとvimの設定ファイルを探してみると、見つかりました。
手順は下記。
cdコマンドでMSYS64フォルダに移動しフォルダ内を検索し、vimの設定ファイルである.vimrcファイルを探します。
Kyachuo@LAPTOP-MEG3K2VH MSYS ~
$ cd C:\msys64
Kyachuo@LAPTOP-MEG3K2VH MSYS /
$ find -name .vimrc
./etc/skel/.vimrc
find: failed to read file names from file system at or below ‘.’: No such file or directory
最後に見つかりませんの文言がでてきますが、よくわかりません。これについて特に気にする必要はなさそう。多分ですが、ドットファイルを探しているので出てくるのかもしれません。
vimの設定
$ vim /etc/skel/.vimrc
にてファイルを開くと、最初の方に、OS毎の.vimrcファイルの保存先が指定されています。僕の場合は、home/ユーザー名のフォルダ内に.vimrcをコピペしろと書かれていますので、その通りにしてみます。
すると、vimの設定内容がvimに反映されるようになります。
iで編集し、escキーで挿入モードを解除、:wqで保存して終了します。
※もし変更せず終了するには、:q!を押します。
vimの設定については、ググったらいろいろ便利な設定が出てきますので、必要に応じて設定する感じでよいと思います。
僕のイメージでは、vim使う機会ってコマンドからファイルを開いて編集するときくらいだと思うので、デフォルト設定でも別に問題ないと思いました。
.minttyrcファイルについては見つからないので、新規でファイルを作成するのかもと思いましたが、深追いはせず、とりあえずデフォルトのまま設定は見送りました。
また後日、もっと調べてみたいと思います。