diff --git a/addon/chrome/content/zutilo/keys.js b/addon/chrome/content/zutilo/keys.js index 56c45be..9848745 100644 --- a/addon/chrome/content/zutilo/keys.js +++ b/addon/chrome/content/zutilo/keys.js @@ -134,6 +134,27 @@ keys.alts.copyItems_alt = { } } } +// tab utilities +keys.categories.load_tabs_from_selected_item = 'attachments' +keys.shortcuts.load_tabs_from_selected_item = function(win) { + win.ZutiloChrome.zoteroOverlay.load_tabs_from_selected_item() +}; +keys.categories.save_tabs_to_selected_item = 'itemediting' +keys.shortcuts.save_tabs_to_selected_item = function(win) { + win.ZutiloChrome.zoteroOverlay.save_tabs_to_selected_item() +}; +keys.categories.save_tabs_to_selected_collection = 'other' +keys.shortcuts.save_tabs_to_selected_collection = function(win) { + win.ZutiloChrome.zoteroOverlay.save_tabs_to_selected_collection() +}; +keys.categories.copyZoteroSelectPDFLink = 'copying' +keys.shortcuts.copyZoteroSelectPDFLink = function(win) { + win.ZutiloChrome.zoteroOverlay.copyZoteroSelectPDFLink() +}; +keys.categories.copyZoteroSelectMDLink = 'copying' +keys.shortcuts.copyZoteroSelectMDLink = function(win) { + win.ZutiloChrome.zoteroOverlay.copyZoteroSelectMDLink() +}; keys.categories.copyZoteroSelectLink = 'copying' keys.shortcuts.copyZoteroSelectLink = function(win) { win.ZutiloChrome.zoteroOverlay.copyZoteroSelectLink() diff --git a/addon/chrome/content/zutilo/zoteroOverlay.js b/addon/chrome/content/zutilo/zoteroOverlay.js index 0d9a3ed..717ae12 100644 --- a/addon/chrome/content/zutilo/zoteroOverlay.js +++ b/addon/chrome/content/zutilo/zoteroOverlay.js @@ -758,6 +758,152 @@ ZutiloChrome.zoteroOverlay = { this._copyToClipboard(Zotero.URI.getCollectionURI(collection)) }, + _save_tabs_to_item: async function (tab_store) { + let tabs = Zotero_Tabs._tabs + .filter(t => !!t['data']) + .map(t => ({ + 'type': t['type'], + 'title': t['title'], + // itemID is not enough, as it is not unique across libraries + 'data': Zotero.Items.getLibraryAndKeyFromID(t['data']['itemID']), + })); + + let tab_content = JSON.stringify(tabs); + + tab_store.setField("abstractNote", tabs.map(t => t['title']).join(', ')) + tab_store.setField("extra", tab_content) + return await tab_store.saveTx() + }, + + load_tabs_from_selected_item: async function(){ + let opened_items = Zotero_Tabs._tabs.filter(t => !!t['data']).map(t=>t['data']['itemID']) + let selectedItems = ZoteroPane.getSelectedItems(); + if (!selectedItems.length) { + throw new Error("Please select an item first."); + } + + for(let item of selectedItems) + { + if(item.itemType == "document" && item.getField("extra")) + { + let tabs = JSON.parse(item.getField("extra")) + for(let tab of tabs) + { + // open tab if not already opened + if(opened_items.indexOf(tab['data']['itemID']) > -1) + { + continue; + } + let tab_type = tab['type'] + if(tab_type == 'reader') + tab_type = 'reader-unloaded' // force reload + + let item_id = Zotero.Items.getIDFromLibraryAndKey(tab['data']['libraryID'], tab['data']['key']) + Zotero_Tabs.add({ + type: tab_type, + title: tab['title'] || '', + data: { + itemID: item_id + } + }); + } + } + } + }, + + save_tabs_to_selected_item: async function(){ + let item = ZoteroPane.getSelectedItems()[0]; + if (!item) { + throw new Error("Please select an item first."); + } + await this._save_tabs_to_item(item) + }, + + save_tabs_to_selected_collection: async function(){ + let collection = ZoteroPane.getSelectedCollection(); + if (!collection) { + throw new Error("Please select a collection first."); + } + let item = new Zotero.Item("document"); + item.libraryID = collection.libraryID; + item.setField("title", "__tab_history_" + new Date().toISOString().replace(/:/g, "_")); + + await this._save_tabs_to_item(item) + await Zotero.DB.executeTransaction(async () => { await collection.addItems([item.id]) }) + }, + + copyZoteroSelectPDFLink: function(){ + this._getZoteroActionLink('open-pdf', true) + }, + + copyZoteroSelectMDLink: function(){ + this._getZoteroActionLink('select', true) + }, + + _getZoteroActionLink: function(action, is_markdown_style){ + var zitems = this.getSelectedItems(); + var links = []; + + if (!this.checkItemNumber(zitems, 'regularNoteAttachment1')) { + return false; + } + + var collection_uri = "" + + var collection = ZutiloChrome.zoteroOverlay.Collection.selected() + if (collection){ + if (collection.libraryID === Zotero.Libraries.userLibraryID) { + collection_uri = `zotero://${action}/library/collections/${collection.key}` + } else { + collection_uri = `zotero://${action}/groups/${Zotero.Groups.getGroupIDFromLibraryID(collection.libraryID)}/collections/${collection.key}` + } + } + + if(action == 'open-pdf') + { + collection = false; + var files = this.getSelectedAttachments(/*Zotero.Attachments.LINK_MODE_LINKED_FILE*/); + if (!this.checkItemNumber(files, 'attachment1')) { + return false; + } + + zitems = files; + } + + var libraryType + var path + for (var ii = 0; ii < zitems.length; ii++) { + var item = zitems[ii] + var title = item.getField('title'); + var cite_key = item.getField('citationKey'); + if(cite_key) + cite_key = `[[${cite_key}]]` + libraryType = Zotero.Libraries.get(item.libraryID).libraryType; + + switch (libraryType) { + case 'group': + path = Zotero.URI.getLibraryPath(item.libraryID) + break; + case 'user': + path = 'library' + break; + default: + // Feeds? + continue + } + if(collection) + links.push(`[${title}](${collection_uri}/items/${item.key})`) + else + links.push(`[${title}](zotero://${action}/${path}/items/${item.key})`) + } + + var clipboardText = links.join('\r\n'); + + this._copyToClipboard(clipboardText) + + return true; + }, + copyZoteroSelectLink: function() { var zitems = this.getSelectedItems(); var links = []; diff --git a/addon/chrome/content/zutilo/zutilo.js b/addon/chrome/content/zutilo/zutilo.js index c8961ae..bb93373 100644 --- a/addon/chrome/content/zutilo/zutilo.js +++ b/addon/chrome/content/zutilo/zutilo.js @@ -26,15 +26,16 @@ var Zutilo = { // menu _menuFunctions: { item: [], - collection: ['copyZoteroCollectionSelectLink', 'copyZoteroCollectionURI'] + collection: ['copyZoteroCollectionSelectLink', 'copyZoteroCollectionURI', 'save_tabs_to_selected_collection'] }, _itemMenuItems_static: ['copyTags', 'removeTags', 'pasteTags', 'relateItems', 'showAttachments', 'modifyAttachments', 'modifyURLAttachments', 'copyAttachmentPaths', 'copyCreators', 'copyItems', - 'copyZoteroSelectLink', 'copyZoteroItemURI', 'createBookSection', + 'copyZoteroSelectLink', 'copyZoteroSelectMDLink', 'copyZoteroSelectPDFLink', 'copyZoteroItemURI', 'createBookSection', 'createBookItem', 'copyChildIDs', 'relocateChildren', 'copyJSON', 'pasteJSONIntoEmptyFields', 'pasteJSONFromNonEmptyFields', - 'pasteJSONAll', 'pasteJSONItemType', 'openZoteroItemURI' + 'pasteJSONAll', 'pasteJSONItemType', 'openZoteroItemURI', 'load_tabs_from_selected_item', + 'save_tabs_to_selected_item' ], _bundle: Cc['@mozilla.org/intl/stringbundle;1']. diff --git a/addon/chrome/locale/de/zutilo/zutilo.properties b/addon/chrome/locale/de/zutilo/zutilo.properties index b61bb15..75ba6b4 100644 --- a/addon/chrome/locale/de/zutilo/zutilo.properties +++ b/addon/chrome/locale/de/zutilo/zutilo.properties @@ -74,6 +74,8 @@ zutilo.preferences.itemmenu.copyCreators = Autoren kopieren zutilo.preferences.itemmenu.copyItems = Einträge mit Quick-Copy kopieren zutilo.preferences.itemmenu.copyItems_alt = QuickCopy items (alt %S) zutilo.preferences.itemmenu.copyZoteroSelectLink = Copy select item links +zutilo.preferences.itemmenu.copyZoteroSelectMDLink = Copy select item markdown links +zutilo.preferences.itemmenu.copyZoteroSelectPDFLink = Copy select item PDF links zutilo.preferences.itemmenu.copyZoteroItemURI = Copy Zotero URIs zutilo.preferences.itemmenu.openZoteroItemURI = Open Zotero URIs zutilo.preferences.itemmenu.createBookSection = Create book section @@ -124,6 +126,7 @@ zutilo.shortcuts.name.copyAttachmentPaths = Copy attachment paths zutilo.shortcuts.name.copyItems = Einträge mit Quick-Copy kopieren zutilo.shortcuts.name.copyItems_alt = QuickCopy items (alt %S) zutilo.shortcuts.name.copyZoteroSelectLink = Copy select item links +zutilo.shortcuts.name.copyZoteroSelectMDLink = Copy select item markdown links zutilo.shortcuts.name.copyZoteroItemURI = Copy Zotero URIs zutilo.shortcuts.name.openZoteroItemURI = Open Zotero URIs zutilo.shortcuts.name.createBookSection = Create book section diff --git a/addon/chrome/locale/en-US/zutilo/zutilo.properties b/addon/chrome/locale/en-US/zutilo/zutilo.properties index a1ac388..b4d6047 100644 --- a/addon/chrome/locale/en-US/zutilo/zutilo.properties +++ b/addon/chrome/locale/en-US/zutilo/zutilo.properties @@ -43,6 +43,8 @@ zutilo.itemmenu.copyAttachmentPaths = Copy attachment paths zutilo.itemmenu.copyItems = QuickCopy items to clipboard zutilo.itemmenu.copyItems_alt = QuickCopy items to clipboard (alt. %S) zutilo.itemmenu.copyZoteroSelectLink = Copy select item links +zutilo.itemmenu.copyZoteroSelectMDLink = Copy select item markdown links +zutilo.itemmenu.copyZoteroSelectPDFLink = Copy select item PDF links zutilo.itemmenu.copyZoteroItemURI = Copy Zotero URIs zutilo.itemmenu.openZoteroItemURI = Open Zotero URIs zutilo.itemmenu.createBookSection = Create book section @@ -54,7 +56,10 @@ zutilo.itemmenu.pasteJSONIntoEmptyFields = Paste into empty item fields zutilo.itemmenu.pasteJSONFromNonEmptyFields = Paste non-empty item fields zutilo.itemmenu.pasteJSONAll = Paste all item fields zutilo.itemmenu.pasteJSONItemType = Paste item type +zutilo.itemmenu.load_tabs_from_selected_item = Load tabs from selected item +zutilo.itemmenu.save_tabs_to_selected_item = Save tabs to selected item +zutilo.collectionmenu.save_tabs_to_selected_collection = Save tabs to selected collection zutilo.collectionmenu.zutilo = Zutilo zutilo.collectionmenu.copyZoteroCollectionSelectLink = Copy select collection link zutilo.collectionmenu.copyZoteroCollectionURI = Copy Zotero URIs @@ -74,6 +79,8 @@ zutilo.preferences.itemmenu.copyCreators = Copy creators zutilo.preferences.itemmenu.copyItems = QuickCopy items zutilo.preferences.itemmenu.copyItems_alt = QuickCopy items (alt %S) zutilo.preferences.itemmenu.copyZoteroSelectLink = Copy select item links +zutilo.preferences.itemmenu.copyZoteroSelectMDLink = Copy select item markdown links +zutilo.preferences.itemmenu.copyZoteroSelectPDFLink = Copy select item PDF links zutilo.preferences.itemmenu.copyZoteroItemURI = Copy Zotero URIs zutilo.preferences.itemmenu.openZoteroItemURI = Open Zotero URIs zutilo.preferences.itemmenu.createBookSection = Create book section @@ -85,7 +92,10 @@ zutilo.preferences.itemmenu.pasteJSONIntoEmptyFields = Paste into empty item fie zutilo.preferences.itemmenu.pasteJSONFromNonEmptyFields = Paste non-empty item fields zutilo.preferences.itemmenu.pasteJSONAll = Paste all item fields zutilo.preferences.itemmenu.pasteJSONItemType = Paste item type +zutilo.preferences.itemmenu.load_tabs_from_selected_item = Load tabs from selected item +zutilo.preferences.itemmenu.save_tabs_to_selected_item = Save tabs to selected item +zutilo.preferences.collectionmenu.save_tabs_to_selected_collection = Save tabs to selected collection zutilo.preferences.collectionmenu.Zotero = Zotero context menu zutilo.preferences.collectionmenu.Zutilo = Zutilo context menu zutilo.preferences.collectionmenu.Hide = Hide @@ -124,6 +134,8 @@ zutilo.shortcuts.name.copyAttachmentPaths = Copy attachment paths zutilo.shortcuts.name.copyItems = QuickCopy items zutilo.shortcuts.name.copyItems_alt = QuickCopy items (alt %S) zutilo.shortcuts.name.copyZoteroSelectLink = Copy select item links +zutilo.shortcuts.name.copyZoteroSelectMDLink = Copy select item markdown links +zutilo.shortcuts.name.copyZoteroSelectPDFLink = Copy select item PDF links zutilo.shortcuts.name.copyZoteroItemURI = Copy Zotero URIs zutilo.shortcuts.name.openZoteroItemURI = Open Zotero URIs zutilo.shortcuts.name.createBookSection = Create book section @@ -157,7 +169,10 @@ zutilo.shortcuts.name.pasteJSONAll = Paste all item fields zutilo.shortcuts.name.pasteJSONItemType = Paste item type zutilo.shortcuts.name.copyZoteroCollectionSelectLink = Copy select collection link zutilo.shortcuts.name.copyZoteroCollectionURI = Copy collection Zotero URI +zutilo.shortcuts.name.load_tabs_from_selected_item = Load tabs from selected item +zutilo.shortcuts.name.save_tabs_to_selected_item = Save tabs to selected item +zutilo.shortcuts.name.save_tabs_to_selected_collection = Save tabs to selected collection zutilo.shortcuts.name.focusZoteroCollectionsTree = Collections pane: Focus zutilo.shortcuts.name.focusZoteroItemsTree = Items pane: Focus zutilo.shortcuts.name.advanceTabboxTab = Item pane: Next tab diff --git a/addon/chrome/locale/es/zutilo/zutilo.properties b/addon/chrome/locale/es/zutilo/zutilo.properties index dfd0003..d598dbc 100644 --- a/addon/chrome/locale/es/zutilo/zutilo.properties +++ b/addon/chrome/locale/es/zutilo/zutilo.properties @@ -43,6 +43,8 @@ zutilo.itemmenu.copyAttachmentPaths = Copy attachment paths zutilo.itemmenu.copyItems = Copiar ítems a portapapeles con la copia rápida zutilo.itemmenu.copyItems_alt = QuickCopy items to clipboard (alt. %S) zutilo.itemmenu.copyZoteroSelectLink = Copy select item links +zutilo.itemmenu.copyZoteroSelectMDLink = Copy select item markdown links +zutilo.itemmenu.copyZoteroSelectPDFLink = Copy select item PDF links zutilo.itemmenu.copyZoteroItemURI = Copy Zotero URIs zutilo.itemmenu.openZoteroItemURI = Open Zotero URIs zutilo.itemmenu.createBookSection = Create book section @@ -54,7 +56,10 @@ zutilo.itemmenu.pasteJSONIntoEmptyFields = Paste into empty item fields zutilo.itemmenu.pasteJSONFromNonEmptyFields = Paste non-empty item fields zutilo.itemmenu.pasteJSONAll = Paste all item fields zutilo.itemmenu.pasteJSONItemType = Paste item type +zutilo.itemmenu.load_tabs_from_selected_item = Load tabs from selected item +zutilo.itemmenu.save_tabs_to_selected_item = Save tabs to selected item +zutilo.collectionmenu.save_tabs_to_selected_collection = Save tabs to selected collection zutilo.collectionmenu.zutilo = Zutilo zutilo.collectionmenu.copyZoteroCollectionSelectLink = Copy select collection link zutilo.collectionmenu.copyZoteroCollectionURI = Copy Zotero URIs @@ -74,6 +79,8 @@ zutilo.preferences.itemmenu.copyCreators = Copiar creadores zutilo.preferences.itemmenu.copyItems = Copiar ítems con copia rápida zutilo.preferences.itemmenu.copyItems_alt = QuickCopy items (alt %S) zutilo.preferences.itemmenu.copyZoteroSelectLink = Copy select item links +zutilo.preferences.itemmenu.copyZoteroSelectMDLink = Copy select item markdown links +zutilo.preferences.itemmenu.copyZoteroSelectPDFLink = Copy select item PDF links zutilo.preferences.itemmenu.copyZoteroItemURI = Copy Zotero URIs zutilo.preferences.itemmenu.openZoteroItemURI = Open Zotero URIs zutilo.preferences.itemmenu.createBookSection = Create book section @@ -85,7 +92,10 @@ zutilo.preferences.itemmenu.pasteJSONIntoEmptyFields = Paste into empty item fie zutilo.preferences.itemmenu.pasteJSONFromNonEmptyFields = Paste non-empty item fields zutilo.preferences.itemmenu.pasteJSONAll = Paste all item fields zutilo.preferences.itemmenu.pasteJSONItemType = Paste item type +zutilo.preferences.itemmenu.load_tabs_from_selected_item = Load tabs from selected item +zutilo.preferences.itemmenu.save_tabs_to_selected_item = Save tabs to selected item +zutilo.preferences.collectionmenu.save_tabs_to_selected_collection = Save tabs to selected collection zutilo.preferences.collectionmenu.Zotero = Zotero context menu zutilo.preferences.collectionmenu.Zutilo = Zutilo context menu zutilo.preferences.collectionmenu.Hide = Hide @@ -124,6 +134,8 @@ zutilo.shortcuts.name.copyAttachmentPaths = Copy attachment paths zutilo.shortcuts.name.copyItems = Copiar ítems con copia rápida zutilo.shortcuts.name.copyItems_alt = QuickCopy items (alt %S) zutilo.shortcuts.name.copyZoteroSelectLink = Copy select item links +zutilo.shortcuts.name.copyZoteroSelectMDLink = Copy select item markdown links +zutilo.shortcuts.name.copyZoteroSelectPDFLink = Copy select item PDF links zutilo.shortcuts.name.copyZoteroItemURI = Copy Zotero URIs zutilo.shortcuts.name.openZoteroItemURI = Open Zotero URIs zutilo.shortcuts.name.createBookSection = Create book section @@ -157,7 +169,10 @@ zutilo.shortcuts.name.pasteJSONAll = Paste all item fields zutilo.shortcuts.name.pasteJSONItemType = Paste item type zutilo.shortcuts.name.copyZoteroCollectionSelectLink = Copy select collection link zutilo.shortcuts.name.copyZoteroCollectionURI = Copy collection Zotero URI +zutilo.shortcuts.name.load_tabs_from_selected_item = Load tabs from selected item +zutilo.shortcuts.name.save_tabs_to_selected_item = Save tabs to selected item +zutilo.shortcuts.name.save_tabs_to_selected_collection = Save tabs to selected collection zutilo.shortcuts.name.focusZoteroCollectionsTree = Enfocar el panel de colecciónes zutilo.shortcuts.name.focusZoteroItemsTree = Enfocar el panel de ítems zutilo.shortcuts.name.advanceTabboxTab = Enfocar ítem panel: pestaña siguiente diff --git a/addon/chrome/locale/fr/zutilo/zutilo.properties b/addon/chrome/locale/fr/zutilo/zutilo.properties index a1bdc5c..0ad1293 100644 --- a/addon/chrome/locale/fr/zutilo/zutilo.properties +++ b/addon/chrome/locale/fr/zutilo/zutilo.properties @@ -43,6 +43,8 @@ zutilo.itemmenu.copyAttachmentPaths = Copier les chemins vers les pièces jointe zutilo.itemmenu.copyItems = Copie rapide des documents zutilo.itemmenu.copyItems_alt = Copie rapide des documents (alt. %S) zutilo.itemmenu.copyZoteroSelectLink = Copier les liens zotero://… des documents +zutilo.itemmenu.copyZoteroSelectMDLink = Copy select item markdown links +zutilo.itemmenu.copyZoteroSelectPDFLink = Copy select item PDF links zutilo.itemmenu.copyZoteroItemURI = Copier les liens zotero.org/… des documents zutilo.itemmenu.openZoteroItemURI = Ouvrir les liens zotero://… des documents zutilo.itemmenu.createBookSection = Créer une notice "Chapitre de livre" @@ -54,7 +56,10 @@ zutilo.itemmenu.pasteJSONIntoEmptyFields = Coller dans les champs vides zutilo.itemmenu.pasteJSONFromNonEmptyFields = Remplacer les champs zutilo.itemmenu.pasteJSONAll = Coller tout zutilo.itemmenu.pasteJSONItemType = Coller le type de document +zutilo.itemmenu.load_tabs_from_selected_item = Load tabs from selected item +zutilo.itemmenu.save_tabs_to_selected_item = Save tabs to selected item +zutilo.collectionmenu.save_tabs_to_selected_collection = Save tabs to selected collection zutilo.collectionmenu.zutilo = Zutilo zutilo.collectionmenu.copyZoteroCollectionSelectLink = Copier le lien zotero://… de la collection zutilo.collectionmenu.copyZoteroCollectionURI = Copier le lien zotero.org/…de la collection @@ -74,6 +79,8 @@ zutilo.preferences.itemmenu.copyCreators = Copier les créateurs zutilo.preferences.itemmenu.copyItems = Copie rapide des documents zutilo.preferences.itemmenu.copyItems_alt = Copie rapide des documents (alt %S) zutilo.preferences.itemmenu.copyZoteroSelectLink = Copier les liens zotero://… des documents +zutilo.preferences.itemmenu.copyZoteroSelectMDLink = Copy select item markdown links +zutilo.preferences.itemmenu.copyZoteroSelectPDFLink = Copy select item PDF links zutilo.preferences.itemmenu.copyZoteroItemURI = Copier les liens zotero.org/… des documents zutilo.preferences.itemmenu.openZoteroItemURI = Ouvrir les liens zotero://… des documents zutilo.preferences.itemmenu.createBookSection = Créer une notice "Chapitre de livre" @@ -85,7 +92,10 @@ zutilo.preferences.itemmenu.pasteJSONIntoEmptyFields = Coller dans les champs vi zutilo.preferences.itemmenu.pasteJSONFromNonEmptyFields = Remplacer les champs zutilo.preferences.itemmenu.pasteJSONAll = Coller tout zutilo.preferences.itemmenu.pasteJSONItemType = Coller le type de document +zutilo.preferences.itemmenu.load_tabs_from_selected_item = Load tabs from selected item +zutilo.preferences.itemmenu.save_tabs_to_selected_item = Save tabs to selected item +zutilo.preferences.collectionmenu.save_tabs_to_selected_collection = Save tabs to selected collection zutilo.preferences.collectionmenu.Zotero = Menu contextuel de Zotero zutilo.preferences.collectionmenu.Zutilo = Menu contextuel de Zutilo zutilo.preferences.collectionmenu.Hide = Masquer @@ -124,6 +134,8 @@ zutilo.shortcuts.name.copyAttachmentPaths = Copier les chemins vers les pièce zutilo.shortcuts.name.copyItems = Copie rapide des documents zutilo.shortcuts.name.copyItems_alt = Copie rapide des documents (alt %S) zutilo.shortcuts.name.copyZoteroSelectLink = Copier les liens zotero://… des documents +zutilo.shortcuts.name.copyZoteroSelectMDLink = Copy select item markdown links +zutilo.shortcuts.name.copyZoteroSelectPDFLink = Copy select item PDF links zutilo.shortcuts.name.copyZoteroItemURI = Copier les liens zotero.org/… des documents zutilo.shortcuts.name.openZoteroItemURI = Ouvrir les liens zotero://… des documents zutilo.shortcuts.name.createBookSection = Créer une notice "Chapitre de livre" @@ -157,7 +169,10 @@ zutilo.shortcuts.name.pasteJSONAll = Coller tout zutilo.shortcuts.name.pasteJSONItemType = Coller le type de document zutilo.shortcuts.name.copyZoteroCollectionSelectLink = Copier le lien zotero://… de la collection zutilo.shortcuts.name.copyZoteroCollectionURI = Copier le lien zotero.org/… de la collection +zutilo.shortcuts.name.load_tabs_from_selected_item = Load tabs from selected item +zutilo.shortcuts.name.save_tabs_to_selected_item = Save tabs to selected item +zutilo.shortcuts.name.save_tabs_to_selected_collection = Save tabs to selected collection zutilo.shortcuts.name.focusZoteroCollectionsTree = Curseur dans le volet des collections zutilo.shortcuts.name.focusZoteroItemsTree = Curseur dans le volet des documents zutilo.shortcuts.name.advanceTabboxTab = Curseur dans le volet du document : onglet suivant diff --git a/addon/chrome/locale/zh-CN/zutilo/zutilo.properties b/addon/chrome/locale/zh-CN/zutilo/zutilo.properties index d4c9062..b41cdf0 100644 --- a/addon/chrome/locale/zh-CN/zutilo/zutilo.properties +++ b/addon/chrome/locale/zh-CN/zutilo/zutilo.properties @@ -43,6 +43,8 @@ zutilo.itemmenu.copyAttachmentPaths = 复制附件路径 zutilo.itemmenu.copyItems = 快捷复制条目到剪切板 zutilo.itemmenu.copyItems_alt = 快捷复制条目到剪切板 (Alt. %S) zutilo.itemmenu.copyZoteroSelectLink = 复制选中的条目链接 +zutilo.itemmenu.copyZoteroSelectMDLink = Copy select item markdown links +zutilo.itemmenu.copyZoteroSelectPDFLink = Copy select item PDF links zutilo.itemmenu.copyZoteroItemURI = 复制 Zotero URI zutilo.itemmenu.openZoteroItemURI = Open Zotero URIs zutilo.itemmenu.createBookSection = 新建图书章节条目 @@ -54,7 +56,10 @@ zutilo.itemmenu.pasteJSONIntoEmptyFields = Paste into empty item fields zutilo.itemmenu.pasteJSONFromNonEmptyFields = Paste non-empty item fields zutilo.itemmenu.pasteJSONAll = Paste all item fields zutilo.itemmenu.pasteJSONItemType = Paste item type +zutilo.itemmenu.load_tabs_from_selected_item = Load tabs from selected item +zutilo.itemmenu.save_tabs_to_selected_item = Save tabs to selected item +zutilo.collectionmenu.save_tabs_to_selected_collection = Save tabs to selected collection zutilo.collectionmenu.zutilo = Zutilo zutilo.collectionmenu.copyZoteroCollectionSelectLink = Copy select collection link zutilo.collectionmenu.copyZoteroCollectionURI = Copy Zotero URIs @@ -74,6 +79,8 @@ zutilo.preferences.itemmenu.copyCreators = 复制创建者 zutilo.preferences.itemmenu.copyItems = 快捷复制条目 zutilo.preferences.itemmenu.copyItems_alt = 快捷复制条目 (Alt %S) zutilo.preferences.itemmenu.copyZoteroSelectLink = 复制选中条目链接 +zutilo.preferences.itemmenu.copyZoteroSelectMDLink = Copy select item markdown links +zutilo.preferences.itemmenu.copyZoteroSelectPDFLink = Copy select item PDF links zutilo.preferences.itemmenu.copyZoteroItemURI = 复制 Zotero URI zutilo.preferences.itemmenu.openZoteroItemURI = Open Zotero URIs zutilo.preferences.itemmenu.createBookSection = 新建图书章节条目 @@ -85,7 +92,10 @@ zutilo.preferences.itemmenu.pasteJSONIntoEmptyFields = Paste into empty item fie zutilo.preferences.itemmenu.pasteJSONFromNonEmptyFields = Paste non-empty item fields zutilo.preferences.itemmenu.pasteJSONAll = Paste all item fields zutilo.preferences.itemmenu.pasteJSONItemType = Paste item type +zutilo.preferences.itemmenu.load_tabs_from_selected_item = Load tabs from selected item +zutilo.preferences.itemmenu.save_tabs_to_selected_item = Save tabs to selected item +zutilo.preferences.collectionmenu.save_tabs_to_selected_collection = Save tabs to selected collection zutilo.preferences.collectionmenu.Zotero = Zotero context menu zutilo.preferences.collectionmenu.Zutilo = Zutilo context menu zutilo.preferences.collectionmenu.Hide = Hide @@ -124,6 +134,8 @@ zutilo.shortcuts.name.copyAttachmentPaths = Copy attachment paths zutilo.shortcuts.name.copyItems = QuickCopy items zutilo.shortcuts.name.copyItems_alt = QuickCopy items (alt %S) zutilo.shortcuts.name.copyZoteroSelectLink = Copy select item links +zutilo.shortcuts.name.copyZoteroSelectMDLink = Copy select item markdown links +zutilo.shortcuts.name.copyZoteroSelectPDFLink = Copy select item PDF links zutilo.shortcuts.name.copyZoteroItemURI = Copy Zotero URIs zutilo.shortcuts.name.openZoteroItemURI = Open Zotero URIs zutilo.shortcuts.name.createBookSection = Create book section @@ -157,7 +169,10 @@ zutilo.shortcuts.name.pasteJSONAll = Paste all item fields zutilo.shortcuts.name.pasteJSONItemType = Paste item type zutilo.shortcuts.name.copyZoteroCollectionSelectLink = Copy select collection link zutilo.shortcuts.name.copyZoteroCollectionURI = Copy collection Zotero URI +zutilo.shortcuts.name.load_tabs_from_selected_item = Load tabs from selected item +zutilo.shortcuts.name.save_tabs_to_selected_item = Save tabs to selected item +zutilo.shortcuts.name.save_tabs_to_selected_collection = Save tabs to selected collection zutilo.shortcuts.name.focusZoteroCollectionsTree = 切换至分类窗格 zutilo.shortcuts.name.focusZoteroItemsTree = 切换至条目窗格 zutilo.shortcuts.name.advanceTabboxTab = 切换至条目窗格: 右侧标签页