(2011-06の一覧)
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

2011-06-28 Tue (他の年の同じ日: 2004 2005)

楽天戦 東京ドーム
2011-06-28-1 / カテゴリ: [diary] / [permlink]

今年2度目の楽天戦で2度目の東京ドーム。

今回のレフトスタンドは自由席しかなかったので不安だったけど、別になんともなかったw
楽天戦ということで「頑張ろう東北」という応援ボードもらいました。(表(裏?)がホークス・裏(表?)がイーグルス)
続きを読む
2011-06-18 Sat (他の年の同じ日: 2004 2007)

横浜戦 横浜スタジアム
2011-06-18-1 / カテゴリ: [diary] / [permlink]

雨が気になるけど杉内の1500奪三振&通算100勝を見に!
まぁ、オチを先に言うと1500奪三振はクリアしたけど…ノリとスレッジに同点弾・勝ち越し弾を打たれるなんて…
というか、ファルケンの2度目の被弾目撃とか、勘弁してくれぇ…というか2戦連発なんだよね
画像
続きを読む
2011-06-16 Thu (他の年の同じ日: 2004 2006 2007)

SyntaxHighlighter用の書式で開始行数指定とハイライトを有効にしてみた
2011-06-16-1 / カテゴリ: [chalow] / [permlink]

最近こればっかだな

SyntaxHighlighter 3.0.83自身は、
<pre class="brush: text; first-line: 2; highlighter: [2,3,4]">
...
</pre>
とかで変更できるので、chalow+SyntaxHighlighterにも対応させてみた。

2,4行目をハイライト (h:2,4)
1行目
2行目
3行目
4行目

開始2行目で、2,3行目をハイライト (f:2 h:2,3)
2行目
3行目
4行目
5行目

言語指定で (perl f:3 h:4)
while (<>) {
  print unless /^$/;
}

こんな感じ。ベースは→[2011-01-23-2]
--- chalow	(revision 1845)
+++ chalow	(revision 1846)
@@ -1359,7 +1359,7 @@
 
     ### ソースエスケープ - "&" や "<" などを置換し pre を付ける
     $num_of_escaped_src = 0;
-    $$strp =~ s!\[src(\s\w+)?\](.*?)\[/src\]!
+    $$strp =~ s!\[src(?:\s([\s\w:,]+))?\](.*?)\[/src\]!
$escaped_src{++$num_of_escaped_src} = $2,
$escaped_src_type{$num_of_escaped_src} = $1,
$escaped_src{$num_of_escaped_src} =~ s/&/&amp;/g,
@@ -1381,14 +1381,33 @@
     $$strp =~ s|\x7\x13(\d+)\x3|eval($escaped_plugin{$1})|ge;
     ### ソースアンエスケープ - pre 追加
     # todo(SyntaxHilighter)
-    $$strp =~ s|\x6\x13(\d+)\x3|"<pre class=\"brush:".(length $escaped_src_type{$1}? $escaped_src_type{$1}: "plain").";\">$escaped_src{$1}</pre>"|eg;
+    $$strp =~ s|\x6\x13(\d+)\x3|"<pre class=\"brush: ".get_syntax_opt($escaped_src_type{$1}).";\">$escaped_src{$1}</pre>"|eg;
     # <p>は使ってないので
     #$$strp =~ s|\x6\x13(\d+)\x3|</p><pre>$escaped_src{$1}</pre><p>|g;
     ### HTML アンエスケープ
     $$strp =~ s|\x5\x13(\d+)\x3|$escaped_string{$1}|g;
 }
 
+sub get_syntax_opt {
+  my $lang = "plain";
+  my @opts;
+  for (split /\s+/, shift) {
+    if (/^[^:]+$/) {
+      $lang = $_;
+    }
+    if (/f:(\d+)/) {
+      push @opts, "first-line: $1";
+    }
+    if (/h:([\d,]+)/) {
+      my $t = $1;
+      push @opts, "highlight: [$1]";
+    }
+  }
+  unshift @opts, $lang;
+  return join "; ", @opts;
+}
 
+
 ### inside referrer のリンク作成
 sub get_inside_ref {
     my ($id) = @_;

ついでにツールバーも消した。
2011-06-13 Mon (他の年の同じ日: 2004 2005)

日記内のリスト対応(割と適当)してみた
2011-06-13-1 / カテゴリ: [chalow] / [permlink]

リスト表記してみた
- 項目
- 項目
-- 項目2段階目
--- 項目3段階目
---- 項目4段階目
- てへ
こんな感じ
  • 項目
  • 項目
    • 項目2段階目
      • 項目3段階目
        • 項目4段階目
  • てへ


----
なら罫線

ソースの変更点はこんな感じ。
標準だとハイフン4文字のみで罫線になってしまうので、^----$ に制限を追加。あとはちょっと適当です。
--- chalow	(revision 1840)
+++ chalow	(working copy)
@@ -517,7 +518,7 @@
     s!'''(.+?)'''!<strong>$1</strong>!gms;
     s!''(.+?)''!<em>$1</em>!gms;
     s!==(\S.+?)==!<s>$1</s>!gms;
-    s!^\-{4}!<hr />!gms;
+    s!^\-{4}$!<hr />!gms;
 
     ### URL。Hiki の記法を採用。
     s!\[\[(.+?)\s*\|\s*(.+?)\]\]!get_link_str($1, $2)!gmse;
@@ -544,6 +545,10 @@
     ### ヘッダ(Heading): "^= string" <h3>から</h3>
     s!^(=+)\s*(.*)!my $a=2+length $1; $a=($a<7)?$a:7; "<h$a>".$2."</h$a>"!gme;
 
+    ### リスト
+    # ^\t-+\s に反応。
+    $_ = listing($_);
+
     ### 日付で参照リンク
     # date ref : [YYYY-MM-DD]
     $_ = datestr2anchor($_);
@@ -577,11 +582,30 @@
 
     s!</pre><br />!</pre>!g;	# ad hoc
     s!</h(\d)><br />!</h$1>!g;
-
+    s!<ul><br />!<ul>!g;    # ad hoc
+    s!</li><br />!</li>!g;  # ad hoc
+    s!</ul><br />!</ul>!g;  # ad hoc
     return $_;
 }
 
+### リスト変換
+sub listing {
+  my $str = shift;
+  $str =~ s!(?:^(-+\s+.*))!<li>$1</li>!gm;
+  $str =~ s!((?:<li>.*</li>\n)+)!listing_f($1)!egm;
+  return $str;
+}
+sub listing_f {
+  my $str = shift;
 
+  $str =~ s!<li>-!<li>!gm;
+  $str = "<ul>".$str."</ul>";
+  $str =~ s!((<li>-.*\n)+)!listing_f($1)!egm;
+
+  return $str;
+}
+
+
 ### アイテムをHTMLに変換
 sub make_item_html {
     my ($e, $ymd, $i) = @_;

あと、ようやくsvnに突っ込んだ(笑)
Referrer (Inside): [2010-01-05-1]
2011-06-12 Sun (他の年の同じ日: 2005 2006)

日記内の見出しに対応してみた
2011-06-12-1 / カテゴリ: [chalow] / [permlink]

日記内に小見出しを定義できるようにして、<h3>〜</h3>とかになるようにしてみた。
--- chalow.20110609	2011-02-06 04:25:50.718241770 +0900
+++ chalow	2011-06-12 20:42:48.266058342 +0900
@@ -539,4 +538,7 @@
     }
 
+    ### ヘッダ(Heading): "^= string" <h3>から</h3>
+    s!^(=+)\s*(.*)!my $a=2+length $1; $a=($a<7)?$a:7; "<h$a>".$2."</h$a>"!gme;
+
     ### 日付で参照リンク
     # date ref : [YYYY-MM-DD]
@@ -571,4 +573,5 @@
 
     s!</pre><br />!</pre>!g;	# ad hoc
+    s!</h(\d)><br />!</h$1>!g;
 
     return $_;

とりあえず * は使えない(itemの区切り)ので、行頭 "=" を見出しにすることにしました。
デフォルト書式の取り消し線と重複してるので、取り消し線の変換処理の後に上の処理を入れればOK。
上のコードだと、開始("="1個)を<h3>にしてるので、その辺は微調整すればよし。(lengthの結果の加算部分)

あとはChangelogで
= タイトル
文章1
== サブタイトル
文章2
とか書けば

タイトル

文章1

サブタイトル

文章2

となる。
2011-06-08 Wed (他の年の同じ日: 2004 2005)

Preferencesで設定値の読書き
2011-06-08-1 / カテゴリ: [Java][Android] / [permlink]

設定の読書き。というか備忘録。
SharedPreferencesインスタンス経由で読んで、SharedPreferences.Editor経由で書き込む。

PreferenceActivity(PreferenceScreen)はまたそのうち。

続きを読む
Referrer (Inside): [2011-07-03-1]
2011-06-03 Fri (他の年の同じ日: 2005)

日付の取得・変換(java.util.Calendar / java.util.Date)
2011-06-03-1 / カテゴリ: [Java] / [permlink]

今更メモ。すぐわからなくなるので。

現在の年月日・時分秒を取得する。

Calendar cal = Calendar.getInstance();
int year = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH);
int day = cal.get(Calendar.DAY_OF_MONTH);
int hour = cal.get(Calendar.HOUR_OF_DAY);
int min = cal.get(Calendar.MINUTE);
int sec = cal.get(Calendar.SECOND);
int msec = cal.get(Calendar.MILLISECOND);

現在のUNIX time(msec)を取得する。

long utc = System.currentTimeMillis();

UNIX timeを元に年月日・時分秒を取得する

long time = System.currentTimeMillis();
// time をなんか更新
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(time);

年月日・時分秒を指定してCalendarの日時をセット

Calendar cal = Calendar.getInstance();
cal.set(year, month - 1, day, hour, min, 0);
set(Year, Month, Day) や set(Year, Month, Day, Hour, Min) もある。未指定の場合はセット前の値が引き継がれる。ゆえに、ミリ秒の指定は(多分)できないので(set()を使う限りは)getInstance()時の時刻のままになる。

CalendarインスタンスからUNIX timeを取得

Calendar cal = Calendar.getInstance();
// cal をなんか操作
long utc = cal.getTimeInMillis();

CalendarインスタンスからDateインスタンスを取得

Calendar cal = Calendar.getInstance();
// calを何か操作
Date date = cal.getTime();

Dateインスタンスの指定でCalendarの日時をセット

long utc = System.currentTimeMillis();
Date date = new Date(utc);
Calendar cal = Calendar.getInstance();
cal.setTime(date);
System.out.println("eq? " + (cal.getTimeInMillis() == utc));
// 出力はtrue

DateインスタンスからUNIX timeを取得

// ↑のコードの続きで
System.out.println("eq? " + (date.getTime() == utc));
// 出力はtrue
2011-06
前の月 / 次の月 / 最新

2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12

最終更新時間: 2013-05-02 16:12