Merge pull request #9 from tcjr/master

Preview
This commit is contained in:
Eric 2014-06-13 10:20:21 -05:00
commit 01ed191fa2
2 changed files with 17 additions and 5 deletions

View File

@ -8,6 +8,9 @@
var latexOutput = {};
var excelParser = {
//latexEnvironment: 'tabular',
latexEnvironment: 'array',
latexEscape: function(text) {
var escapeRegExpr = function(str) {
return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&");
@ -44,7 +47,7 @@
args[i] = 'l';
}
args = ' | ' + args.join(' | ') + ' | ';
var latex = "\\begin{tabular}{" + args + "}\n\\hline\n";
var latex = "\\begin{" + excelParser.latexEnvironment + "}{" + args + "}\n\\hline\n";
for(i=0; i < table.length; i++) {
var cols = table[i];
// TODO: replace "&" with "\&"
@ -59,7 +62,7 @@
latex += " \\\\ \\hline\n";
}
latex += "\\end{tabular}\n";
latex += "\\end{" + excelParser.latexEnvironment + "}\n";
return latex;
},
@ -130,13 +133,20 @@
// I apologize for the hack :(
if(id === '1') {
$('#latex-output').val(latex);
excelParser.showOutput(1);
}
});
});
});
},
showOutput: function(id) {
var latex = latexOutput[id];
$('#latex-output').val(latex);
$('#preview').html('$$\n' + latex + '\n$$');
MathJax.Hub.Typeset("preview");
},
handleFiles: function(event) {
// prevent default browser behavior
event.stopPropagation();
@ -202,8 +212,7 @@
// when a new workbook is selected, do stuff!
$('#workbook').change(function(event) {
var select = $(event.target);
var output = latexOutput[select.val()];
$('#latex-output').val(output);
excelParser.showOutput(select.val());
});
}
};

View File

@ -34,8 +34,11 @@
<p>Formatting from the Excel document won't be preserved, only the text will be extracted.</p>
<p>Lovingly hacked together by <a href="http://ericwood.org">Eric Wood</a></p>
</div>
<h4>Preview</h4>
<div id="preview">$$ \LaTeX $$</div>
</div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
<script type="text/javascript" src="zip/zip.js"></script>
<script type="text/javascript" src="converter.js"></script>
</body>