設定ファイル
個人設定ファイルは
C:\Users\<USER>\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
になります。
これは$PROFILE
という値に入っています。
最初はこのファイルは無いと思うので自分で作ります。 (PowerShellを一度も立ち上げたことがなければフォルダも無いかもしれません。 ない場合は取り敢えず一度PowerShellを立ち上げて見てみる。)
ここにエイリアスとかパスとかの設定をします。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
|
こんな感じ。
PATH
まず、PATHにVimのパスを加えます。
プログラムの入っているパスも$ENV
に上の様な値で入っています。
64bit版(もしくは共通)と32bit版のフォルダがあるので
その両方をチェック。
配列は@()
で定義します。
(他の言語みたいに[]
じゃないので注意。)
配列はforeach
を使って上の様に簡単に回せます。
> Install-Package Vim
とかで入るVimはプログラムフォルダの下でvim\vim74\vim.exeにあります。
これを探してあったらパスに加えるように。
PowerShellではターミナルでそのままファイルを編集する簡単な方法がありませんが、 Vimを入れれば普通にターミナルからVimで編集できる様になります。
それ以前は
> notepad file
みたいにしてメモ帳で開いて編集することになります。
if
文の条件として真偽を返すコマンドを直接入れてその結果で判断することが出来ます。
ファイルやディレクトリが存在するかどうかは
Test-Path
を使って簡単に出来ます。
$path = [regex]::escape($vim_dir)
if(-not ($ENV:PATH -match $path)){
の部分ですが、\
が入ってるパスをそのまま渡すと、
Malformed \p{X} character escape.
と言ったエラーが出てしまいます。
なのでこれをエスケープしてあげる必要がありますが、これは
上の様にregex
のescape
を使えば簡単に出来ます。
この出力は
C:\\Program Files\\...
みたいにエスケープしてくれます。
このパスが$ENV:PATH
に入ってなかったら、ということで-not
を使用。
この時、後ろのコマンドは()
で囲まないと上手く行きません。
パスは;
で区切られてるのでそれを一つ入れてVimへのパスを追加しています。
Alias
Aliasは適当に。
Fnctions
Functionsですが、
ここではtail
をLinuxっぽく使える様にしてみました。
引数のswitch
は、-f
を入れれば正に、いれなければ偽になる$f
という変数を作ります。
これで
> tail file
とすれば最後の10行が見れるし、
> tail -f -n 2 file
とすれば2行表示し、さらに追加を待って表示し続ける様になります。
この時、-n
と2
の間は必ず空けないとダメです。
設定ファイルを読み込む
> source $PROFILE
または
> . $PROFILE
一度書いておけば次回からは起動時に自動で読み込まれます。