‥‥だってほら、例えば友達ん家に遊びに行くとして、まだ家にも入ってないのに居間の柱の古傷の思い出とか語られても困るでしょ?
そんな訳で、まずは Visual Studio で C# の開発をはじめる上での環境設定から。つーか単に未来の自分のための覚え書きですね。かなりクセのある使い方なので、あんま参考にならんと思いますが。
Visual Studio は数年前に買った 2010 です。今では 小規模開発なら 2013 のほぼ完全版がタダで使えるらしい、とかいう噂も聞きましたが、まあ今は困ってないのでまたいつか。 うちの開発中のデスクトップは昔からずーっとこんなです。今まで20年近く、Visual Studio のエディターは全く使ってない ので、Visual Studio は普段は最小限の大きさにされてて、ビルド、デバッグ開始ボタンを押すためと、エラーやログを見るためだけに使われてます。
でもC#の開発だとそうはいかないんだな
今までは C++ と Win32API だけで開発していたので、ひたすらエディターでコードを書いてればよかったんですが、C#でツールを開発する場合、まずはウインドウにボタンなどをペタペタ配置して、そのボタンに対してコードを書くような感じになります。その場合、関数などの雛形は Visual Studio のエディターを使って自動生成されるので、いくら Visual Studio のエディターがキライといっても、ある程度は付き合わないといけません。そこでまずは、出来る限り勝手に余計な事をさせないように設定変更。
メニューから 「ツール」 > 「オプション」 > 「テキストエディター」 > 「C#」 で
- 「タブ」
> 「インデント」 を 「なし」
> 「タブ」 を 「タブの保持」 (スペースに変換しない) - 今までオートインデントなしでずっと生きてきたので、自動で入れられてもかえって邪魔。スペースに変換するとかもってのほか。人のソースを勝手に置換すんな。
- 「書式設定」> 「全般」
> 「オートフォーマット」と付くチェックは全て解除 - 他のソースからコピペをした時とかまで、隙あらば勝手に整形しようとするのでもう呆れる。人のソースを勝手に触んな。
- 「書式設定」> 「行間」
> 「メソッド宣言子のスペース」:「引数リストのかっこ内にスペース挿入」
> 「メソッドの呼び出しのスペース」:「引数リストのかっこ内にスペース挿入」
> 「その他のスペースオプション」:「制御フローステートメントのかっこ内にスペースを挿入」 -
僕のスペース入れ方のスタンスは以下なので、自動生成されるコードもそうなるように。
a = function( arg1, arg2, arg3 ); if ( a >= b ) for ( int i = 0; i < 10; i++ )
それから、普段のエディターで多用するキーバインドがそのまま使えるよう、いくつか変更。
同じくメニューから 「ツール」 > 「オプション」 > 「環境」 > 「キーボード」 で
- 「編集:現在の単語を選択」 を 「Shift + Enter」 に変更
- 「編集:行末まで拡張」 を 「Shift + End」 に変更
- @に、キーバインドを 変更したい機能名に含まれるであろうキーワードを想像で入れる。「単語」 とか 「選択」 とか。
- Aのリストから変更したい機能を選ぶ。@で候補を絞らずに選ぶのはまず不可能。つーかなんでこの選択欄こんな狭いの?
- Bの 「使用する場所」 を 「テキストエディター」 など、使う場面に変える 。これを変え忘れるといろいろおかしな事になる。間違えたと思ったら 「リセット」 して最初からやり直した方が安全。
- Cをクリックしてから、バインドしたいキーを押す。
- Dで割り当て確定。これ押さないと最初からやりなおし。
その他細かい設定
あとは、怒髪天を突くほどでもないけど、気に食わないところをチョコチョコ変更。同じくメニューから 「ツール」 > 「オプション」 にて
-
「プロジェクトおよびソリューション」 > 「全般」
> 「ビルド完了時にエラー一覧を表示」 をチェック - C# のビルドログってなんかやたら情報量が多くて読みにくいんで、見やすく表示してくれるエラー一覧ウインドウに頼った方が楽です。
-
「Windowsフォームデザイナー」 > 「全般」 > 「ツールボックス」
> 「AutoToolboxPopulate」 を True - こいつが!、こいつのせいで別件で半日近く悩む事になるのですが、それはまた後日。なんでデフォルト False なのか全く意味が分からん。
今日は長くなったんでとりあえずこの辺で。明日に続く。