BootcampでWindows10を入れて環境構築するときにやったこと

# きっかけ
長らく某企業製のノートパソコンにArchとWindowsを入れて生活してきた私ですが、とあるきっかけでMacbook proを使い始めました。
最初のうちはｳﾋｮｰｽｹﾞｰという感じで使っていました。
しかし、どんなにいいものもそのうち粗が見えてくるのと同じで、不満が溜まってきたのです。例えば

- ~~Androidのfastbootコマンドを使うとmac osがクラッシュする~~  今は大丈夫そう
- ウィンドウ管理がWindowsに比べて不便。端にウィンドウ持っていったらリサイズして欲しい。
- mac版Officeが重い上にしょっちゅうクラッシュする
- **私はマカーではない**

などがあり、更に先日研究室で寝てたら夢の中でWindowsを入れろと耳元で囁かれた気がしたこともありWindows入れてみました。

# やったこと  
##  hain導入
Mac OSのSpotlightを使ったことがある人なら非常に便利に感じると思います。
alt+spaceで文字を打ってソフトを起動させたり計算させたり様々なことが行なえます。
![キャプチャ.PNG](https://qiita-image-store.s3.amazonaws.com/0/104928/5d6de3d6-f5a2-4526-5e64-01dcc2bf3749.png)

2018/02/11追記：
→ 時期windows10にspotlightに似た機能が搭載されるとの噂が。導入されたらあまり入れる必要が無くなりそう…
 
##  SSD用の最適化
最近のMacbookはSSDで高速でRAMもあるので性能と寿命を考え色々調整する。
最近のSSDは耐久性が高いので必要かといえば微妙だが、まぁ、気休めとして。主にやったことは

- SSDのトリム(ディスクの最適化)をONにする
- ハイバネーションを切る  
→SSDの寿命が著しく悪化するため
- スワップ(仮想メモリ)を無効化する  
→SSDの寿命がry
- ”システムログにイベントを書き込む”を切る  
→スワップを使う機能のため
- ”このドライブ上のファイルに対し、プロパティだけでなく～”のチェックを外してすべてのファイルに適応させる  
→PC＞ドライブを選択＞プロパティ　にあります

気になる人はWindowsのシステムログを切ってもいいかもしれませんがなんかあった時に辛くなるかもしれません。

##  trackpad++を入れる
何故手を抜いているのか謎ですが、Windows側でのAppleのデフォルトのトラックパッドの設定はかなり酷いです。
スクロールもMac osと違いナチュラルスクロールではありませんし、Windows10が対応しているにも関わらずジェスチャーも使えません。
そこでサードパーティ製の[TrackPad++](http://trackpad.forbootcamp.org/)を入れます。これを入れると専用のドライバでジェスチャーが使えるようになります。
インストール方法はHP見ればわかりますが、依存関係があるので先に[Power Plan Assistan](http://powerplan.forbootcamp.org/)を入れます。

設定は画像のようにしました。基本的にはMacでも同じ様はジェスチャーを使っているのでデフォルトのままですが、2-finger gesturesのところのaccelerate scrollは入れるとTweetDeckなどでスクロールがおかしくなるので外し、Mac osと違いトラックパッドのご検出が多かったのでelimination of accidental inputのWhen Typing, Ignore All~のところにチェックを入れておきました。
![キャプチャ.PNG](https://qiita-image-store.s3.amazonaws.com/0/104928/f799bb9d-6459-bf06-adaa-beca8feb3070.png)  
有料版を買おうかかなり迷っている...

2018/02/13追記
OSSでWindows10のPrecision Touchpad対応のドライバを開発するプロジェクトがあるようで...
まだMBP2016等は動きませんが将来的には使えるようになりそう。
https://github.com/imbushuo/mac-precision-touchpad
期待ですね♪

##  bash on windowsを有効にする
窓で開発するぜ！となっても色々不足しまくっているので入れました。
~~まず、~~
~~設定＞更新とセキュリティ＞開発者向け~~
~~から”開発者モード”をONにします。~~
~~その後、~~ 
↑Fall Creators Updateから不要になった。

プログラムと機能＞Windowsの機能の有効化または無効化
で”Windows Subsystem for Linux”にチェックを入れて有効にします。
![2.PNG](https://qiita-image-store.s3.amazonaws.com/0/104928/b51251b7-f148-9c85-a029-d13df07bae2c.png)

~~この時最初は~~
~~（´-`）.｡oO（Dockerも使いたいなぁ）~~
~~とか妄想し同時にHyper-Vにもチェックを入れたのですが、これが落とし穴でした。~~
~~私のMacbook pro late 2016は現状、Hyper-Vに対応していないので再起動したところWindowsのつぶつぶしたものがグルグル回る画面から進まなくなりました。再インストールするはめになりました。~~

現在ではMS側のサポートのお陰でHyper-Vも使えます。また、Fall creators updateでbash on windowsが正式版になりました！
2018年4月あたりの大規模のアップデートでDAEMONも動くとか言う話もあるので楽しみですね~。
後はdockerだとLinuxコンテナー辺りもそろそろ安定版になってくるんじゃないかな。

##  キーボード配置変更
これも結構ハマったものですが、デフォルトの設定ですとCommandがWinキーに割り当てられておりMac os使ったことある人からするとかなり不便だったのでCommandをCtrlに、逆にcontrolをWinキーに入れ替えました
その時はregeditから
HKEY_LOCAL_MACHINE＞SYSTEM＞CurrentControlSet＞Control＞Keyboard Layout＞Scancode Mapを
を画像のように書き換えました。
![3.PNG](https://qiita-image-store.s3.amazonaws.com/0/104928/cad7880f-7596-2cb3-c686-7f6cd37ed216.png)

面倒ならkeyswap等でググると指定したキーのレジストリ書き換えてくれる便利なソフトもあるので探すと楽かも。

~~他にも英数・かなキーがある人はデフォルトでは変換・無変換になっているので、[こちらの記事](http://qiita.com/tukiyo3/items/813b28c3988b20362dd5)のようにIME側から設定を変えると便利です。~~  
2017/05/24追記
MS IMEではドライバの再インストールのみでかな英数が変更できます。Google日本語入力は手動で置き換える必要ありです。  
また、一部のbootcampのドライバではうまく動作しないことがあります。(次項目)
他にも任意のものに変えたい場合は[keymill](http://kts.sakaiweb.com/keymill.html)でMacbookのキーコードどれになっているか確認したり、[キーコードの一覧](http://kts.sakaiweb.com/virtualkeycodes.html)を確認してレジストリに設定すると良いです。


## ドライバ修正
当方の環境macbook pro 2016 13インチでインストールしたところ「かな」と「英数」キーのドライバーが上手くインストールされておらず使えなかったので、その時の解決法もメモ。  
[ここ](http://kuneoresearch.com/bootcamp-keyboard-driver-re-install/)を参考にドライバを手動で当てなおします。簡単に言うとインストーラ展開してドライバファイルを手動で当てるだけです。入れ直したところところうまく動くようになりました♪

## Hyper (terminal)のインストール
2018/02/11追記した。
Windowsって何でシェルがあんなにゴミなんだろうとずっと思ってたけど最近は良いターミナルが出てきた。
[Hyper](https://hyper.is/)はHain同様electronベースのターミナルでiTerm同様マルチタブやスプリット表示が出来ます。これで作業効率も上がるはず...?
HP:https://hyper.is/
なおVer1.xの安定版では日本語表示が正常にできないバグがあるため2.0をDLして入れましょう。

![DRfzPjSU8AAsJlr.jpg large.jpg](https://qiita-image-store.s3.amazonaws.com/0/104928/5ea64006-7474-c459-4c58-db26edf87692.jpeg)


# 所感
いやーTrackPadは完成度が高いですね。Windowsでも便利です。Trackpad++は完成度が微妙ですが無いよりはマシかな。
 
エディタの話も上に書こうかと思ったけど戦争になるのでやめます。
しかしながらVisual Studio Codeはマルチカーソルが使えて高速なので自然言語処理をやるにはおすすめです。

TouchBarはあまり使っていないのですが、Windowsでも最低限表示されるので使えます。OSがクラッシュするともれなくTouchbarも死にますが。

bash on windowsはI/O速度に問題ありますが、Macbook自体がハイスペックなのであまり気になりませんでした。

~~このあとVisualStudio等の開発ツールも入れようと思いましたが、面倒なのでWindowsを消しました。(解決)~~
しなかった。また入れました。
学生はWindowsからは逃れられない...

どうでもいいけど、試していたMacbook pro、キーボードのハードウェア不具合で9回修理に出しているのでそちらもなんとかしたい。