aboutsummaryrefslogtreecommitdiffstats
path: root/copy.js
AgeCommit message (Collapse)Author
2009-11-10v2.3の新しいヘルプに対応teramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@35883 d0d07461-0603-4401-acd4-de1884942a52
2009-09-01fix a typosuVene
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@35152 d0d07461-0603-4401-acd4-de1884942a52
2009-08-19Change to use arg.literalArg.anekos
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@34918 d0d07461-0603-4401-acd4-de1884942a52
2009-08-19fix a typoanekos
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@34917 d0d07461-0603-4401-acd4-de1884942a52
2009-08-19ごめん、あやまったものでcommitしてしまったteramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@34916 d0d07461-0603-4401-acd4-de1884942a52
2009-08-19add %CLIP% variable which is previous clipboard stringteramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@34915 d0d07461-0603-4401-acd4-de1884942a52
2009-08-19-appendモード追加teramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@34914 d0d07461-0603-4401-acd4-de1884942a52
2009-08-17%HTMLSEL%でタグ名が大文字のままになるバグ修正teramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@34882 d0d07461-0603-4401-acd4-de1884942a52
2009-08-13%HTMLSEL%のタグ名を小文字化teramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@34871 d0d07461-0603-4401-acd4-de1884942a52
2009-02-10HTMLSEL / SEL が動いていなかったのを修正anekos
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@29860 d0d07461-0603-4401-acd4-de1884942a52
2009-02-07add some keywords.anekos
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@29671 d0d07461-0603-4401-acd4-de1884942a52
2009-02-04custom function に渡すの忘れてた[29547]suVene
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@29550 d0d07461-0603-4401-acd4-de1884942a52
2009-02-04custom method の場合にも置換後の文字列を渡すように ↵suVene
parameter 追加 git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@29547 d0d07461-0603-4401-acd4-de1884942a52
2009-01-26何度も :source 可能にsuVene
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@29079 d0d07461-0603-4401-acd4-de1884942a52
2009-01-26args が null の時の対応suVene
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@29075 d0d07461-0603-4401-acd4-de1884942a52
2009-01-26fixed typo.suVene
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@29069 d0d07461-0603-4401-acd4-de1884942a52
2009-01-26Oops. delete debug code.suVene
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@29068 d0d07461-0603-4401-acd4-de1884942a52
2009-01-26* custom 関数の実行確認強化.suVene
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@29066 d0d07461-0603-4401-acd4-de1884942a52
2009-01-26load wedata, and add optionssuVene
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@29038 d0d07461-0603-4401-acd4-de1884942a52
2008-12-24add updateURL for pluginManager.jssuVene
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@27364 d0d07461-0603-4401-acd4-de1884942a52
2008-12-19plugiinManager対応teramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@27088 d0d07461-0603-4401-acd4-de1884942a52
2008-11-28change algorithm(replaceVariable) and fix bugteramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@25278 d0d07461-0603-4401-acd4-de1884942a52
2008-11-27optimize completer's codeteramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@25152 d0d07461-0603-4401-acd4-de1884942a52
2008-11-27follow CVS HEAD (fix: command argument and completer)teramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@25054 d0d07461-0603-4401-acd4-de1884942a52
2008-11-262.0pre対応pekepeke
refcontrol, autoproxychanger 追加 git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@24976 d0d07461-0603-4401-acd4-de1884942a52
2008-11-22follow CVS HEADteramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@24670 d0d07461-0603-4401-acd4-de1884942a52
2008-11-19cosmetic changeteramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@24352 d0d07461-0603-4401-acd4-de1884942a52
2008-11-02fix titleAndURL's description on completionjanus_wel
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@22590 d0d07461-0603-4401-acd4-de1884942a52
2008-11-01handling for 2.0prepekepeke
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@22491 d0d07461-0603-4401-acd4-de1884942a52
2008-10-15namespaceの省略(vimperator CVS headと旧版との互換性維持のため)teramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@21395 d0d07461-0603-4401-acd4-de1884942a52
2008-10-06vimp CVS Headに追従(bang[!])の仕様変更に対して)teramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@20856 d0d07461-0603-4401-acd4-de1884942a52
2008-09-21Fix:teramako
* indent * command arguments handling git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@19677 d0d07461-0603-4401-acd4-de1884942a52
2008-07-01ちょっと分かり難いのでASINコード取得のサンプルを修正teramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@15010 d0d07461-0603-4401-acd4-de1884942a52
2008-06-20custom function のサポートteramako
mapのサポート git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@14325 d0d07461-0603-4401-acd4-de1884942a52
2008-05-11CVS HEADに対応trapezoid
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@11409 d0d07461-0603-4401-acd4-de1884942a52
2008-04-23lang/javascript/vimperator-plugins/trunk/copy.js:drry
* `Array` オブジェクトに対する `for each` 文を回避しました。 * インデントの混在を統一しました。 * ほか。 git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@10226 d0d07461-0603-4401-acd4-de1884942a52
2008-04-23lang/javascript/vimperator-plugins/trunk/copy.js :teramako
globalVariables.copy_templatesをそのまま使うように変更 git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@10224 d0d07461-0603-4401-acd4-de1884942a52
2008-04-13lang/javascript/vimperator-plugins/trunk/copy.js: teramako
* vimperatorrcからテンプレートを読むように変更[[BR]](see [http://www.karashi.org/~poppen/d/20080410.html#p01]) * その他 git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@9404 d0d07461-0603-4401-acd4-de1884942a52
2008-04-02lang/javascript/vimperator-plugins/trunk/copy.js: fix completer methodteramako
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@8695 d0d07461-0603-4401-acd4-de1884942a52
2008-03-26lang/javascript/vimperator-plugins/trunk/copy.js: some fixtrapezoid
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@8423 d0d07461-0603-4401-acd4-de1884942a52
2008-03-26lang/javascript/vimperator-plugins/trunk/googlesugest.js: rename -> ↵trapezoid
googlesuggest.js git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@8412 d0d07461-0603-4401-acd4-de1884942a52
2008-03-26lang/javascript/vimperator-plugins/trunk/copy.js: CVS HEADに対応trapezoid
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@8405 d0d07461-0603-4401-acd4-de1884942a52
2008-03-21lang/javascript/vimperator-plugins/trunk/xpathBlink.jsdrry
lang/javascript/vimperator-plugins/trunk/autoIgnoreKey.js lang/javascript/vimperator-plugins/trunk/copy.js lang/javascript/vimperator-plugins/trunk/lookupDictionary.js lang/javascript/vimperator-plugins/trunk/splitBrowser.js lang/javascript/vimperator-plugins/trunk/gmperator.js: * 消えたファイルを trunk にコピーしました。 * ほか。 git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@8235 d0d07461-0603-4401-acd4-de1884942a52
0); let result = block({ __proto__: file, write: function (s) { conv.init(out, 'UTF-8', s.length, Components.interfaces.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER); return conv.writeString(s) }, writeln: function (s) this.write(s + '\n') }); conv.close(); out.close(); return result; } function pad (s, max) (s.length < max ? pad(s + ' ', max) : s); function defineCommand ({names, desc, action, options}) { commands.addUserCommand( names, desc, function (args) { let filename = args[0]; let clip = args['-clipboard']; if (!!clip === !!filename) return liberator.echoerr( clip ? 'E488: Trailing characters' : 'E471: Argument required'); return (clip ? openClipBoardWith : openFileWith)( filename, args.bang, function (file) { return action(file, args); } ); }, { literalArg: 0, bang: true, options: [[['-clipboard', '-c'], commands.OPTION_NOARG]].concat(options), completer: function (context, args) { if (!args['-clipboard']) completion.file(context, true) } }, true ); } function Writer (title, action) ({title: title, action: action}); const Writers = { basic: Writer( 'Basic', function (file) { function puts (name, value) file.writeln(pad(name + ': ', 20) + value); puts('Name', config.name); puts('Host', config.hostApplication); puts('Platform', navigator.platform); puts('Version', liberator.version); puts('UserAgent', navigator.userAgent); } ), colors: Writer( 'Color Scheme', function (file) { function rmrem (s) s.replace(/\s*\/\*.*\*\//g, ''); let max = 0; for (let h in highlight) max = Math.max(h.class.length, max); for (let h in highlight) file.writeln(h.value ? 'hi ' + pad(h.class, max) + ' ' + rmrem(h.value) : '" hi ' + h.class); } ), preferences: Writer( config.hostApplication + ' Preference', function (file, {'-length-limit': limit}) { // TODO エスケープ処理など怪しいので調べる function esc (str) (typeof str === 'string' ? str.replace(/\n/g, '\\n') : str); function quote (str) (typeof str === 'string' ? Commands.quoteArg["'"](str) : str); function compareByName ([n1,], [n2,]) n1.localeCompare(n2); let Pref = services.get("pref"); for each (let name in options.allPrefs().sort(compareByName)) { if (!Pref.prefHasUserValue(name)) continue; let value = options.getPref(name); if (typeof value === 'string' && limit && value.length > limit) continue; file.writeln("set! " + name + "=" + esc(quote(value))); } } ), addons: Writer( config.hostApplication + ' Addon & Plugin', function (file) { for each (let ext in liberator.extensions) { file.writeln(ext.name); file.writeln(' ' + (ext.enabled ? 'enabled' : 'disabled')); } } ), plugins: Writer( config.hostApplication + ' Addon & Plugin', function (file) { [File(n).leafName for (n in plugins.contexts)].sort().forEach(function (n) file.writeln(n)); } ), numbers: Writer( 'Numbers', function (file) { function puts (name, value) file.writeln(pad(name + ': ', 20) + value); function values (obj) [null for (_ in obj)].length; let (cnt = [0, 0]) { for each (let ext in liberator.extensions) cnt[0 + !!ext.enabled]++; puts('addons', cnt[0] + cnt[1] + ' (enabled: ' + cnt[1] + ', disabled: ' + cnt[0] + ')'); } puts('plugins', values(plugins.contexts)); puts('bookmarks', bookmarks.get('').length); puts('history', history.get('').length); puts('commands', values(commands)); puts('hint-modes', values(hints._hintModes)); puts( 'user-mappings', [ms for each (ms in mappings._user)].reduce(function (init ,ms) init + ms.length, 0) + ' (n: ' + mappings._user[modes.NORMAL].length + ', c: ' + mappings._user[modes.COMMAND_LINE].length + ', i: ' + mappings._user[modes.INSERT].length + ', v: ' + mappings._user[modes.VISUAL].length + ')' ); } ) }; const LIMIT_OPTION = [['-length-limit', '-ll'], commands.OPTION_INT]; defineCommand({ names: ['mkco[lor]'], desc: 'Write current highlights to the specified file', action: Writers.colors.action }); defineCommand({ names: ['mkvimpref'], desc: 'Write current preferences to the specified file', options: [LIMIT_OPTION], action: Writers.preferences.action }); defineCommand({ names: ['mkreport'], desc: 'Write the report for your question.', options: [ LIMIT_OPTION, [['-include', '-i'], commands.OPTION_LIST, null, [[n, n] for (n in Writers)]] ], action: function (file, args) { function writeSection (name) { const line = '"======================================================================'; if (!Writers[name]) return liberator.echoerr('Unknown section: ' + name); file.writeln(line); file.writeln('" ' + Writers[name].title); file.writeln(line + '\n'); Writers[name].action(file, args); file.writeln('\n'); } (args['-include'] || [n for (n in Writers)]).forEach(writeSection); } }); })(); // vim:sw=2 ts=2 et si fdm=marker: