diff options
author | anekos | 2008-12-21 18:33:32 +0000 |
---|---|---|
committer | anekos | 2008-12-21 18:33:32 +0000 |
commit | e66181c7cba5b2ba53c8ee8319edbb6237bbff03 (patch) | |
tree | 83d22699f398b1bd5b9f4354aee90b61d104ac3f /applauncher.js | |
parent | f8caa390332bd7554c49b071e2d7706b39dd62e1 (diff) | |
download | vimperator-plugins-e66181c7cba5b2ba53c8ee8319edbb6237bbff03.tar.bz2 |
設定 g:applauncher_charset を追加
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@27179 d0d07461-0603-4401-acd4-de1884942a52
Diffstat (limited to 'applauncher.js')
-rw-r--r-- | applauncher.js | 11 |
1 files changed, 10 insertions, 1 deletions
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 = <name lang='ja'>アプリケーションランチャー</name> <description>Launch defined application</description> <description lang='ja'>アプリケーションを起動します</description> - <version>0.11</version> + <version>0.12</version> <author>pekepeke</author> <minVersion>2.0pre</minVersion> <maxVersion>2.0pre</maxVersion> @@ -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 を指定すると、渡される文字列が指定の文字セットに変換されます。 ]]></detail> </VimperatorPlugin> 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; |