Qiita でWindowsのコマンドラインとVBA、VBSをどうシンタックスハイライトすべきか 隠しマークダウンあり

#本来はマイクロソフトが悪いともいえる
結局マイクロソフトはOfFiceもWindowsも投げ捨ててクラウドに移行して個人なんかあいてにしなくなるだろうなという予感がする2019年の秋、みなさまいかがお過ごしでしょうか。
ええまあオフィスの延長サポートとかWindows10のめちゃくちゃな更新を見てると普通はそう感じますね。ITメディアとか絶対言わないけど、それこそビッグデータほどではないけど、公表されている資料をみればわかります。
まあとくにまずAccessはもうなくなるかもしれないですね。なにしろSQL Serverとかぶるので。
VBAもVBSも元がVisual BasicなのでQiitaとしては全部VBです。

```vb
Dim wb As WorkBook
C:\users\name>
```

###現在のリスト（隠しコマンドが２つあり）
https://qiita.com/Qiita/items/e84f5aad7757afce82ba

<OL>
<li>ABAP
<li>ActionScript
<li>Apache
<li>API Blueprint
<li>AppleScript
<li>Awk
<li>BIML
<li>1C (BSL)
<li>C
<li>Ceylon
<li>CFScript
<li>Clojure
<li>CMake
<li>CoffeeScript
<li>Config File
<li>config config file 隠しマークダウン
<li>conf 隠しマークダウン
<li>Common Lisp
<li>Console
<li>Coq
<li>C++
<li>Crystal
<li>C#
<li>CSS
<li>D
<li>Dart
<li>diff
<li>digdag
<li>Docker
<li>DOT
<li>Eiffel
<li>Elixir
<li>Elm
<li>ERB
<li>Erlang
<li>Factor
<li>Fortran
<li>FSharp
<li>Gherkin
<li>GLSL
<li>Go
<li>Gradle
<li>Graphql
<li>Groovy
<li>Hack
<li>Haml
<li>Handlebars
<li>Haskell
<li>HTML
<li>HTTP
<li>HyLang
<li>IDL
<li>IgorPro
<li>INI
<li>Io
<li>Irb
<li>Irb_output
<li>Java
<li>JavaScript
<li>Jinja
<li>JSON
<li>Json-doc
<li>Jsonnet
<li>JSX
<li>Julia
<li>Kotlin
<li>Lasso
<li>Liquid
<li>Literate CoffeeScript
<li>Literate Haskell
<li>LLVM
<li>Lua
<li>Make
<li>Markdown
<li>MATLAB
<li>MoonScript
<li>Mosel
<li>MXML
<li>Nasm
<li>nginx
<li>Nim
<li>Nix
<li>Objective-C
<li>OCaml
<li>Pascal
<li>Perl
<li>PHP
<li>Plain Text
<li>Plist
<li>Pony
<li>powershell
<li>Praat
<li>Prolog
<li>Prometheus
<li>.properties
<li>Protobuf
<li>Puppet
<li>Python
<li>Q
<li>QML
<li>R
<li>Racket
<li>Ruby
<li>Rust
<li>Sass
<li>Scala
<li>Scheme
<li>SCSS
<li>sed
<li>shell
<li>sh Shellに同じ
<li>Sieve
<li>Slim
<li>Smalltalk
<li>Smarty
<li>SML
<li>SQL
<li>Swift
<li>TAP
<li>Tcl
<li>TeX
<li>TOML
<li>TypeScript
<li>Tulip
<li>Turtle/TriG
<li>Twig
<li>Vala
<li>Visual Basic
<li>Verilog and System Verilog
<li>VHDL 2008
<li>VimL
<li>Vue
<li>Wollok
<li>XML
<li>YAML
<li>TEXT Plain Text 隠しマークダウン
<li>conf config fileに同じ 隠しマークダウン
<li>半角スペース4つ以上　隠しマークダウンOrバグ
</OL>

>Last Update: 2018-02-20
シンタックスハイライトライブラリがPygments.rbからRougeに変更されました。
これにより一部言語で「これまで対応していたが、対応されなくなったもの」が存在しています。ご注意ください。
一方で、JSXなどこれまで対応していなかった言語にも対応しました 

と軽く捨てられているのがVb.netである。おおもとのVisual Basicからこのような冷たい扱いなので、改善など望むべくもない。あとバッチファイル(拡張子BAT)もない。もとのRougeにはbatchfileがあるのだが。
また、
Dotbatch
http://neos21.hatenablog.com/entry/2016/01/30/175416
もなくなっている。
https://qiita.com/KisaragiZin/items/970c386848bfc9f17afd
noneや指定なしも効かなくなっているようだ。
このため以前の解決方法は無効になっているということになる。

###スペース4つ以上で勝手にシンタックスハイライトになるのはバグ？
今
a
と行頭から入力しました。aが表示されたと思います。
それでは1行開けて半角スペースを4つ入力してaと入れます。

    a

シンタックスハイライトっぽくなりました。StackOverFlowはこんな感じですね。

##VB.netで機能が死んだシンタックスハイライトは訂正する
この変更でvb.netはvbに変えていかなければならない。これは気づいた都度余裕があるときに行う。

##VBA,VBScriptはvbを使う
今一つ違うので、全部分けてほしいのだが、Microsoftがあいまいなので、これをQiitaに言うのはやりたくない。
仕方がないのでvbを使う。

##コマンドラインはどうするか
###表示通りならShellを使うとおかしくなる
Windowsキー+RからCMDを打ち込むと以下のように通常表示される

```
c:\users\name>
```

そしてDirなどを打ち込むのが通常の操作である

```
c:\users\name>Dir "C:\Program files(x86)" /A-D /S
```

###コマンドラインをフルに表示させると、Shellはおかしな表示になる
これをShellでシンタックスハイライトする
````shell`
しいて言えばShellだと思うのだが、どうも違うらしい。上記のブログではshとしていがこれはShellなので結果は同じだ。

```shell
c:\users\name>
c:\users\name>Dir "C:\Program files(x86)" /A-D /S
Dir /A-D /S
Dir "C:\Program files(x86)" /A-D /S
```

スクリーンショットはこんな感じWindows10+FireFox

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/126919/13498efe-b960-d8c3-82c0-9dd2fc9594a8.png)


###おかしいけど命令だけならShellを使えそう
それほど目立たないので、ShellはDirから始まるなど、コマンドのみなら使えそうだ。
なぜか字の頭だけが色が変わる
###無難なのはPowershell?
そこでシンタックスハイライトをPowershellにする。
````powershell`

```powershell
c:\users\name>
c:\users\name>Dir "C:\Program files(x86)" /A-D /S
Dir /A-D /S
Dir "C:\Program files(x86)" /A-D /S
```

####スクリーンショットがこちら
#####編集ウィンドウ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/126919/84297e8c-fd0e-a113-4f9a-7c6213fbdf66.png)
#####プレビューウィンドウ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/126919/59de6111-c36c-14d9-64a1-8884ffda00c7.png)

###全部緑だけどPowershellがましか
1文字目だけ変な色がつくよりいいかもしれない。
以前の解決方法は効かないし、cmdはPowershellに変わるっていうし、Powershellというのが現在の解決方法なのかな。