<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Olen Onnellinen 2 &#187; スニペット</title>
	<atom:link href="http://blog.magellanic.net/archives/tag/%e3%82%b9%e3%83%8b%e3%83%9a%e3%83%83%e3%83%88/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.magellanic.net</link>
	<description>さまようITエンジニアの日記です。システム開発から資格試験、ゲーム、ライトノベルまで何でもありの雑記。</description>
	<lastBuildDate>Thu, 05 Jan 2012 04:29:22 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Eclipseのスニペットとテンプレート</title>
		<link>http://blog.magellanic.net/archives/160</link>
		<comments>http://blog.magellanic.net/archives/160#comments</comments>
		<pubDate>Tue, 02 Dec 2008 05:40:17 +0000</pubDate>
		<dc:creator>koshian</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Eclipseプラグイン開発]]></category>
		<category><![CDATA[スニペット]]></category>
		<category><![CDATA[テンプレート]]></category>

		<guid isPermaLink="false">http://blog.magellanic.net/?p=160</guid>
		<description><![CDATA[前回Eclipseのスニペット(Snippet)を紹介したのですが、もろもろ紛らわしい機能でして、誤解を与えそうってことでもう少し解説します。 貴方の思う&#8221;萌え&#8221;と、わたしの思う&#8221;萌え [...]]]></description>
			<content:encoded><![CDATA[				<p>前回Eclipseのスニペット(Snippet)を紹介したのですが、もろもろ紛らわしい機能でして、誤解を与えそうってことでもう少し解説します。</p>
				<p>貴方の思う&#8221;萌え&#8221;と、わたしの思う&#8221;萌え&#8221;は別なのよ、ということですね。わかりにくい！</p>
				<p>えっと、まずは <strong>Eclipse3.3</strong> のJDT(Java Development Tools)を前提として、機能を説明します。</p>
				<p>■ コード・テンプレート<br />
				EclipseでJava開発をしていると、以下のようなコードが自動生成されることがありますよね。</p>
				<div class="src">
				<ol class="hl-main">
				<li>&nbsp;<span class="hl-code">} </span><span class="hl-reserved">catch</span> <span class="hl-brackets">(</span><span class="hl-identifier">Exception</span> <span class="hl-identifier">e</span><span class="hl-brackets">)</span> <span class="hl-brackets">{</span></li>
				<li><span class="hl-code">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="hl-comment">//</span><span class="hl-comment"> TODO 自動生成された catch ブロック</span></li>
				<li><span class="hl-code">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="hl-identifier">e</span><span class="hl-code">.</span><span class="hl-identifier">printStackTrace</span><span class="hl-brackets">(</span><span class="hl-brackets">)</span><span class="hl-code">;</span></li>
				<li>&nbsp;<span class="hl-brackets">}</span></li>
				</ol>
				</div>
				<p>他にも新規にクラスファイルを作成したときなどに自動生成されるコードがあります。</p>
				<p>ここで自動生成される雛形はユーザが設定できるようになっています。<br />
				[設定]→[Java]→[コード・スタイル]→[コード・テンプレート]</p>
				<p>これが<strong>コード・テンプレート</strong>機能です。</p>
				<p>■ テンプレート<br />
				Javadocの中で文字列を選択し、Ctrl+Spaceを押すとその文字列をタグで囲むことができます。<br />
				&#8220;if&#8221;と入力してCtrl+Spaceと入力したときに&#8221;else if&#8221;ブロックなどの補完ができるのもテンプレートです。</p>
				<p><img src="http://blog.magellanic.net/wp-content/uploads/2008/12/20081202a.jpg" alt="20081202a" title="20081202a" width="405" height="251" class="size-full wp-image-159" /></p>
				<p>これは[設定]→[Java]→[エディター]→[テンプレート]から変更・追加が可能です。<br />
				これが<strong>テンプレート</strong>機能です。</p>
				<p>■ スニペット<br />
				前回こしあんが紹介したのが、これ。<br />
				コードの断片を&#8221;ビュー&#8221;から挿入することができます。</p>
				<p><strong>スニペットはビューです</strong>。スニペット・ビュー。大事なことなので2回い（ｒｙ</p>
				<p>と、いうわけで以上3つの機能を紹介しました。<br />
				どれもコードの断片を貼り付ける機能で同じではないかと思われるかもしれません。まったくその通りで、ユーザにとって機能名などどうでも良いことです。それなのに、わざわざこんな紹介をしたのは、Eclipseプラグイン開発の観点からの便宜上です。</p>
				<p>プラグイン開発の話に進む前にEclipse3.4について触れておきます。</p>
				<p>Eclipse3.4ではスニペット・ビューが標準で付属していません。これはおそらくですが、JDTに&#8221;テンプレート・ビュー&#8221;が実装されたためと思われます。<br />
				テンプレート・ビューとスニペット・ビューはほぼ役割が同じであるため、スニペット・ビューは付属しなくなったのでしょう。</p>
				<p>さて、やっとメイン。Eclipse3.4でスニペット・ビューと同じ機能を持つプラグインを作りたい。<br />
				方法は2つ考えられます。</p>
				<ol>
				<li>WST を同梱し、SnippetContributionsを拡張する</li>
				<li>AbstractTemplatesPage を実装したクラスを作成する</li>
				</ol>
				<p>3.4からは2つ目の方法をとりたいところ。</p>
				<p>■ 参考<br />
				<a href='http://help.eclipse.org/stable/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/ui/texteditor/templates/TemplatesView.html'>TemplatesView &#8211; Eclipse SDK</a></p>
				<p><a href='http://help.eclipse.org/stable/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/ui/texteditor/templates/ITemplatesPage.html'>ITemplatesPage &#8211; Eclipse SDK</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.magellanic.net/archives/160/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipseでスニペットを使ったり拡張したり</title>
		<link>http://blog.magellanic.net/archives/150</link>
		<comments>http://blog.magellanic.net/archives/150#comments</comments>
		<pubDate>Fri, 28 Nov 2008 12:07:28 +0000</pubDate>
		<dc:creator>koshian</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Eclipseプラグイン開発]]></category>
		<category><![CDATA[WST]]></category>
		<category><![CDATA[スニペット]]></category>

		<guid isPermaLink="false">http://blog.magellanic.net/?p=150</guid>
		<description><![CDATA[スニペット（Snippet）は&#8221;断片&#8221;のことであり、一般的には、コピペで使えるコードサンプルなどのことを言いますが、Eclipseではエディタ上で定型文を挿入する機能のことを言います（というかそう [...]]]></description>
			<content:encoded><![CDATA[				<p>スニペット（Snippet）は&#8221;断片&#8221;のことであり、一般的には、コピペで使えるコードサンプルなどのことを言いますが、Eclipseではエディタ上で定型文を挿入する機能のことを言います（というかそう呼ぶことにします、面倒だから）。</p>
				<p>かなり便利な機能なのですが、そんなに活用している人を見かけないので紹介(゜-゜=)</p>
				<p>スニペットビューを表示するには[ウィンドウ]→[ビューの表示]→[その他]でダイアログを表示し、「一般」フォルダの中の「スニペット」をクリックします。</p>
				<p>ビュー上で右クリック→[カスタマイズ]でユーザが独自に&#8221;断片&#8221;を登録することができ、インポートやエクスポートも行えるのですが、このとき、ユーザが独自に登録したスニペットは以下のディレクトリにxmlファイルとして保存されます。</p>
				<div class="command">{$workspace}\.metadata\.plugins\org.eclipse.wst.common.snippets</div>
				<p>※ $workspace は各自のworkspace</p>
				<p>このディレクトリ名を見るとわかる通り、スニペットビューはWST(Web Standard Tools)によって提供されています。&#8221;Web&#8221;と言いつつ、ほぼすべてのEclipseパッケージに付属している（気がする）プラグインなので、 Eclipseプラットフォーム標準の機能であるかのように使えるわけですね。</p>
				<p>そしてさらに、このスニペットビューにはextension point「SnippetContributions」が定義してあるため、プラグイン開発者はスニペットビューを拡張することもできます。<br />
				この辺は以下のドキュメントを参照してください。単純に挿入したいテキストの設定ならplugin.xmlに書くだけでよいです。</p>
				<p><a href='http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.wst.doc.isv/html/plugin_descriptions_WST/wst.html'>Help &#8211; Eclipse SDK</a></p>
				<p>contenttypesとextensionsが思ったように動いてくれないよぅ…(´・ω・｀)</p>
				<p>■ 参考<br />
				<a href='http://www.eclipse.org/webtools/wst/components/common/overview/snippets/overview.html'>WST Common Snippets subcomponent Overview</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.magellanic.net/archives/150/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

