/**
 * shuppoppo.js
 *
 * 元ネタ:
 * JavaScriptでSLを走らせる「SL.JS」を作りました ::: creazy photograph
 * http://creazy.net/2008/02/sl_js.html
 *
 * VARIABLES:
 * let g:sl_speed = "100"
 * let g:sl_pitch = "15"
 * let g:sl_fg_color = "#FFFFFF"
 * let g:sl_bg_color = "#000000"
 *
 * OPTION
 * set [no]slbeep
 */
//:js (function(){echo('\n\n\n\n\n\n\n\n\n\n\n\n\n',true);var f=$('liberator-multiline-output');var d=f.contentDocument,s=d.createElement('script');s.src="http://labs.creazy.net/sl/bookmarklet.js";d.body.appendChild(s);})()
liberator.plugins.sl = (function(){
// COMMAND
liberator.commands.addUserCommand(['sl'],'キータイプを矯正します。',
	function(){
		sl();
	},{},true);
// OPTION
liberator.options.add(['slbeep'],'beepをSLに変更します','boolean',false);
var f = document.getElementById('liberator-multiline-output');
var d = f.contentDocument;
var data = [ // {{{
	'var sl_steam=[];' ,
	'sl_steam[0]="                      (@@) (  ) (@)  ( )  @@    ()    @     O     @     O      @
                 (   )
             (@@@@)
          (    )
        (@@@)
";' ,
	'sl_steam[1]="                      (  ) (@@) ( )  (@)  ()    @@    O     @     O     @      O
                 (@@@)
             (    )
          (@@@@)
        (   )
";',
	'var sl_body' ,
	'	="      ====        ________                ___________ 
"' ,
	'	+"  _D _|  |_______/        \\__I_I_____===__|_________| 
"',
	'	+"   |(_)---  |   H\\________/ |   |        =|___ ___|      _________________         
"',
	'	+"   /     |  |   H  |  |     |   |         ||_| |_||     _|                \\_____A  
"',
	'	+"  |      |  |   H  |__--------------------| [___] |   =|                        |  
"',
	'	+"  | ________|___H__/__|_____/[][]~\\_______|       |   -|                        |  
"',
	'	+"  |/ |   |-----------I_____I [][] []  D   |=======|____|________________________|_ 
";',
	'var sl_wheels = [];',
	'sl_wheels[0]' ,
	'	="__/ =| o |=-O=====O=====O=====O \\ ____Y___________|__|__________________________|_ 
"' ,
	'	+" |/-=|___|=    ||    ||    ||    |_____/~\\___/          |_D__D__D_|  |_D__D__D_|   
"',
	'	+"  \\_/      \\__/  \\__/  \\__/  \\__/      \\_/               \\_/   \\_/    \\_/   \\_/    
";',
	'sl_wheels[1]' ,
	'	="__/ =| o |=-~~\\  /~~\\  /~~\\  /~~\\ ____Y___________|__|__________________________|_ 
"',
	'	+" |/-=|___|=O=====O=====O=====O   |_____/~\\___/          |_D__D__D_|  |_D__D__D_|   
"',
	'	+"  \\_/      \\__/  \\__/  \\__/  \\__/      \\_/               \\_/   \\_/    \\_/   \\_/    
";',
	'sl_wheels[2]' ,
	'	="__/ =| o |=-~~\\  /~~\\  /~~\\  /~~\\ ____Y___________|__|__________________________|_ 
"',
	'	+" |/-=|___|=    ||    ||    ||    |_____/~\\___/          |_D__D__D_|  |_D__D__D_|   
"',
	'	+"  \\_/      \\O=====O=====O=====O_/      \\_/               \\_/   \\_/    \\_/   \\_/    
";',
	'sl_wheels[3]' ,
	'	="__/ =| o |=-~~\\  /~~\\  /~~\\  /~~\\ ____Y___________|__|__________________________|_ 
"',
	'	+" |/-=|___|=    ||    ||    ||    |_____/~\\___/          |_D__D__D_|  |_D__D__D_|   
"',
	'	+"  \\_/      \\_O=====O=====O=====O/      \\_/               \\_/   \\_/    \\_/   \\_/    
";',
	'sl_wheels[4]' ,
	'	="__/ =| o |=-~~\\  /~~\\  /~~\\  /~~\\ ____Y___________|__|__________________________|_ 
"',
	'	+" |/-=|___|=   O=====O=====O=====O|_____/~\\___/          |_D__D__D_|  |_D__D__D_|   
"',
	'	+"  \\_/      \\__/  \\__/  \\__/  \\__/      \\_/               \\_/   \\_/    \\_/   \\_/    
";',
	'sl_wheels[5]' ,
	'	="__/ =| o |=-~O=====O=====O=====O\\ ____Y___________|__|__________________________|_ 
"',
	'	+" |/-=|___|=    ||    ||    ||    |_____/~\\___/          |_D__D__D_|  |_D__D__D_|   
"',
	'	+"  \\_/      \\__/  \\__/  \\__/  \\__/      \\_/               \\_/   \\_/    \\_/   \\_/    
";',
	"sl_steam  = sl_steam.map(function(s) s.replace(/ /g, ' '));",
	"sl_body   = sl_body.replace(/ /g,' ');",
	"sl_wheels = sl_wheels.map(function(s) s.replace(/ /g, ' '));",
	'var sl_patterns = [0, 0, 0, 1, 1, 1];',
	'sl_patterns = sl_patterns.map(function(p, i) sl_steam[p] + sl_body + sl_wheels[i]);',
	'var sl_counter  = 0;',
	'var sl_position = 0;',
	'var scrollTop = document.body.scrollTop || document.documentElement.scrollTop;',
	'var windowWidth = window.innerWidth;',
	"var sl_style_base ='display: block;position: absolute;text-align: left;overflow: visible;white-space: pre;font: 12px/12px monospace;';",
	"var sl_style_main =sl_style_base +'top: '+(scrollTop+0)+'px;' +'left: '+windowWidth+'px;' +'padding: 20px;' +'z-index: 999;' +'color: '+sl_tx_color+';';",
	"document.body.innerHTML += '