[TxMt] Re: HTML output window: JavaScrip alert() and confirm()

Hans-Jörg Bibiko bibiko at eva.mpg.de
Thu Sep 25 12:56:38 UTC 2008


I found a tiny bug in my JS script. How to escape ' and ".

This should work:


s.replace(/\x27/g,"’").replace(/\"/g,'\\\"')

<script type="text/javascript" charset="utf-8">
     try {
         if (TextMate.system("", function (task) { })) {
             var __TM_confirm_Status;
             alert = function(s){TextMate.system("\"$DIALOG\" -e -p  
'{messageTitle=\"JavaScript\";informativeText=\""+s.replace(/\x27/ 
g,"’").replace(/\"/g,'\\\"')+"\";}'",null);};
             confirm = function(s){TextMate.system('"$DIALOG" -e -p  
\'{messageTitle="JavaScript";informativeText="'+s.replace(/\x27/ 
g,"’").replace(/\"/g,'\\\"')+'";buttonTitles=("OK","Cancel");} 
\'',null).onreadoutput=function(s){if(s==1) 
{__TM_confirm_Status 
=false}else{__TM_confirm_Status=true}};return(__TM_confirm_Status)};
         }
     } catch(e) {}
</script>


If someone could verify this I'd be appreciated ;)

--Hans


More information about the textmate mailing list