memo.xight.org

日々のメモ

カテゴリ : chalow

1ページ目 / 全2ページ

指定したURLのスクリーンショットを挿入する chalowプラグイン

Summary

wordpress.com の非公式APIを利用してスクリーンショットを表示するための chalowプラグイン

この非公開APIの使用に関しては「使用もリンクも自由」との回答を得たものの、
オフィシャルではない為、いつまでも使える保証はない

######################
# Webページのスクリーンショットを挿入する
# usage: {{screenshot('URL')}}
sub screenshot{
	my ($url) = @_;
	my $width = 400;
	my $enc = URI::Escape::uri_escape($url);
	return qq(<a href="$url"><img src="http://s.wordpress.com/mshots/v1/$enc?w=$width"></a>);
}


Reference

Binary Moon - 2010-02-06 - An Automated Way to Take Screenshots of any Website - Free
http://www.binarymoon.co.uk/2010/02/automated-take-screenshots-website-free/

via

memobits - 2012-07-11 - URLだけでサイトのスクリーンショットを取得して簡単にサムネイル画像がつくれるサービスやAPIを調べてみた
http://m.designbits.jp/12071114/

かちびと.net - 2011-04-18 - お手軽WordPress Tips:wordpress.comのAPIを使ってスクリーンショットを取得する
http://kachibito.net/wordpress/screenshot-api.html

「よかった探しリース」 chalowプラグイン

Summary

「よかった探しリース」[2006-12-02-5]のためのchalowプラグイン[2006-12-02-6]
久しぶりに見たらURLが変わっていたので、修正。

### よかった探しリース
# usage: {{hyuki_wreath('id')}}
sub hyuki_wreath {
    my ($id) = @_;
    my $prefix = 'http://www4023ui.sakura.ne.jp:8888';
    my $left   = qq($prefix/left/$id);
    my $right  = qq($prefix/right/$id);

    return qq(
        <a href="$left">&laquo; 左手</a>
        <a href="http://www.hyuki.com/ring/">よかった探しリース</a>
        <a href="$right">右手 &raquo;</a>
    );
}


Reference

よかった探しリース
http://www.hyuki.com/ring

Vimeo Movie 埋込 chalowプラグイン

Source

######################
# embed vimeo movie
# usage: {{vimeo('id','width','height')}}
sub vimeo {
    my ($id,$width,$height) = @_;
    return qq(<object width="$width" height="$height">
    <param name="allowfullscreen" value="true" />
    <param name="allowscriptaccess" value="always" />
    <param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=$id&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;fullscreen=1" />
    <embed src="http://vimeo.com/moogaloop.swf?clip_id=$id&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="$width" height="$height">
    </embed>
    </object>);
}

iTunes App Store chalowプラグイン

Summary

iPhoneアプリの紹介のために作成。
アフィリエイトIDも埋め込めるようにする

Source

######################
# itms へのリンク
# usage: {{itms('app_name','software_id')}}
sub itms {
    my ($app,$id) = @_;
    my $prefix = q(itms://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=);
    return qq(<a href="$prefix$id">$app</a>);
}

埋め込み Google Maps chalowプラグイン

Summary

いまさらながら、Google Mapsの埋め込みプラグインを作成。

Source

### Google Mapsの埋め込み
# usage: {{embed_google_maps('住所 (店名など)')}}
sub embed_google_maps {
  my ($str) = @_;
  my $prefix = q(http://maps.google.co.jp/maps?q=);
  my $enc = URI::Escape::uri_escape(Jcode->new($str)->utf8);
  my $width = 600;
  my $height = 400;
  return qq(<iframe width="$width" height="$height" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="$prefix$enc&amp;output=embed"></iframe>);
}

sub embed_maps {embed_google_maps(@_)}

「よかった探しリース」 chalowプラグイン (obsolete)

Summary

「よかった探しリース」[2006-12-02-5]のためのchalowプラグイン

### よかった探しリース
# usage: {{hyuki_wreath('id')}}
sub hyuki_wreath {
    my ($id) = @_;
    my $prefix = 'http://www.hyuki.com/ring/ring.cgi';
    my $left   = $prefix.'?mycmd=left&myid='.$id;
    my $right  = $prefix.'?mycmd=right&myid='.$id;
    return qq(
        <a href="$left">左手</a>
        <a href="$prefix">よかった探しリース</a>
        <a href="$right">右手</a>
    );
}

勝手に ALPSLAB clip! for chalow - ALPSLAB clip! の chalow 用プラグイン

Summary

以下の記述で地図が挿入できる.
{{alps_map('東京都新宿区西新宿2-8-1')}}
{{alps_map('35/41/10.574,139/41/41.787')}}

{{alps_map('東京都新宿区西新宿2-8-1','LN')}}


Sample

ALPSLAB clip! - 東京都新宿区西新宿2-8-1

オプション

サイズ指定
L 480 x 360
M 320 x 240 (デフォルト)
S 240 x 180

縮尺指定
D 詳細 最大縮尺 (デフォルト)
N 中域 (25000階層)
W 広域 (250000階層)

Reference

勝手に ALPSLAB clips! for chalow
http://www.kunitake.org/chalow/alps-chalow_pl.txt

ALPSLAB clip!
http://www.alpslab.jp/clip.html

戯れ言 / 2006-02-28
http://www.kunitake.org/chalow/2006-02-28.html#2006-02-28-2

via

/home/pochi/ChangeLog - 2006-03-01 - ALPSLAB clip! の Chalow 用プラグイン
http://www.pochi.cc/~sasaki/chalow/2006-03-01-1.html

読書記録ChangeLog - 2006-03-01
http://dkiroku.com/2006-03-01-14.html

追記 [2009-08-19-1]

embed_mapに変更。
いまさら、Google mapsの埋め込みに。

chalow でキーボードタグを利用するプラグイン

Source

### キーボード
# usage: {{keyboard('Ctrl','Alt','Del')}}
sub keyboard {
	@result = map {'<kbd>'.$_.'</kbd>'} @_;
	return join('+',@result);
}


CSSを使ってキーボード入力をアイコンのように表示[2006-01-19-6] と組み合わせると良い.
kbd {
	color: #333333;
	background-color: white;
	text-align: center;
	border-left: 1px solid #cfcfcf;
	border-top: 1px solid #cfcfcf;
	border-right: 2px solid #666666;
	border-bottom: 2px solid #666666;
	-moz-border-radius: 4px 4px 4px 4px;
	padding-left: 2px;
	padding-top: 1px;
	padding-right: 3px;
	padding-bottom: 1px;
	margin-left: 2px;
	margin-right: 2px;
	margin-top: 1px;
	margin-bottom: 1px;
	vertical-align: middle;
	font-family: sans-serif;
}


Sample

Ctrl+Alt+Del

chalow の 駅前探検倶楽部へのリンクプラグイン

Summary

紹介した店の最寄駅までの乗り換えを簡単に調べられるようにしたい.
駅前探検倶楽部の「下車駅」に引数を入力するプラグインを作成.

Source

### 駅前探検倶楽部へのリンク
# usage: {{ekitan('中板橋')}}
sub ekitan {
	my ($str) = @_;
	my $prefix = q(http://www8.ekitan.com/norikae/Norikae1Servlet?ST=);
	my $enc = Jcode->new($str)->sjis;
	$enc =~ s/([^0-9a-z_ ])/'%'.unpack('H2', $1)/gei;
	$enc =~ s/\s/+/g;
	return qq(<a href="$prefix$enc" title="駅探検索 - $str着">$str</a>);
}
sub station {ekitan(@_)}


Sample

中板橋
板橋本町

Google画像検索 chalow プラグイン

### Google 画像検索へのリンクプラグイン
# usage: {{google_image('keyword')}}
sub google_image {
	my ($str) = @_;
	my $prefix = q(http://images.google.com/images?q=);
	my $enc = Jcode->new($str)->utf8;
	$enc =~ s/([^0-9a-z_ ])/'%'.unpack('H2', $1)/gei;
	$enc =~ s/\s/+/g;
	return qq(<a href="$prefix$enc" title="Google Images - $str">Google 画像検索 - $str</a>);
}

chalow のプラグインを容易に移行するには

Summary

地図サービスへのリンクの切り替えが面倒.
今回は MapionBB プラグインから Google Maps プラグインへの切り替え.

s/{{mapion/{{google_maps/g

解決方法

地図サービスへのリンクプラグインの名前をラッピングする.
mapを地図サービスへのリンクとして利用.
mapプラグイン内で実際の地図サービスプラグインを呼び出す.

sub maps {mapion(@_)}

から
sub maps {google_maps(@_)}

に変更するだけで良くなる.

chalow の Google Maps へのリンクプラグイン

Reference

### Google ローカルへのリンク
# usage: {{google_map('東京都○○区○町00-0')}}
sub google_map {
	my ($str) = @_;
	my $prefix = q(http://maps.google.co.jp);
	my $enc = Jcode->new($str)->utf8;
	$enc =~ s/([^0-9a-z_ ])/'%'.unpack('H2', $1)/gei;
	$enc =~ s/\s/+/g;
	return qq(<a href="$prefix/maps?q=$enc" title="Google ローカル - $str">$str</a>);
}

chalow Google Video Search Plug-in

Source

### Google Video検索へのリンクプラグイン
# usage: {{google_video('keyword')}}
sub google_video{
	my ($str) = @_;
	my $prefix = q(http://video.google.com/videosearch?q=);
	return qq(<a href="$prefix$str" title="Google Video - $str">Google 動画検索 - $str</a>);
}

chalowで画像ポップアップ

Summary

クリックしたらサムネイルの画像を拡大するようにした.

大きな画像をポップアップ [2005-09-28-5] のJavaScriptを popupImage.jsというファイルで保存して,各ページに<script>タグを埋め込む.


<script src="popupImage.js" type="text/javascript"></script>


chalowファイルの get_link_str の中を変更

sub get_link_str {
	my ($a, $b) = @_;
	if ($a =~ /\.(jpg|jpeg|png|gif)$/i) { # [[http://nais.to/|image/nais.jpg]]
		# return qq(<a href="$b"><img src="$a" alt="画像" /></a>);
		return qq(<img src="$a" alt="クリックして拡大" onclick="popupImage('$b')" /><a href="$b">.</a>);
	} elsif ($b =~ /\.(jpg|jpeg|png|gif)$/i) { # [[自画像|image/sp.jpg]]
		return qq(<img src="$b" alt="$a" />);
	} else {            # [[トップページ|http://nais.to/]]
		return qq(<a href="$b">$a</a>);
	}
}


Reference

オブジェクト指向JavaScript - 大きな画像をポップアップ
http://web.paulownia.jp/script/sample/popup.html

chalow Google Music Search Plug-in

Source

### Google音楽検索へのリンクプラグイン
# usage: {{google_music('キーワード')}}
sub google_music {
	my ($str) = @_;
	my $prefix = q(http://www.google.com/musicsearch?q=);
	return qq(<a href="$prefix$str" title="Google Music - $str">Google 音楽検索 - $str</a>);
}

chalow Google Local Plug-in

Source

### Google Local Plug-in
# usage: {{google_local('what','where')}}
sub google_local {
	my ($what,$where) = @_;
	my $prefix = q(http://local.google.co.jp);

	my $what_enc = q();
	$what_enc = Jcode->new($what)->utf8;
	$what_enc =~ s/([^0-9a-z_ ])/'%'.unpack('H2', $1)/gei;
	$what_enc =~ s/\s/+/g;

	my $where_enc = q();
	$where_enc = Jcode->new($where)->utf8;
	$where_enc =~ s/([^0-9a-z_ ])/'%'.unpack('H2', $1)/gei;
	$where_enc =~ s/\s/+/g;

	my $ret  = qq(<a href="$prefix/local?q=$what_enc&near=$where_enc" title="Google Local - $where の $what">);
	   $ret .= qq(Google Local - $where の $what);
	   $ret .= qq(</a>);
	return $ret;
}