Use Quick Copy (Markdown) for direct plain-text copying from note-editor
Fixes #2505
This commit is contained in:
parent
95239db0fd
commit
2cad5b00d1
2 changed files with 20 additions and 1 deletions
|
@ -89,6 +89,25 @@ class EditorInstance {
|
||||||
return doc.execCommand(command, ui, value);
|
return doc.execCommand(command, ui, value);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Translate note HTML into Markdown, for setting it as text/plain in clipboard (on text copy/drag)
|
||||||
|
this._iframeWindow.wrappedJSObject.zoteroTranslateToMarkdown = (html) => {
|
||||||
|
let item = new Zotero.Item('note');
|
||||||
|
item.libraryID = this._item.libraryID;
|
||||||
|
item.setNote(html);
|
||||||
|
let text = '';
|
||||||
|
var translation = new Zotero.Translate.Export;
|
||||||
|
translation.noWait = true;
|
||||||
|
translation.setItems([item]);
|
||||||
|
translation.setTranslator(Zotero.Translators.TRANSLATOR_ID_NOTE_MARKDOWN);
|
||||||
|
translation.setHandler("done", (obj, worked) => {
|
||||||
|
if (worked) {
|
||||||
|
text = obj.string.replace(/\r\n/g, '\n');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
translation.translate();
|
||||||
|
return text;
|
||||||
|
};
|
||||||
|
|
||||||
this._iframeWindow.addEventListener('message', this._messageHandler);
|
this._iframeWindow.addEventListener('message', this._messageHandler);
|
||||||
this._iframeWindow.addEventListener('error', (event) => {
|
this._iframeWindow.addEventListener('error', (event) => {
|
||||||
Zotero.logError(event.error);
|
Zotero.logError(event.error);
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
Subproject commit 3c75eb213b23da239b5b0c69b9e61ff54a2f2a4c
|
Subproject commit 8e7b266875dc9d7dc14d5c9413197ae80d8dbf11
|
Loading…
Add table
Reference in a new issue