VSCodeの統合ターミナルをbashにしてiverilogしたい
VSCodeの統合ターミナルをbashにしてiverilogしたい
最近知ったんですがVSCodeに統合ターミナルが追加されたんですね。
表示させるとヒョコッと下に出てきてIDE感が増します。
しかしコイツ、Defaultではぼくの嫌いな cmd.exe が当てられているので、
_人人人人人人人人_
> なによこれ! <
 ̄Y^Y^Y^Y^Y^Y^Y ̄
と大声を出さざるをえないわけですが。
変えれるらしい
win10でAnniversary Updateでbashをインストールしている人は、
"terminal.integrated.shell.windows": "C:\\WINDOWS\\sysnative\\bash.exe",
と書くだけで、統合ターミナルがbashになります。
んじゃさっそく...
い、
イヤッフォーウ!!!!
わぁぁぁぁぁぁぁい!!!!
bashだぁぁぁぁぁぁぁ!!!
わあああああああああああああああああああああああああああああ!!!!
ハァ・・・ハァ・・・
かなり普通にbashが使えるのでcmdとかcygwin立ち上げて~とか、面倒なこととはバイバイです。
ただ、↑キーでの履歴がみれない・・・?のでctrl-r
をつかって履歴補完するといいです。
友人に借りているサーバーにもログインできました。
本題
こんなところで記事が終わっては転載以外の何物でもなくなるので、続きを。
xztaityozx.hatenablog.com
この過去記事に書いた通り、iverilogがインストールされていればRunner
という拡張機能でソースから直接端末を開いてHDLをコンパイルできる。
marketplace.visualstudio.com
でもぼくのwinにはIcaros iverilogがインストールされていなかった、というよりbashの方だけインストールしてた。
何故かというと、
sudo apt-get -install iverilog
で終わるから。
インストーラー落として・・・I agreeとか押して・・・めんどいわ!!
だからbashの方使いたい。
直接Runnerにシェルスクリプトを与えてみる
おおかたやる前から「 無理でしょw 」とぼくの中の何かが訴えていましたが、
#!/bin/bash iverilog $1 vvp a.out rm a.out
こんなスクリプトを書きました。
これをRunnerに与えます。
"runner.languageMap": { "verilog":"C:/Users/***/Documents/GitHub/CPU/run.sh" }
そしてCtrl-Shift-R
をそぉい!
あ?あぁ・・・
普通にbash.exeを選んでOKを押したら。
なんもでぇへん!!!!
まぁそうだろうなと思ってbatに切り替えていく。
正直batの書き方あんまりわかんないんでシンプルなものしか書けないんですけど、
bash -c "echo abc"
書いた時のぼく「いきなりiverilog通るわけないしとりあえずechoしとこw」
ふえぇ・・・
どうやらこんなふうにbatからbashは起動できないみたいですね・・・・!
解決策は?
はい。色々調べたんですけどなかなか解決策が見つからなくて無限の沼に落ちていきました。
その間色々考えてたんですけど、
- bashにしかないならともかくwin版もあるのに何やってんの?
- Runnerに任せるならcmdとか関係なくない?
- 解決策調べるよりbatの書き方ggってカッコイイbat書いた方がいいじゃん
つまり
http://snu.nm.land.to/documents/iverilog.htmlsnu.nm.land.to
インストールした。
そして
D:/iverilog/bin/iverilog.exe %1 D:/iverilog/bin/vvp.exe a.out @echo off del a.out
気の迷いでDドライブにインストールしちゃったけどパスちゃんと書いたら通ったのでok。
ggり力の低さを実感した一日でした。