PowerShellでElixirを使おうとしたらIExを1回しか実行できない
Windows7のサポート終了前にWindows10に買い替えたので、Elixirをインストールしてみました。
こちらからインストーラーでインストールしました。
前提
- Windows10
- VSCode
- Elixir 1.10.1
C:\Users\username>elixir -v Erlang/OTP 21 [erts-10.3] [64-bit] [smp:6:6] [ds:6:6:10] [async-threads:1] Elixir 1.10.1 (compiled with Erlang/OTP 21)
IExを起動
Elixirの対話シェルIExを起動してみます。
ご挨拶に "Hello"
と入力してみましょうか。
PowerShellの場合
VSCodeのターミナルを起動すると、特に何も設定していない限りPowerShellが起動します。
PS C:\Users\username> iex コマンド パイプライン位置 1 のコマンドレット Invoke-Expression 次のパラメーターに値を指定してください: Command: "Hello" Hello PS C:\Users\username>
あれ?挨拶を返してくれたのは良かったんですがIExが自動終了してしまいました🙁
PowerShellじゃなくてコマンドプロンプトだったら大丈夫かな?
コマンドプロンプトの場合
VSCodeのメニュー[ファイル]→[基本設定]→[設定]から terminal.integrated.shell.window
と検索すると、
以下の画像の項目が一番上に表示されるので、「settings.json で編集」を選択します。
settings.json
に以下を追加して保存します。
"terminal.integrated.shell.windows": "C:/Windows/System32/cmd.exe",
ターミナルを開き直してIExを起動します。
C:\Users\d0802>iex Interactive Elixir (1.10.1) - press Ctrl+C to exit (type h() ENTER for help) iex(1)> "Hello" "Hello" iex(2)>
お!きちんと対話が続けられました😃めでたしめでたし👏