質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.51%

  • C

    4279questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • C++

    4178questions

    C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

  • Visual Studio

    2214questions

    Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

VSCode内での言語別ユーザースニペットで条件分岐をしたい

受付中

回答 0

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 75

makition

score 1

実現したいこと

言語別で設定するユーザースニペットで入力された内容に対して条件分岐を行いたい。

なぜ行いたいか

C言語内でswitch文を使用する時、caseを入力して改行した時にインデントされないため。
また、break;を入力したときに前のcaseとインデントを揃えたい。

具体的なコード

switch (chk) {
    case 1:
        printf("hoge\n");  // ここでまずcaseから空白を入れてほしい
        break;
    case 2:  // breakを受けてcaseの終了を判断し、case 1:のときと同じ高さになってほしい
        printf("huga\n");
        break;
};

疑問点

もしこのように変更したい場合はユーザースニペットではなく、拡張機能であったりsetting.jsonなど別の方法で
行わないといけないのでしょうか?
caseとcase内の記述は同じ高さで入力すべきなのでしょうか?

イメージ説明
clang-formatの設定です。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正の依頼

  • pepperleaf

    2019/03/10 19:52

    "case 2:" (コロンまで)と打ち込むと、該当行のインデントが自動で変更されませんか?
    "case 2" までではダメみたいですが。

    キャンセル

  • makition

    2019/03/10 23:08

    そうですね、case 2:とまで打っても自動で開業されないですね。
    保存をかけるとclang-formatの設定でコード整形はされますが、打っているときには求めているインデントにはなりません。

    キャンセル

  • pepperleaf

    2019/03/11 07:51

    とすると、設定の違い? でしょうか。

    キャンセル

  • makition

    2019/03/12 00:10

    一度、clang-formatの設定をスクショして見ます!

    キャンセル

まだ回答がついていません

同じタグがついた質問を見る

  • C

    4279questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • C++

    4178questions

    C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

  • Visual Studio

    2214questions

    Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。