libly(filename _libly.js)

Description
Vimperator plugins library?適当なライブラリっぽいものたち。
Latest version
0.1.33
Author
suVene
License
MIT

for 2.2
http://coderepos.org/share/browser/lang/javascript/vimperator-plugins/branches/2.2/_libly.js
for 2.1
http://coderepos.org/share/browser/lang/javascript/vimperator-plugins/branches/2.1/_libly.js
for 2.0
http://coderepos.org/share/browser/lang/javascript/vimperator-plugins/branches/2.0/_libly.js
for 1.2
not supported
for Nightly
http://coderepos.org/share/browser/lang/javascript/vimperator-plugins/trunk/_libly.js

Objects

  • liberator.plugins.libly.$U
  • liberator.plugins.libly.Request
  • liberator.plugins.libly.Response
  • liberator.plugins.libly.Wedata

Logger

getLogger(prefix)
log(msg, level), echo(msg, flg), echoerr(msg)
のメソッドを持つ logger インスタンスを取得します。
ログの書式は prefix + ': ' + yyyy/MM/dd + msg となります。

Object Utility

extend(dst, src)
オブジェクトを拡張します。
A(iterable)
オブジェクトを配列にします。
around(obj, name, func, autoRestore)
obj がもつ name 関数を、func に置き換えます。
func は
function (next, args) {...}
という形で呼ばれます。
next はオリジナルの関数を呼び出すための関数、
args はオリジナルの引数列です。
通常、next には引数を渡す必要はありません。
(任意の引数を渡したい場合は配列で渡します。)
また、autoRestore が真であれば、プラグインの再ロードなどで around が再実行されたときに、関数の置き換え前にオリジナル状態に書き戻します。
(多重に置き換えられなくなるので、auto_source.js などを使ったプラグイン開発で便利です)
返値は以下のオブジェクトです
{
  original: オリジナルの関数
  current: 現在の関数
  restore: 元に戻すための関数
}
bind(obj, func)
func に obj を bind します。
func内からは this で obj が参照できるようになります。
eval(text)
Sandbox による、window.eval を極力利用するようにします。
Snadbox が利用できない場合は、unsafe な window の eval が直接利用されます。
evalJson(str, toRemove)
str を decode します。
toRemove が true の場合、文字列の前後を1文字削除します。
"(key:value)" 形式の場合などに true を指定して下さい。
dateFormat(dtm, fmt)
Date型インスタンスを、指定されたフォーマットで文字列に変換します。
fmt を省略した場合、"%y/%M/%d %h:%m:%s" となります。
runnable(generator)
gererator を実行し、再帰的に resume する為の引数を渡します。

Browser

getSelectedString
window の選択文字列を返却します。
getUserAndPassword(hostname, formSubmitURL, username)
login-manager から [username, password] を取得します。
引数の username が省略された場合、検索された 1件目を返却します。
データが存在しない場合は、null を返却します。

System

readDirectory(path, fileter, func)
path で指定したディレクトリから、filter で指定された正規表現に match する場合、
func をファイル名を引数にコールバックします。
filter は Function を指定することも可能です。

HTML, XML, DOM, E4X

pathToURL(a, baseURL, doc)
相対パスを絶対パスに変換します。
getHTMLFragment(html)
<html>※1</html>
※1 の文字列を取得します。
stripTags(str, tags)
str から tags で指定されたタグを取り除いて返却します。
tags は文字列、または配列で指定して下さい。
createHTMLDocument(str, xmlns)
引数 str より、HTMLFragment を作成します。
getFirstNodeFromXPath(xpath, context)
xpath を評価しオブジェクトをを返却します。
getNodesFromXPath(xpath, context, callback, thisObj)
xpath を評価し snapshot の配列を返却します。
xmlSerialize(xml)
xml を文字列化します。
xmlToDom(node, doc, nodes)
for vimperator1.2.
@see vimperator2.0pre util.
getElementPosition(elem)
elem の offset を返却します。
return {top: 0, left: 0}
toStyleText(style)
スタイルが格納されているオブジェクトを
position: fixed;
left: 10px;
のような文字列に変換します。

Object Request

Request(url, headers, options)
コンストラクタ
url
HTTPリクエスト先のURL
headers
以下のようにHTTPヘッダの値を指定できる(省略可)
{
    'Referer' : 'http://example.com/'
}
以下の値はデフォルトで設定される('Content-type'はPOST時のみ)
{
    'Accept': 'text/javascript, application/javascript, text/html, application/xhtml+xml, application/xml, text/xml, */*;q=0.1',
    'Content-type': 'application/x-www-form-urlencoded; charset=' + options.encodingの値
}
options
オプションとして以下のようなオブジェクトを指定できる(省略可)
asynchronous
true: 同期モード/false: 非同期モード(デフォルト:true)
encoding
エンコーディング(デフォルト: 'UTF-8')
username
BASIC認証時のuser名
password
BASIC認証時のパスワード
postBody
POSTメソッドにより送信するbody
addEventListener(name, func)
イベントリスナを登録する。
name
'onSuccess'
成功時
'onFailure'
失敗を表すステータスコードが返ってきた時
'onException'
例外発生時
func
イベント発火時の処理
引数として以下Responseオブジェクトが渡される
get()
GETメソッドによりHTTPリクエストを発行する。
post()
POSTメソッドによりHTTPリクエストを発行する。

Object Response

HTTPレスポンスを表すオブジェクト
req
レスポンスと対となるRequestオブジェクト
doc
レスポンスから生成されたHTMLDocumentオブジェクト
isSuccess()
ステータスコードが成功を表していればtrue、失敗であればfalse
getStatus()
ステータスコードを取得する
getStatusText()
ステータを表す文字列を取得する
getHTMLDocument(xpath, xmlns, ignoreTags, callback, thisObj)
レスポンスからHTMLDocumentオブジェクトを生成し、xpath を評価した結果の snapshot の配列を返す

Object Wedata

~/vimperator/info/profile_name/plugins-libly-wedata-?????
に store されます。
getItems(expire, itemCallback, finalCallback)
インスタンス作成時に指定した dbname から、item を読込みます。

TODO

clearCache
wedata 読込み成功したら、強制的にキャッシュと置き換えるの作って!
back to index