
今回はSublime Text 2の拡張機能である「SublimeClang」を使ってC/C++のプログラミングを楽にしようという記事です。
研究室ではもちろん、つい最近ではサーキットの1年生までがemacs、emacs言い出しているもんで悲しいです。Sublime Text 2のほうが先進的で使いやすいのに...
今回の記事を読んでちょっと使ってみようかなと思っていただければ幸いです。
前準備
今回、動作を確認した環境はUbuntu 14.04 LTS 日本語Remix
Sublime Text 2
Sublime Text 2に関してはお決まりのPackage Controlを入れていること
以下Sublime Text 2をST2と記す。
手順1
ST2でパッケージコントロールを呼び出して「Package Control: Install Package」を選択し、「SublimeClang」と入力してパッケージを導入。Sublime TextでC++の開発環境を作るこのサイトの”エラー対応”のところを参考にして一行ずつ確実にコマンドを入力してください。
http://qiita.com/nagakenjs/items/e06911f4ff9e9871cd2b
手順2
すべてのコマンドを入力し終えたら1回ST2を閉じて再び起動させます。すると先ほどのエラーのアラートは出なくなりましたが、次には写真のようなエラーが下のウィンドウに出ます。
どうやら'c++config.h'が見つからないようなので、こいつの場所を教えてやる必要があるみたいです。したがってSublimeClangの設定ファイルをいじります。設定ファイルは下のようにメニューから引っ張ってくるか、ターミナルなりファイラーなりでこの場所にアクセスしてください。
~/.config/sublime-text-2/Packages/SublimeClang/SublimeClang.sublime-settings
このファイルの266行目にかけてのオプションに一文追加します。
"options": [ "-isystem", "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/usr/include/", "-isystem", "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/usr/include/c++/4.2.1", "-F/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/System/Library/Frameworks/", "-isystem", "C:\\MinGW\\lib\\gcc\\mingw32\\4.7.0\\include", "-isystem", "C:\\MinGW\\lib\\gcc\\mingw32\\4.7.0\\include\\c++", "-isystem", "C:\\MinGW\\lib\\gcc\\mingw32\\4.7.0\\include\\c++\\mingw32", "-isystem", "C:\\MinGW\\include", "-isystem", "/usr/include", "-isystem", "/usr/include/c++/*", "-isystem", "/usr/include/x86_64-linux-gnu/c++/4.8/", "-Wall" ],
277行に追加したらSublimeClang.sublime-settingsを保存。これで先ほどのエラーは消えると思います。
実際に使ってみる
SublimeClangでの補完は変数名や関数を定義している場合、該当している変数、関数をサジェストしてくれます。またClangの文法チェックについては、例えば定義していない変数(図中ではsum)があれば、そのファイルを保存したタイミングで下のように指摘してくれます。
補足
メイン文と関数を別々のファイルで書いてるときに、関数ってどこで定義したっけ?ってときがありますよね。そんなときは右クリックで「Go to Definition」と「Go to Implementation」を使います。「Go to Definition」でそれが宣言されている箇所にジャンプし、「Go to Implementation」で実装されている箇所にジャンプします。変数に関しても同様です。この機能に関してはショートカットキーがあるのですが、ショートカットキーがUbuntuシステムのHUD (Head Up Display)に使われるAltキーと干渉してしまうので、下のサイトの用に変更するといいです。
ぬるグラマー向け開発環境構築
http://qiita.com/disktnk/items/7e499ddf08935e191bc7
また標準ではC++11の書式には対応しておらず、エラーがでます。これを解決するにはSublimeClang.sublime-settingsを書き換えます。146行目にある"additional_language_options":以下のコメントアウトに従います。149行目の[]にオプション"-std=c++11"を追加するだけです。
長くなりましたが以上です。あとはひたすらコードを書くだけですね。
次はST2でC/C++のコードの自動整形ができるようにする記事を書こうかなと思っています。
書きました→http://cirkitrwrc.blogspot.jp/2014/10/sublime-text-2ccubuntu-1404-lts_5.html
最後まで閲覧していただき、ありがとうございました。
0 件のコメント:
コメントを投稿