13
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

vscodeでhtml.erb用のスニペットを登録

Last updated at Posted at 2019-12-18

vscodeには拡張子ごとにスニペット(定型文)を登録する機能がありますが、erb用のスニペットを作ってもhtml.erbで利用することができませんでした。

不具合でしょうか?

代わりにグローバルスニペットを作成して対応したので、設定方法と記述内容を書いていきます。

##グローバルスニペットを作成

  1. CODE>基本設定>ユーザースニペットをクリック

  2. 「新しいグローバルスニペットファイル」をクリック

  3. 任意のファイル名を入力(私はhtml.erbと入力しました)

  4. 以下のようにファイルを編集

html.erb.code-snippets
{
	"embedded Ruby": {
		"prefix": "erb",
		"body": [
			"<% $1 %>"
		]
	},
	"print embedded Ruby": {
		"prefix": "prb",
		"body": [
			"<%= $1 %>"
		]
	},
	"link_to": {
		"prefix": "lt",
		"body": [
			"<%= link_to $1, $2 %>"
		]
	},
	"link_to group": {
		"prefix": "lg",
		"body": [
			"<%= link_to($1) do %>",
			"<% end %>"
		]
	},
	"image_tag": {
		"prefix": "it",
		"body": [
			"<%= image_tag '$1' %>"
		]
	},
	"form_for": {
		"prefix": "ff",
		"body": [
			"<%= form_for @$1 do |f| %>",
			"  <%= f.label :name %>",
			"  <%= f.text_field :name, class:'form__txt'%>",
			"<% end %>"
		]
	},
	"end": {
		"prefix": "end",
		"body": [
			"<% end %>"
		]
	}
}

##構文解説
以下で一かたまりです。

"embedded Ruby": {
  "prefix": "erb",
  "body": [
    "<% $1 %>"
  ]
}

"embedded Ruby":タイトル。識別用。
"prefix": "erb":erbと入力してTABキーをクリックした時に、スニペットが展開されるように設定しています。
"body"::この下に、展開するスニペットの内容を登録します。
"<% $1 %>":展開されるスニペットです。展開時$1の部分にカーソルが合った状態になります。

あとは好きな数だけ、json形式でスニペットを登録することができます。

##参考
VSCodeにコードスニペットを登録して効率的にコーディング!

13
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?