From e66181c7cba5b2ba53c8ee8319edbb6237bbff03 Mon Sep 17 00:00:00 2001 From: anekos Date: Sun, 21 Dec 2008 18:33:32 +0000 Subject: 設定 g:applauncher_charset を追加 git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@27179 d0d07461-0603-4401-acd4-de1884942a52 --- applauncher.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'applauncher.js') diff --git a/applauncher.js b/applauncher.js index 253930d..424e73b 100644 --- a/applauncher.js +++ b/applauncher.js @@ -4,7 +4,7 @@ var PLUGIN_INFO = アプリケーションランチャー Launch defined application アプリケーションを起動します - 0.11 + 0.12 pekepeke 2.0pre 2.0pre @@ -20,18 +20,23 @@ var PLUGIN_INFO = [ 'Internet Explorer', 'C:\\Program Files\\Internet Explorer\\iexplore.exe', '%URL%'], [ 'Internet Explorer(Search)', 'C:\\Program Files\\Internet Explorer\\iexplore.exe', '%SEL%'], ]; + liberator.globalVariables.applauncher_charset = 'Shift_JIS'; EOM %URL% は実行時に選択中のリンクURL、もしくは開いているページのURLに置き換えられます。 %SEL% は選択中の文字列に置き換えられます。 %TITLE% はページのタイトルに置き換えられます。 引数を複数指定する場合は配列形式で指定してください。 + applauncher_charset を指定すると、渡される文字列が指定の文字セットに変換されます。 ]]> liberator.plugins.AppLauncher = (function(){ + const UConv = Cc['@mozilla.org/intl/scriptableunicodeconverter'].getService(Ci.nsIScriptableUnicodeConverter); const AppName = 'AppLauncher'; + var global = liberator.globalVariables; var settings = global.applauncher_list || []; + var defaultCharset = global.applauncher_charset; if (!settings || settings.length <= 0) return; var completer = settings.map( function([name, app, args]) [name, args ? app + ' ' + args.toString(): app] ); @@ -97,6 +102,10 @@ liberator.plugins.AppLauncher = (function(){ settings.some( function([name, app, args]){ args = args instanceof Array ? args : args ? [args] : []; args = args.map( function( val ) val.replace(/%([A-Z]+)%/g, function( _, name ) self.variables[name]()) ); + if (defaultCharset) { + UConv.charset = defaultCharset; + args = args.map( function( val ) UConv.ConvertFromUnicode(val) ); + } if (appName == name){ io.run(app, args); return true; -- cgit v1.2.3