ラベル Visual studio code の投稿を表示しています。 すべての投稿を表示
ラベル Visual studio code の投稿を表示しています。 すべての投稿を表示

2020年3月27日金曜日

VSCode エクスプローラーとエディタの連動を停止

VSCode 設定の備忘録

VSCode 標準設定ではエディターを切り替えるとエクスプローラーのカーソル位置がそのファイルに移動します。これはこれで便利なんですが、ファイルが多いプロジェクトの場合、いくつもファイルを開いた後はディレクトリがみんな添加されてしまって、リストから目的のファイルを探しにくてしかないです。

workbench.files.action.collapseExplorerFolders で折りたたみを閉じてから workbench.files.action.focusFilesExplorer にてエクスプローラーにフォーカスを移動するようにして、少しはマシになったのですが、結局、避けないことさせないほうが楽ということで^^;

設定
~/.config/Code/User/settings.jsonsettings.json
"explorer.autoReveal": false,  // 追加


~/.config/Code/User/keybindings.json
{"key": "ctrl+shift+numpad5", "command": "revealInExplorer"},  // 追加

2018年11月1日木曜日

Visual Studio Code にて C++ の { を単独行にしない

大昔から C++ のプログラムを書いている人間だと { を単独の行に書きたくなります。うろ覚えですが確か MFC(Microsoft Foundation Library) のソースがそうなっていたと思います。

私も以前はそう書いていたのですが、最近の多くの言語は { を生業分の末尾に書くことが多いようです。

C++ なんてほとんど使わなくなっていたのですが、最近 IoT なるものに手を染めまして、マイコンとかではやはり速度とサイズの問題で C++ が多く、使う機会が増えました。

Visual Studio Code は Microsoft製なので、自動書式整形を使うと { が単独行になってしまいます。これを変える方法はないかなと思って調べたところ設定をちょっといじれば変わるということがわかりましたので備忘録です。

C_Cpp.clang_format_fallbackStyle: "Visual Studio",

となっているところを

C_Cpp.clang_format_fallbackStyle: "Google",

なんてやってやるといい感じになります。

C_Cpp.clang_format_fallbackStyle の説明のところには下記のような記述があります。

Name of the predefined style used as a fallback in case clang-format is invoked with style "file" but the .clang-format file is not found. Possible values are Visual Studio, LLVM, Google, Chromium, Mozilla, WebKit, none, or use "{key: value, ...}" to set specific parameters, e.g.: "{ BasedOnStyle: LLVM, IndentWidth: 8 }"

Google翻訳に機械翻訳させると下記のようです。

スタイル "file"でclang-formatが呼び出されたが、.clang形式のファイルが見つからない場合のフォールバックとして使用される定義済みスタイルの名前。 指定可能な値は、Visual Studio、LLVM、Google、Chromium、Mozilla、WebKit、noneです。たとえば、「{BasedOnStyle:LLVM、IndentWidth:8}」などの特定のパラメータを設定するには「{key:value、...}」を使用します。

参考リンク

clang-format について日本語でざっくり書かれているページ
ClangFormatスタイルオプション

英語だけど詳しく書かれたページ
CLANG-FORMAT STYLE OPTIONS

2017年12月7日木曜日

Visual studio code ENOSPC エラー


Visual studio code で拡張機能を作っているとたまに下記のようなエラーが出ることがあります。

fs.js:1385
    throw error;
    ^

Error: watch /home/kiya/Documents/vsc/nekoaisle.encode ENOSPC
    at _errnoException (util.js:1019:11)
    at FSWatcher.start (fs.js:1383:19)
    at Object.fs.watch (fs.js:1409:11)
    at watchPresentDirectory (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:2635:42)
    at fsWatchDirectory (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:2620:21)
    at Object.watchDirectory (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:2768:28)
    at addDirectoryWatcher (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:56930:21)
    at Object.watchDirectory (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:59955:20)
    at createDirectoryWatcher (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:59381:35)
    at watchFailedLookupLocationOfResolution (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:59348:81)

ビルド タスクのウォッチが終了しました。

このエラーたち悪いことの出たり出なかったりして悩んでいたのですがやっと解決方法がわかったのでメモ書きします。

もと情報はこちら https://vscode-doc-jp.github.io/docs/setup/linux.html#ENOSPC-エラー

1. 現在の設定の確認

$ sudo cat /proc/sys/fs/inotify/max_user_watches
65536

2. 設定ファイルの編集

$ sudo vi /etc/sysctl.conf

ファイルの末尾に下記を追加

fs.inotify.max_user_watches=524288

3. 設定を反映

$ sudo sudo sysctl -p

以上です。