How to let SimpleMDE support superscript and subscript?
SimpleMDE doesn't support superscript and subscript. there are two ways to show sub/superscript.
Use html tags:
H<sub>2</sub>O
E =mc<sup>2</sup>
H2O
E =mc2
Use ~ and ^
H~2~O
E =mc^2^
H2O
E =mc2
SimpleMDE previews are rendered by Marked using GitHub Flavored Markdown. While Marked doesn't support using ~ and ^ mark sub/superscript. so when preview it by SimpleMDE, it will show the original code:
H~2~O
E =mc^2^
But Markdig can convert ~ and ^ to sub/superscript. so can see the sub/superscript on the blog page. because on the blog page, the content was generated by Markdig.
Ketcher Developers Manual
Installation
The installation package contains all required sources.
To run Ketcher in a separate page, use ketcher/index.html:
<a href="ketcher/index.html">Ketcher</a>
To embed Ketcher in another page, use IFrame:
<iframe id="ifKetcher" src="ketcher/index.html" width="800" height="600"></iframe>
Access Ketcher
To access Ketcher from JavaScript, use the following code to obtain the object reference:
var ketcher = ketcherWindow.ketcher;
where ketcherWindow is a separate Ketcher window or
var ketcherFrame = document.getElementById('ifKetcher');
var ketcher = null;
if ('contentDocument' in ketcherFrame)
ketcher = ketcherFrame.contentWindow.ketcher;
else // IE7
ketcher = document.frames['ifKetcher'].window.ketcher;
where ifKetcher is a Ketcher IFrame.
setMolecule()
This method updates the current structure in the editor. Pass it a SMILES string or a Molfile/Rxnfile:
ketcher.setMolecule('c1ccccc1');
Note: SMILES import is not available in the standalone mode.
getSmiles()
Exports current structure as a SMILES string.
getMolfile()
Exports current structure as a Molfile/Rxnfile string.
addFragment()
This method switches Ketcher to the fragment insertion mode where a user can specify where to the provided fragment. Pass it a SMILES string or a Molfile/Rxnfile:
ketcher.addFragment('c1ccccc1');
Note: SMILES import is not available in the standalone mode.
Ketcher interaction example
You can look at the source a web page with embedded Ketcher here where the web page interacts with a Ketcher object using this API.
Ketcher Server
The current version of Ketcher has a sample implementation of the server side. A simple Python script ketcher.py listens to the port 8080 and has four interfaces:
Query | Action | Type | Parameters |
---|---|---|---|
knocknock | Server availability check | GET | ------------- |
open | Query for loading files from disk | POST | filedata |
save | Query for saving files to disk | POST | filedata |
layout | Query for converting SMILES to Molfile | POST | moldata |
automap | Query for reaction auto-mapping | POST | moldata, mode |
aromatize | Query for aromatization | POST | moldata |
dearomatize | Query for dearomatization | POST | moldata |
Indigo binaries and Python wrappers are required to perform automatic layout, atom-to-atom mapping or SMILES import. Ketcher server script can be executed as a standalone application and also can run under WSGI.