「Windowsでのターミナル環境」の版間の差分

Notion-MW
Notion-MW
22行目: 22行目:
たとえばテキストファイルに以下のように書いておけば、mpvが起動される。<strong>末尾の半角スペースも入れること。</strong>
たとえばテキストファイルに以下のように書いておけば、mpvが起動される。<strong>末尾の半角スペースも入れること。</strong>


<syntaxhighlight lang="visual basic">"C:\Users\username\Softwares\mpv\mpv.exe" </syntaxhighlight>
<syntaxhighlight lang="vb.net">"C:\Users\username\Softwares\mpv\mpv.exe" </syntaxhighlight>
Windows版のmpvは、設定ファイル(mpv.conf)やプラグインなどを自身が存在するディレクトリから読み込むが、それらの動作を維持したままで、.pathにはmpv.exeという呼び出し専用のファイルだけを配置することができる。
Windows版のmpvは、設定ファイル(mpv.conf)やプラグインなどを自身が存在するディレクトリから読み込むが、それらの動作を維持したままで、.pathにはmpv.exeという呼び出し専用のファイルだけを配置することができる。


32行目: 32行目:
ところで、<code>C&#58;\path\to\</code>の部分に空白文字が含まれている場合、このままではパスが正しく認識されない。通常はパス全体をダブルクォーテーションで囲うことでこれを回避するが、今回は与えられた引数のどこにダブルクォーテーションを挿入するかが自明ではない(<code>myprogram someprogram&quot;</code>と入力させるという方法もあるが美しくない)ため、<strong>半角スペースを含まない別名</strong>(8.3形式)<strong>を使う</strong>のがよいだろう(短い名前については[[Windowsのパス長さ制限に関して|Windowsのパス長さ制限に関して]]も参照)。例えばProgram Filesなら普通は「PROGRA&#126;1」になっているはずである。以下はGit Bashでのtxtファイルの例である。
ところで、<code>C&#58;\path\to\</code>の部分に空白文字が含まれている場合、このままではパスが正しく認識されない。通常はパス全体をダブルクォーテーションで囲うことでこれを回避するが、今回は与えられた引数のどこにダブルクォーテーションを挿入するかが自明ではない(<code>myprogram someprogram&quot;</code>と入力させるという方法もあるが美しくない)ため、<strong>半角スペースを含まない別名</strong>(8.3形式)<strong>を使う</strong>のがよいだろう(短い名前については[[Windowsのパス長さ制限に関して|Windowsのパス長さ制限に関して]]も参照)。例えばProgram Filesなら普通は「PROGRA&#126;1」になっているはずである。以下はGit Bashでのtxtファイルの例である。


<syntaxhighlight lang="visual basic">C:\PROGRA~1\Git\usr\bin\</syntaxhighlight>
<syntaxhighlight lang="vb.net">C:\PROGRA~1\Git\usr\bin\</syntaxhighlight>
これにより、PATHを変更せずとも、例えば<code>gb grep</code>などとするだけでGit Bashの<code>grep</code>を呼び出すことができるようになる。gitやnpmやbusyboxやmagick(ImageMagick)のようにサブコマンドを指定して使うプログラムは多くあるが、これと同じような使用感になる。プレフィックスを設けることでそれぞれの名前の集合を別々に管理して衝突を防ぐ、という意味では、多くのプログラム言語で採用されている名前空間(namespace)に近い発想かもしれない。(コマンドにおけるこのような手法に特に名前は付いていないと思う。)
これにより、PATHを変更せずとも、例えば<code>gb grep</code>などとするだけでGit Bashの<code>grep</code>を呼び出すことができるようになる。gitやnpmやbusyboxやmagick(ImageMagick)のようにサブコマンドを指定して使うプログラムは多くあるが、これと同じような使用感になる。プレフィックスを設けることでそれぞれの名前の集合を別々に管理して衝突を防ぐ、という意味では、多くのプログラム言語で採用されている名前空間(namespace)に近い発想かもしれない。(コマンドにおけるこのような手法に特に名前は付いていないと思う。)


57行目: 57行目:
上記の例は、いずれもバッチファイルを使って似たようなことが実現できる。例えばGit Bashならそれぞれ
上記の例は、いずれもバッチファイルを使って似たようなことが実現できる。例えばGit Bashならそれぞれ


<syntaxhighlight lang="visual basic">@C:\path\to\directory\%*</syntaxhighlight>
<syntaxhighlight lang="vb.net">@C:\path\to\directory\%*</syntaxhighlight>


<syntaxhighlight lang="visual basic">@cmd /c "path C:\path\to\directory;%PATH% & %*"</syntaxhighlight>
<syntaxhighlight lang="vb.net">@cmd /c "path C:\path\to\directory;%PATH% & %*"</syntaxhighlight>
のようにする(<code>@</code>は、echo offを一時的に行うために必要である)。
のようにする(<code>@</code>は、echo offを一時的に行うために必要である)。


158行目: 158行目:
フォントは、GUIからではなく設定ファイルを変更する必要はあるが、変えられる。デフォルトのCascadia CodeよりConsolasのほうが英数字が日本語のちょうど半分のサイズになるので読みやすい。
フォントは、GUIからではなく設定ファイルを変更する必要はあるが、変えられる。デフォルトのCascadia CodeよりConsolasのほうが英数字が日本語のちょうど半分のサイズになるので読みやすい。


m_with_cap_m
<syntaxhighlight style="margin-bottom:0.2em;" lang="python">vb.net
 
"defaults": {
<syntaxhighlight lang="visual basic">"defaults": {
             "font":{  "face": "Consolas",
             "font":{  "face": "Consolas",
             "size": 12
             "size": 12