2016-04-15 21:58:09 +12:00
|
|
|
#!/usr/bin/env python
|
|
|
|
# --!-- coding: utf8 --!--
|
2019-02-10 09:01:26 +13:00
|
|
|
from PyQt5.QtWidgets import qApp, QTextEdit
|
2017-05-08 19:10:33 +12:00
|
|
|
from PyQt5.QtCore import QUrl
|
2016-04-15 21:58:09 +12:00
|
|
|
|
|
|
|
from manuskript.exporter.manuskript import HTML as MskHTML
|
|
|
|
from manuskript.exporter.pandoc.abstractPlainText import abstractPlainText
|
2022-05-17 21:43:22 +12:00
|
|
|
from manuskript.functions import safeTranslate
|
|
|
|
|
2017-05-08 19:10:33 +12:00
|
|
|
import os
|
2016-04-15 21:58:09 +12:00
|
|
|
|
|
|
|
|
|
|
|
class HTML(abstractPlainText):
|
|
|
|
name = "HTML"
|
2022-05-17 21:43:22 +12:00
|
|
|
description = safeTranslate(qApp, "Export", """A little known format modestly used. You know, web sites for example.""")
|
2016-04-15 21:58:09 +12:00
|
|
|
icon = "text-html"
|
|
|
|
|
|
|
|
exportVarName = "lastPandocHTML"
|
|
|
|
toFormat = "html"
|
|
|
|
exportFilter = "HTML files (*.html);; Any files (*)"
|
2019-08-09 10:16:02 +12:00
|
|
|
exportDefaultSuffix = ".html"
|
2016-04-15 21:58:09 +12:00
|
|
|
requires = {
|
|
|
|
"Settings": True,
|
|
|
|
"Preview": True,
|
|
|
|
}
|
|
|
|
|
|
|
|
def previewWidget(self):
|
|
|
|
return MskHTML.previewWidget(self)
|
|
|
|
|
|
|
|
def preview(self, settingsWidget, previewWidget):
|
|
|
|
settings = settingsWidget.getSettings()
|
|
|
|
|
|
|
|
# Save settings
|
|
|
|
settingsWidget.writeSettings()
|
|
|
|
|
|
|
|
src = self.src(settingsWidget)
|
|
|
|
|
|
|
|
html = self.output(settingsWidget)
|
2017-05-08 19:10:33 +12:00
|
|
|
path = os.path.join(self.projectPath(), "dummy.html")
|
|
|
|
|
2016-04-15 21:58:09 +12:00
|
|
|
self.preparesTextEditView(previewWidget.widget(0), settings["Preview"]["PreviewFont"])
|
|
|
|
self.preparesTextEditViewMarkdown(previewWidget.widget(0), settings)
|
|
|
|
previewWidget.widget(0).setPlainText(src)
|
|
|
|
self.preparesTextEditView(previewWidget.widget(1), settings["Preview"]["PreviewFont"])
|
|
|
|
previewWidget.widget(1).setPlainText(html)
|
2019-02-10 09:01:26 +13:00
|
|
|
w2 = previewWidget.widget(2)
|
|
|
|
if isinstance(w2, QTextEdit):
|
|
|
|
w2.setHtml(html)
|
|
|
|
else:
|
|
|
|
w2.setHtml(html, QUrl.fromLocalFile(path))
|