之前说,目前较想要的两个命令是YupooJiwai.de的。因为Yupoo是我主要存放图片的地方,但目前还没发现有人编写它的命令,而叽歪是我发即时消息的地方,叽歪命令倒是有houyr编写了一个,但Subscribe后刚能用了,重启浏览器后就又不能用,好像不能保存。完全依靠别人弄好不是办法,想用还得自己动手。

先是观察了一下houyr的叽歪命令代码,发现代码里面有不少中文,猜测可能是中文字符出问题了,于是把里面所有的中文都改写成相应的英文,再把整段代码不是Subscribe,而是复制粘贴到我的command-editor,再试了试,果然能用了,重启浏览器也没问题。

Yupoo的搜索我是参照flickr的,就是直接搬过来用,只是修改了里面相应的内容变为yupoo的,比如搜索句式、favicon地址、REST请求、API key等。只是,不知道哪里的问题,贴到command-editor后搜索倒是能搜索了,但是类似flickr上的ajax预览图片功能却出不来。希望高手帮忙指点一下。

两段代码分别贴到下面:


先是叽歪的:

// How many words can jiwai send?
const JIWAI_STATUS_MAXLEN = 500;

CmdUtils.CreateCommand({
name: “jiwai”,
takes: {status: noun_arb_text},
homepage: “http://jiwai.de/”,
author: {name: “Damien Hou”, homepage: “http://jiwai.de/houyr/”},
icon: “http://asset3.jiwai.de/img/favicon.ico”,
license: “MPL”,
preview: function(previewBlock, statusText) {
var previewTemplate = “Send a Jiwai:
” +
${status}

” +
“remaining: ${chars}“;
var truncateTemplate = “
the last${truncate} ” +
“will be truncated.”;
var previewData = {
status: statusText.text,
chars: JIWAI_STATUS_MAXLEN – statusText.text.length
};
var previewHTML = CmdUtils.renderTemplate(previewTemplate, previewData);
if(previewData.chars < 0) { var truncateData = { truncate: 0 - previewData.chars }; previewHTML += CmdUtils.renderTemplate(truncateTemplate, truncateData); } previewBlock.innerHTML = previewHTML; }, execute: function(statusText) { if(statusText.text.length < 1) { displayMessage("Forget what to say?"); return; } var updateUrl = "http://api.jiwai.de/statuses/update.json"; var updateParams = { source: "ubiquity", status: statusText.text }; jQuery.ajax({ type: "POST", url: updateUrl, data: updateParams, dataType: "json", error: function() { displayMessage("Fail"); }, success: function() { displayMessage("Success!yeah~"); } }); } })

这个是yupoo的:

makeSearchCommand({
name: “Yupoo”,
url: “http://www.yupoo.com/search/?q={QUERY}&w=all”,
icon: “http://www.yupoo.com/favicon.ico”,
description: “Searches 【a href=”http://www.yupoo.com”】Yupoo for pictures matching your words.”,
preview : function(previewBlock, inputObject){
var inputText = inputObject.text;

if(inputText.length < 1) { previewBlock.innerHTML = "Searches for photos on Yupoo."; return; } previewBlock.innerHTML = "Searching for photos on Yupoo..."; var apiUrl = "http://www.yupoo.com/api/rest/"; var apiParams = { api_key: "f75028ca67a9e25dcd29a03d105b9498", format: "json", nojsoncallback: 1, method: "yupoo.photos.search", media: "photos", text: inputText, per_page: 8, sort: "relevance" }; jQuery.ajax({ type: "GET", url: apiUrl, data: apiParams, datatype: "string", error: function() { previewBlock.innerHTML = "Error searching Yupoo.“;
},
success: function(responseData) {
responseData = Utils.decodeJson(responseData);

if(responseData.stat != “ok”) {
previewBlock.innerHTML = “Error searching Yupoo.“;
return;
}

var previewData = {
numcols: 4,
nummatches: responseData.photos.total,
photos: responseData.photos.photo
};

previewBlock.innerHTML = CmdUtils.renderTemplate({file:”yupoo.html”}, previewData);
}
});
}
});



6 Responses to “叽歪和Yupoo的Ubiquity命令”

  1. 1
    冰古
    2008-10-11- 星期六 3:23    @reply     

    看来是玩上瘾了。。。

  2. 2
    asiapan
    2008-10-11- 星期六 9:35    @reply     

    @冰古: 蛮好玩的 😀

  3. 3
    an9
    2008-10-11- 星期六 11:41    @reply     

    不会,路过。

  4. 4
    Shawn
    2008-10-11- 星期六 15:45    @reply     

    Yupoo 那个只是搜索么?那没什么意义吧。
    感觉 Ubiquity 的文字类的应用还比较有趣,但是图片类的就算了。。。

  5. 5
    asiapan
    2008-10-11- 星期六 16:16    @reply     

    做不好,而且搜索中文图片乱码,我自己也没使用。要是能像flickr那样预览就不错。但我确实不会做,照猫画虎也不成。

  6. 6
    HaHaGood
    2008-11-3- 星期一 19:25    @reply     

    用起来感觉不错.

    不过还有个问题.当用户名是中文的时候,似乎登录不上jiwai.

Leave a Comment

Tags allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

提示/Tips可使用Ctrl+Enter快速提交留言出口成脏一律垃圾处理。

blank