BloggerでAndroidのソースコード(主にJava、xml)を奇麗に貼付ける方法です。
SyntaxHighlighterというフリーで公開されているJavaScriptを使うことで、下記のように奇麗に表示できます。
public class ApiDemos extends ListActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Intent intent = getIntent(); String path = intent.getStringExtra("com.example.android.apis.Path"); if (path == null) { path = ""; } setListAdapter(new SimpleAdapter(this, getData(path), android.R.layout.simple_list_item_1, new String[] { "title" }, new int[] { android.R.id.text1 })); getListView().setTextFilterEnabled(true); }
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/accessibility_service_instructions" /> <ImageButton android:id="@+id/button" android:background="@drawable/ic_launcher_settings" android:layout_width="32dip" android:layout_height="32dip" android:layout_marginTop="50dip" android:layout_gravity="center" android:scaleType="fitCenter" android:adjustViewBounds="true" /> </LinearLayout>
まず最初にBloggerへ設定が必要です。
BloggerのTemplateからEdit HTMLを選択し、確認画面がでるので、Proceedを選択します。
編集画面がでたら</head>を探します。その</head>の直前に下記のコードを挿入します。
<link href='http://alexgorbatchev.com/pub/sh/current/styles/shCore.css' rel='stylesheet' type='text/css'/> <link href='http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css' rel='stylesheet' type='text/css'/> <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shCore.js' type='text/javascript'></script> <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCpp.js' type='text/javascript'></script> <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shBrushJava.js' type='text/javascript'></script> <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shBrushXml.js' type='text/javascript'></script> <script language="javascript" type="text/javascript"> SyntaxHighlighter.config.bloggerMode = true; SyntaxHighlighter.all(); </script>
保存して編集を終了します。以上で設定は完了です。
あとは下記の手順で自分の投稿(post)にソースコードを貼付けることができます。
ソースコードを貼付けたい時は、ComposeでなくHTMLに入力モードを切り替えて、
<pre class="brush:java;">
貼付けたいAndroidソースコード(Java)
</pre>
または、
<pre class="brush:xml;">
貼付けたいxml(layout.xmlなど)
</pre>
ただし!貼付けるソースコードは<>などのHTML的特殊記号がエスケープされている(<のように)必要があります。なので、コードをそのままコピペすることはできません!
そこで、コピペしたコードをHTMLエスケープされたコードに変換してからコピペする必要があります。下記のサイトで簡単に一発変換できます。
WEBサイト・ブログの為のHTMLソースコード変換
これで奇麗なソースコードが表示されます。他にもいろいろ変換してくれるサイトがありますので、気に入ったところを探してみてください。
その他の修飾機能として、タイトルや開始行、特定の行の強調表示なども行えます。
タイトルの指定は、
<pre class="brush:xml;" title="タイトル">
とします。
開始行はfirst-line、行の強調はhighlightを使います。複数行の指定も可能で、カンマ(,)で複数記述できます。
<pre class="brush:xml; first-line:10; highlight:[10,15]">
package jp.myapp.sample; import android.app.Activity; import android.os.Bundle; import android.util.Log; public class SubAppActivity extends Activity { private final static String TAB = "SubAppActivity"; @Override public void onCreate(Bundle savedInstanceState) { Log.i(TAB, "onCreate"); super.onCreate(savedInstanceState); setContentView(R.layout.sub); }
おまけ:BloggerへのSyntax Highlighterの設定ですが、下記のサイトで自動生成することができます。Syntax Highlighterは多数の言語に対応していますので、他の言語も使いたい時はこちらのサイトを利用すると簡単です。
Way2Blogging:HOW TO ADD SYNTAX HIGHLIGHTER(V3) TO BLOGGER BLOGS
Syntax Highlighterそのものの使い方は下記の公式サイトを参照。
Syntax Highlighter公式サイト
No comments:
Post a Comment