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

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

新規登録して質問してみよう
ただいま回答率
85.37%
JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

Q&A

解決済

3回答

45022閲覧

【悲報】visual studio codeコード整形ができない…

退会済みユーザー

退会済みユーザー

総合スコア0

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

0グッド

0クリップ

投稿2016/06/17 06:01

編集2016/06/17 10:11

【visual studio codeバージョン】
1.2.1

【現在の状態】
以下はvisual studio codeショートカットキーエディタから引用

json

1{ "key": "shift+alt+f", "command": "editor.action.format", 2 "when": "editorTextFocus" },

以上のエディタにあるshift+alt+fのショートカットキーを何度試してもコード整形されません。

・ソースファイルにカーソルをおいて、shift+alt+fショートカットキー押しても何も変わらない。
・ソースファイルすべて選択(ctrl+a)を押してから、shift+alt+fショートカットキー押しても何も変わらない。

【質問】
以上の状況から何か原因がわかる方、ご教授お願いします。

【追記】

html

1<!DOCTYPE html> 2<head> 3<meta http-equiv="Content-Type" content="text/html; charset=utf8"> 4</head> 5<style type="text/css"> 6h1{ 7 text-align: center; 8 margin-top: 100px; 9} 10</style> 11<body> 12<h1>senpai,notice me!</h1> 13</body> 14</html> 15

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

masaya_ohashi

2016/06/17 06:24

なんのファイルをコード整形しようとしていますか?タグにあるjsonファイルですか?
退会済みユーザー

退会済みユーザー

2016/06/17 06:39 編集

>>なんのファイルをコード整形しようとしていますか? 例えばvscodeで開いたhtmlファイルです。 >>タグにあるjsonファイルですか? vscodeのショートカットキー参照ファイルの拡張子がjsonです。 そのファイルからコピペしてここへ(質問に)貼り付けただけです。
kgtkr

2016/10/15 06:41

【悲報】って…ここ2chじゃないんだから
guest

回答3

0

ソースを拝見したところ、html タグが開いていないようです。
そのため、html ファイルと認識されていないのかもしれません。

HTML

1<!DOCTYPE html> 2<head>

この部分を

HTML

1<!DOCTYPE html> 2<html> 3<head>

こうしてみてください。

投稿2016/06/17 16:23

Zuishin

総合スコア28662

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

vadimpetrov

2016/06/19 00:52

<!DOCTYPE html>のところでhtmlタグは開かれていると思います。
Zuishin

2016/06/19 02:09

それは気のせいです。
Zuishin

2016/06/19 02:12

タグについて <br> <!DOCTYPE> などのように、閉じなくても良いタグがあります。 しかし、<!DOCTYPE> タグは <!DOCTYPE> であって、<html> とは別物です。
退会済みユーザー

退会済みユーザー

2016/06/19 02:41

この場合の<!DOCTYPE html>は<!DOCTYPE>タグの中にhtmlを加えているので、同時にhtmlタグを解放していると思います。
Zuishin

2016/06/19 03:22

そんなことがどこの仕様書に書いてありますか?
Zuishin

2016/06/19 03:40

<!DOCTYPE> はドキュメント宣言と呼ばれるもので <html> は HTML のルート要素です。(!DOCTYPE は HTML の要素ではありません。) ドキュメント宣言がルート要素を兼ねるという記述をどこで見たのか教えてください。
退会済みユーザー

退会済みユーザー

2016/06/19 03:47

調べて見ましたが、そのようなことはどこにも書いてありませんでした。 <!DOCTYPE html>の次に<html>タグを書くのが一般的のようですが、ではなぜhtmlタグを省略して書いても、ブラウザ上で正常に動くのはなぜでしょう。私の場合だと<html>タグを省略しても問題ないという解釈になります。
Zuishin

2016/06/19 04:00

文法的に間違っている HTML があふれているため、ブラウザは文法が間違っていても可能な限り意図を類推して表示するようになっています。
退会済みユーザー

退会済みユーザー

2016/06/19 04:21 編集

なるほど、納得しました。google chromeでhtmlファイルを実行し、右クリックの検証をクリックしてソースみたら<!DOCTYPE html>の次に自動的に<html>タグが割り振れてありました。 書かなくてもいいかもしれませんが、礼儀として書いた方がいいということですね。 勉強になりました。ありがとうございます。 ところで、<!DOCTYPE html>の次にhtmlタグを書かなくても正常にコード整形されたようなので、どうやら関係ないようでした。
Zuishin

2016/06/19 04:22

礼儀がどうこうでなく、書かなくてはいけません。 書かない場合、正常に処理できなくても文句は言えません。 解決したなら、どう解決したのかを書いて問題を共有してください。
eripong

2016/06/19 04:24

参考情報です。 W3CのHTML5の仕様(http://www.w3.org/TR/html5/syntax.html#syntax) を見ると、 8.1 Writing HTML documentsに、 > Documents must consist of the following parts, in the given order: > 1. Optionally, a single "BOM" (U+FEFF) character. > 2. Any number of comments and space characters. > 3. A DOCTYPE. > 4. Any number of comments and space characters. > 5. The root element, in the form of an html element. > 6. Any number of comments and space characters. とあり、3.のDOCTYPEと5.のhtml要素は明確に分かれています。また、順序についてもこの順であることになっています。mustなので、仕様的には、書いても良い、というより書くべき内容と思います。
guest

0

ベストアンサー

私の環境下ではshift+alt+fでHTMLが整形できました。
可能性としては…そもそもHTMLが整形出来ないレベルで構文を間違えているか、
shift+alt+fのショートカットがなにかと衝突していることでしょうか。
ショートカット一覧でshift+alt+fを探して、2つ存在しないか確認してみてください。

投稿2016/06/17 07:06

masaya_ohashi

総合スコア9210

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2016/06/17 08:10 編集

>>可能性としては…そもそもHTMLが整形出来ないレベルで構文を間違えているか htmlファイルを実行しましたが、異常はありませんでした。 >>shift+alt+fのショートカットがなにかと衝突していることでしょうか。 >>ショートカット一覧でshift+alt+fを探して、2つ存在しないか確認してみてください。 検索しましたが、shift+alt+fのショートカットキーは一つだけでした。
masaya_ohashi

2016/06/17 08:11

以下のような最小のHTMLの構成にしてもう一度shift+alt+fを押してフォーマットが働くか確認してください。 <html> <head> </head> <body> </body> </html>
退会済みユーザー

退会済みユーザー

2016/06/17 09:03

何度も試しましたが、うまくいきませんでした。
masaya_ohashi

2016/06/17 09:20

なにかExtensionをインストールしましたか?
退会済みユーザー

退会済みユーザー

2016/06/17 09:22

what is a Extension??
退会済みユーザー

退会済みユーザー

2016/06/17 09:24

拡張機能のことですか?? デフォでインストールしたような気がします。
退会済みユーザー

退会済みユーザー

2016/06/17 09:25

インストールしたばっかなので、そいった拡張機能には触れていません。
masaya_ohashi

2016/06/17 09:26

とくに拡張機能をいれていないのなら、最終手段Visual Studio Codeの再インストールを試してみてはいかがでしょうか。
退会済みユーザー

退会済みユーザー

2016/06/17 09:28

やってみます。
退会済みユーザー

退会済みユーザー

2016/06/17 09:36

インストールしなおしました。 新規作成したファイルはうまくいきましたが、 既存のファイルを開いて、行おうとするとうまくいきません。
masaya_ohashi

2016/06/17 09:38

うーむ…それはそのファイルの中の記述が何か問題がある気がします。よろしければ質問文に貼り付けることはできますか?私の環境でも試してみようと思います。
退会済みユーザー

退会済みユーザー

2016/06/17 10:12

載せました。
masaya_ohashi

2016/06/17 10:18

出来ますね… VisualStudioCodeは拡張子を見てフォーマット方式を決めているようなので、もしかしていまフォーマットをかけようとしているファイルの拡張子がhtmlではなかったりしませんか?全角文字が混じってるとかスペースが混じってるとか…
退会済みユーザー

退会済みユーザー

2016/06/17 14:28

>>フォーマットをかけようとしているファイルの拡張子がhtmlではなかったりしませんか? 確認しましたが、html拡張子で間違いありませんでした。 >>全角文字が混じってるとかスペースが混じってるとか… 全角スペースはありませんでした。 【自分自身の分析】 前に使っていたエディタがSublime Text3でした。そのエディタで編集したソースを開いてるのが原因かなと感じました。なぜなら、Visual studio codeで作ったソースファイルはコード整形ができるからです。 以上が関係なければ、Visual studio codeエディタ自体の不具合であるかなと思います。
masaya_ohashi

2016/06/17 16:05

文字コードのUTF8やBOMありなしが関係あるかもしれないですね
退会済みユーザー

退会済みユーザー

2016/06/19 02:43

そうですか…
guest

0

Ctrl+K Ctrl+D

投稿2016/06/17 06:48

Zuishin

総合スコア28662

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2016/06/17 07:06

ctrlを長押しで、Kキーの次にDキーですよね?? 試して見ましたけどダメでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問