Mac / iOS 開発担当の松本です。
先日リリースしました Sleipnir 3 for Mac RC 版、皆様お試しいただけていますでしょうか。まだの方は是非ぜひ!既に試された方はフィードバックもいただけると凄く嬉しいです。
さて、その RC 版には”分割画面”という機能があります。OS X Lion のフルスクリーンをもっと良く使いたいという流れで実装された機能で、iMac の広い画面で使うと綺麗に2つのページを並べられて良いですね。
一方で Mac Book だと画面が狭いので、分割時に画面に収まるページがあまりありません。何か上手くハマるページは無いものかということで、Yahoo Pipes を使ってフィードを流してみる事にしました。
まず Yahoo Pipes で購読したいフィードをくっつけて1つのフィードに結合します。初めて Pipes を利用したのですが、こちらのページを参考に簡単に想定した出力を得られました。
つぎに、先ほどの Pipes からの出力を受けてフィードっぽく表示する HTML を書きます。Pipes の JSON 形式のエンドポイントに _callback というパラメータを渡すと JSONP が利用できるので、非常に簡単にデータの利用が可能です。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Sleipnir for Mac Simple Feed</title>
<style>
#zebra {
font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
font-size: 12px;
margin: 2x;
width: 350px;
text-align: left;
border-collapse: collapse;
}
#zebra th {
font-size: 14px;
font-weight: normal;
padding: 10px 8px;
color: #039;
}
#zebra td {
padding: 8px;
color: #669;
}
#zebra .odd {
background: #e8edff;
}
</style>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(function() {
$.getJSON(
"http://pipes.yahoo.com/pipes/pipe.run?_id=d024192ebd012b9ad7d49a57b0f52e6a&_render=json" + "&_callback=?",
function(data) {
var tableElem = document.createElement("table");
tableElem.id = 'zebra';
var items = data.value.items;
for (var i = 0; i < items.length; i++) {
var item = items[i];
var rowElem = document.createElement("tr");
var faviconCellElem = document.createElement("td");
var faviconElem = document.createElement("img");
faviconElem.src = 'http://favicon.qfor.info/f/' + item.link;
faviconCellElem.appendChild(faviconElem);
var cellElem = document.createElement("td");
var anchorElem = document.createElement("a");
anchorElem.href = item.link;
anchorElem.appendChild(document.createTextNode(item.title));
cellElem.appendChild(anchorElem);
rowElem.appendChild(faviconCellElem);
rowElem.appendChild(cellElem);
if (i % 2) {
rowElem.className = 'odd';
}
tableElem.appendChild(rowElem);
console.log(item);
}
document.getElementById('target').appendChild(tableElem);
}
);
});
</script>
</head>
<body>
<div id="target"></div>
</body>
</html>
コード中で URL に対する favicon を取得する為に、コチラの API を利用させていただきました。ありがとうございます。
このファイルを適当な場所に保存して Sleipnir for Mac で開けば、冒頭の画像のようにスプリット側でフィードを読めます。スプリット側のリンクをドラッグ&ドロップするとフィードを消化できますね!
今はまだ手がかかる Sleipnir for Mac ですが、少しずつ確実に改善を続けていきますので、暖かく見守っていただけると幸いです。











