Skip to content

Instantly share code, notes, and snippets.

@littlefolk
littlefolk / vimperator dialog command, short arg text
Created November 27, 2009 08:40
vimperator patch: ":dialog addon -> :dialog addo"
diff -r cd6428c447f7 common/content/liberator.js
--- a/common/content/liberator.js Wed Nov 25 23:44:35 2009 +0100
+++ b/common/content/liberator.js Fri Nov 27 17:19:47 2009 +0900
@@ -1275,7 +1275,7 @@
let dialogs = config.dialogs;
for (let [, dialog] in Iterator(dialogs)) {
- if (util.compareIgnoreCase(arg, dialog[0]) == 0) {
+ if (dialog[0].indexOf(arg) == 0) {
dialog[2]();
@littlefolk
littlefolk / gist:250225
Created December 6, 2009 13:30
VimperatorでXPathで指定した範囲を選択する
// VimperatorでXPathで指定した範囲を選択する
let Node = plugins.libly.$U.getFirstNodeFromXPath("//*");
if (Node)
{
let range = content.document.createRange();
range.selectNodeContents(Node);
content.getSelection().addRange(range);
}
@littlefolk
littlefolk / alternates.js
Created March 10, 2010 14:51
vimperator plugin: alternates.js (前に見てたタブへ移動するキーバインド(<C-^>, <C-6>)の[Count]対応版)
liberator.plugins.alternates = (function(){ // {{{
let _alternates = tabs._alternates;
plugins.libly.$U.around(
tabs,
"updateSelectionHistory",
function(next, args){
_alternates.unshift(tabs.getTab());
return next();
},
@littlefolk
littlefolk / JSDeferred.js
Created March 30, 2010 16:32
vimperator plugin patch: Add JSDeferred.js & Edit multi-exec.js
// JSDeferred 0.3.1 Copyright (c) 2007 cho45 ( www.lowreal.net )
// See http://coderepos.org/share/wiki/JSDeferred
// {{{
function Deferred () { return (this instanceof Deferred) ? this.init() : new Deferred() }
Deferred.ok = function (x) { return x };
Deferred.ng = function (x) { throw x };
Deferred.prototype = {
init : function () {
this._next = null;
this.callback = {
#!/usr/bin/env python
#-*- coding:utf-8 -*-
"""
http://www.fujitv.co.jp/heisei/04.html
(問)
8個の数字の配列の規則を見つけ、
?に入る数を答えなさい
→ 4 → 16 → 37 → 58 → 89 → 145 → 42 → ? ↓
↑←←←←←←←←←←←←←←←←←←←←←←←←
@littlefolk
littlefolk / browser_object_api.js
Created June 3, 2010 10:40
vimperator plugin: browser_object_api
// BrowserObject API -- liberator.plugins.browser_object_api {{{
// @http://gist.github.com/gists/423725
// @http://coderepos.org/share/browser/lang/javascript/vimperator-plugins/trunk/browser_object.js
// @http://piro.sakura.ne.jp/latest/blosxom/mozilla/xul/2009-01-24_tab.htm
liberator.plugins.browser_object_api = (function () {
let collection = function () Array.slice(gBrowser.mTabs).filter(function (aNode) aNode.localName == 'tab');
let active = function () gBrowser.mTabContainer.selectedIndex;
let identify = function (i) {try{return i.linkedBrowser.contentDocument.location.host}catch(e){}};
let browser_object_api = {
/* BrowserObject API */
@littlefolk
littlefolk / wakeup.js
Created June 3, 2010 10:48
vimperator plugin: wakeup
// :wakeup --- BarTabで待機させている複数のタブを、BrowserObject風のオプションで指定して読み込む {{{
// @http://github.com/philikon/BarTab/blob/master/modules/prototypes.js#L236
(function(){
if (liberator.plugins.browser_object_api) {
commands.addUserCommand(
['wak[eup]'], 'Wake up!Wake up!Wake up!',
browser_object_api.select(args.string, args["-number"]).forEach(function (aTab) gBrowser.BarTabHandler.loadTab(aTab));
{options: browser_object_api.options},
true
);
@littlefolk
littlefolk / tabbo.js
Created June 3, 2010 10:54
vimperator plugin: tabbo
// :tabbo --- :tabdo + BrowserObject {{{
// @http://code.google.com/p/vimperator-labs/source/browse/common/content/tabs.js#645
(function(){
if (liberator.plugins.browser_object_api) {
commands.addUserCommand(
['tabb[o]'], 'tabdo + BrowserObject',
function (args) {
let current = browser_object_api.current();
browser_object_api.select(args.string, args["-number"]).forEach(function (aTab) {
tabs.select(aTab._tPos);
@littlefolk
littlefolk / reloadBrowserObject.js
Created June 3, 2010 10:57
vimperator plugin: reloadBrowserObject
// :reloadBrowserObject --- :reload + BrowserObject {{{
(function(){
if (liberator.plugins.browser_object_api) {
commands.addUserCommand(
["reloadB[rowserObject]"], "Reload the tabs with BrowserObject",
function (args) browser_object_api.select(args.string, args["-number"]).forEach(function (aTab) tabs.reload(aTab, args.bang)),
{options: browser_object_api.options},
true
);
};
@littlefolk
littlefolk / urlcanonicalize.js
Created June 3, 2010 11:08
vimperator plugin: urlcanonicalize
// :urlcanonicalize, :urlnormalize --- URL正規化 {{{
// @http://pathtraq.com/developer/#help_normalize_url
// @http://d.hatena.ne.jp/janus_wel/20080924/1222244725
commands.addUserCommand(
['url[canonicalize]', 'url[normalize]'], 'URL Canonicalization',
function (arg) {
if (arg.bang)
{
let req = new libly.Request("http://api.pathtraq.com/normalize_url2?url=" + buffer.URL);
req.addEventListener("onSuccess", function (res) liberator.open(libly.$U.evalJson(res.responseText)));