www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | Submodules | README | LICENSE

commit bdd69d0a53f7ad904c7e181436004e80af790706
parent a03772cae79445aaa383aa156c5f900352277a32
Author: Dan Stillman <dstillman@zotero.org>
Date:   Mon, 16 Mar 2015 23:40:57 -0400

Merge branch '4.0' into api_syncing

Diffstat:
M.gitmodules | 6++++++
A.travis.yml | 16++++++++++++++++
MREADME.md | 1+
Mchrome/content/zotero-platform/mac/overlay.css | 105++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
Mchrome/content/zotero-platform/unix/overlay.css | 95+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mchrome/content/zotero-platform/win/overlay.css | 102+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mchrome/content/zotero/attachLink.xul | 2+-
Mchrome/content/zotero/bindings/guidancepanel.xml | 1+
Mchrome/content/zotero/bindings/itembox.xml | 3+++
Mchrome/content/zotero/bindings/tagsbox.xml | 3+++
Mchrome/content/zotero/browser.js | 271+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------
Achrome/content/zotero/icon.js | 291+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mchrome/content/zotero/overlay.js | 110++++++++-----------------------------------------------------------------------
Mchrome/content/zotero/overlay.xul | 23+++--------------------
Mchrome/content/zotero/preferences/preferences.xul | 5-----
Mchrome/content/zotero/preferences/preferences_advanced.js | 31+++++++++++++++++++++++++++++++
Mchrome/content/zotero/preferences/preferences_advanced.xul | 81+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mchrome/content/zotero/preferences/preferences_advanced_firefox.xul | 24++++++++++++++++++++++++
Mchrome/content/zotero/preferences/preferences_general.js | 23-----------------------
Mchrome/content/zotero/preferences/preferences_general_firefox.xul | 13+------------
Dchrome/content/zotero/preferences/preferences_keys.js | 55-------------------------------------------------------
Dchrome/content/zotero/preferences/preferences_keys.xul | 114-------------------------------------------------------------------------------
Dchrome/content/zotero/preferences/preferences_keys_firefox.xul | 52----------------------------------------------------
Mchrome/content/zotero/preferences/preferences_search.js | 8+-------
Mchrome/content/zotero/recognizePDF.js | 2+-
Achrome/content/zotero/tools/csledit.js | 209+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mchrome/content/zotero/tools/csledit.xul | 248+++++++++----------------------------------------------------------------------
Achrome/content/zotero/tools/cslpreview.js | 107+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mchrome/content/zotero/tools/cslpreview.xul | 125++++++++++++++-----------------------------------------------------------------
Mchrome/content/zotero/tools/testTranslators/translatorTester.js | 19++++++++++++++++---
Mchrome/content/zotero/webpagedump/common.js | 40+++++++++++++++++++++-------------------
Mchrome/content/zotero/webpagedump/domsaver.js | 20++++++++++----------
Mchrome/content/zotero/xpcom/attachments.js | 7++++---
Mchrome/content/zotero/xpcom/cite.js | 100++++++++-----------------------------------------------------------------------
Mchrome/content/zotero/xpcom/collectionTreeView.js | 56+++++++++++++++++++++++++++++++++++++++++++++++++++++++-
Mchrome/content/zotero/xpcom/connector/cachedTypes.js | 2+-
Mchrome/content/zotero/xpcom/connector/connector.js | 53++++++++++++++++++++++++++++++++++++++++++++++++++++-
Mchrome/content/zotero/xpcom/connector/translate_item.js | 3+--
Mchrome/content/zotero/xpcom/connector/translator.js | 2+-
Mchrome/content/zotero/xpcom/cookieSandbox.js | 218+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------
Mchrome/content/zotero/xpcom/data/item.js | 23++++++++++++++++++++++-
Mchrome/content/zotero/xpcom/error.js | 4+++-
Achrome/content/zotero/xpcom/isbn.js | 11+++++++++++
Mchrome/content/zotero/xpcom/itemTreeView.js | 6++++++
Mchrome/content/zotero/xpcom/mimeTypeHandler.js | 125+++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------
Mchrome/content/zotero/xpcom/openurl.js | 2+-
Mchrome/content/zotero/xpcom/quickCopy.js | 3+--
Mchrome/content/zotero/xpcom/schema.js | 12++++++++++--
Mchrome/content/zotero/xpcom/server_connector.js | 6+++++-
Mchrome/content/zotero/xpcom/storage/webdav.js | 8+-------
Mchrome/content/zotero/xpcom/storage/zfs.js | 8+-------
Mchrome/content/zotero/xpcom/sync.js | 60+++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
Mchrome/content/zotero/xpcom/translation/translate.js | 76++++++++++++++++++++++++++++++++++++++++++++++++----------------------------
Mchrome/content/zotero/xpcom/translation/translate_firefox.js | 21++++++++++++++-------
Mchrome/content/zotero/xpcom/translation/translate_item.js | 156++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------
Mchrome/content/zotero/xpcom/utilities.js | 174++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------------
Mchrome/content/zotero/xpcom/utilities_internal.js | 94+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mchrome/content/zotero/xpcom/zotero.js | 235+++++++++++++++++++++++++++++++++++--------------------------------------------
Mchrome/content/zotero/zoteroPane.js | 29+++++++++++++++++++++++++----
Mchrome/content/zotero/zoteroPane.xul | 2+-
Achrome/locale/af-ZA/zotero/csledit.dtd | 4++++
Achrome/locale/af-ZA/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/af-ZA/zotero/preferences.dtd | 9+++------
Mchrome/locale/af-ZA/zotero/zotero.dtd | 6+++---
Mchrome/locale/af-ZA/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/ar/zotero/csledit.dtd | 4++++
Achrome/locale/ar/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/ar/zotero/preferences.dtd | 9+++------
Mchrome/locale/ar/zotero/zotero.dtd | 6+++---
Mchrome/locale/ar/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/bg-BG/zotero/csledit.dtd | 4++++
Achrome/locale/bg-BG/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/bg-BG/zotero/preferences.dtd | 9+++------
Mchrome/locale/bg-BG/zotero/zotero.dtd | 6+++---
Mchrome/locale/bg-BG/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/ca-AD/zotero/csledit.dtd | 4++++
Achrome/locale/ca-AD/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/ca-AD/zotero/preferences.dtd | 9+++------
Mchrome/locale/ca-AD/zotero/zotero.dtd | 20++++++++++----------
Mchrome/locale/ca-AD/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/cs-CZ/zotero/csledit.dtd | 4++++
Achrome/locale/cs-CZ/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/cs-CZ/zotero/preferences.dtd | 9+++------
Mchrome/locale/cs-CZ/zotero/zotero.dtd | 6+++---
Mchrome/locale/cs-CZ/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/da-DK/zotero/csledit.dtd | 4++++
Achrome/locale/da-DK/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/da-DK/zotero/preferences.dtd | 11++++-------
Mchrome/locale/da-DK/zotero/searchbox.dtd | 2+-
Mchrome/locale/da-DK/zotero/zotero.dtd | 32++++++++++++++++----------------
Mchrome/locale/da-DK/zotero/zotero.properties | 34++++++++++++++++++++++++----------
Achrome/locale/de/zotero/csledit.dtd | 4++++
Achrome/locale/de/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/de/zotero/preferences.dtd | 9+++------
Mchrome/locale/de/zotero/zotero.dtd | 4++--
Mchrome/locale/de/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/el-GR/zotero/csledit.dtd | 4++++
Achrome/locale/el-GR/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/el-GR/zotero/preferences.dtd | 383+++++++++++++++++++++++++++++++++++++++----------------------------------------
Mchrome/locale/el-GR/zotero/searchbox.dtd | 4++--
Mchrome/locale/el-GR/zotero/standalone.dtd | 112++++++++++++++++++++++++++++++++++++++++----------------------------------------
Mchrome/locale/el-GR/zotero/timeline.properties | 38+++++++++++++++++++-------------------
Mchrome/locale/el-GR/zotero/zotero.dtd | 454++++++++++++++++++++++++++++++++++++++++----------------------------------------
Mchrome/locale/el-GR/zotero/zotero.properties | 118++++++++++++++++++++++++++++++++++++++++++++-----------------------------------
Achrome/locale/en-US/zotero/csledit.dtd | 4++++
Achrome/locale/en-US/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/en-US/zotero/preferences.dtd | 12++++--------
Mchrome/locale/en-US/zotero/zotero.dtd | 6+++---
Mchrome/locale/en-US/zotero/zotero.properties | 20+++++++++++++++++---
Achrome/locale/es-ES/zotero/csledit.dtd | 4++++
Achrome/locale/es-ES/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/es-ES/zotero/preferences.dtd | 9+++------
Mchrome/locale/es-ES/zotero/zotero.dtd | 6+++---
Mchrome/locale/es-ES/zotero/zotero.properties | 18++++++++++++++++--
Achrome/locale/et-EE/zotero/csledit.dtd | 4++++
Achrome/locale/et-EE/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/et-EE/zotero/preferences.dtd | 9+++------
Mchrome/locale/et-EE/zotero/zotero.dtd | 6+++---
Mchrome/locale/et-EE/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/eu-ES/zotero/csledit.dtd | 4++++
Achrome/locale/eu-ES/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/eu-ES/zotero/preferences.dtd | 9+++------
Mchrome/locale/eu-ES/zotero/zotero.dtd | 6+++---
Mchrome/locale/eu-ES/zotero/zotero.properties | 14++++++++++++++
Mchrome/locale/fa/zotero/about.dtd | 6+++---
Achrome/locale/fa/zotero/csledit.dtd | 4++++
Achrome/locale/fa/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/fa/zotero/preferences.dtd | 59++++++++++++++++++++++++++++-------------------------------
Mchrome/locale/fa/zotero/searchbox.dtd | 4++--
Mchrome/locale/fa/zotero/standalone.dtd | 58+++++++++++++++++++++++++++++-----------------------------
Mchrome/locale/fa/zotero/zotero.dtd | 94++++++++++++++++++++++++++++++++++++++++----------------------------------------
Mchrome/locale/fa/zotero/zotero.properties | 76+++++++++++++++++++++++++++++++++++++++++++++-------------------------------
Achrome/locale/fi-FI/zotero/csledit.dtd | 4++++
Achrome/locale/fi-FI/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/fi-FI/zotero/preferences.dtd | 9+++------
Mchrome/locale/fi-FI/zotero/zotero.dtd | 6+++---
Mchrome/locale/fi-FI/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/fr-FR/zotero/csledit.dtd | 4++++
Achrome/locale/fr-FR/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/fr-FR/zotero/preferences.dtd | 21+++++++++------------
Mchrome/locale/fr-FR/zotero/standalone.dtd | 2+-
Mchrome/locale/fr-FR/zotero/zotero.dtd | 10+++++-----
Mchrome/locale/fr-FR/zotero/zotero.properties | 18++++++++++++++++--
Achrome/locale/gl-ES/zotero/csledit.dtd | 4++++
Achrome/locale/gl-ES/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/gl-ES/zotero/preferences.dtd | 9+++------
Mchrome/locale/gl-ES/zotero/zotero.dtd | 12++++++------
Mchrome/locale/gl-ES/zotero/zotero.properties | 18++++++++++++++++--
Achrome/locale/he-IL/zotero/csledit.dtd | 4++++
Achrome/locale/he-IL/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/he-IL/zotero/preferences.dtd | 9+++------
Mchrome/locale/he-IL/zotero/zotero.dtd | 6+++---
Mchrome/locale/he-IL/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/hr-HR/zotero/csledit.dtd | 4++++
Achrome/locale/hr-HR/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/hr-HR/zotero/preferences.dtd | 9+++------
Mchrome/locale/hr-HR/zotero/zotero.dtd | 6+++---
Mchrome/locale/hr-HR/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/hu-HU/zotero/csledit.dtd | 4++++
Achrome/locale/hu-HU/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/hu-HU/zotero/preferences.dtd | 9+++------
Mchrome/locale/hu-HU/zotero/zotero.dtd | 16++++++++--------
Mchrome/locale/hu-HU/zotero/zotero.properties | 110++++++++++++++++++++++++++++++++++++++++++++-----------------------------------
Achrome/locale/id-ID/zotero/csledit.dtd | 4++++
Achrome/locale/id-ID/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/id-ID/zotero/preferences.dtd | 9+++------
Mchrome/locale/id-ID/zotero/zotero.dtd | 6+++---
Mchrome/locale/id-ID/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/is-IS/zotero/csledit.dtd | 4++++
Achrome/locale/is-IS/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/is-IS/zotero/preferences.dtd | 9+++------
Mchrome/locale/is-IS/zotero/zotero.dtd | 6+++---
Mchrome/locale/is-IS/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/it-IT/zotero/csledit.dtd | 4++++
Achrome/locale/it-IT/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/it-IT/zotero/preferences.dtd | 9+++------
Mchrome/locale/it-IT/zotero/zotero.dtd | 6+++---
Mchrome/locale/it-IT/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/ja-JP/zotero/csledit.dtd | 4++++
Achrome/locale/ja-JP/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/ja-JP/zotero/preferences.dtd | 9+++------
Mchrome/locale/ja-JP/zotero/zotero.dtd | 12++++++------
Mchrome/locale/ja-JP/zotero/zotero.properties | 18++++++++++++++++--
Achrome/locale/km/zotero/csledit.dtd | 4++++
Achrome/locale/km/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/km/zotero/preferences.dtd | 9+++------
Mchrome/locale/km/zotero/zotero.dtd | 6+++---
Mchrome/locale/km/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/ko-KR/zotero/csledit.dtd | 4++++
Achrome/locale/ko-KR/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/ko-KR/zotero/preferences.dtd | 9+++------
Mchrome/locale/ko-KR/zotero/zotero.dtd | 6+++---
Mchrome/locale/ko-KR/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/lt-LT/zotero/csledit.dtd | 4++++
Achrome/locale/lt-LT/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/lt-LT/zotero/preferences.dtd | 9+++------
Mchrome/locale/lt-LT/zotero/zotero.dtd | 6+++---
Mchrome/locale/lt-LT/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/mn-MN/zotero/csledit.dtd | 4++++
Achrome/locale/mn-MN/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/mn-MN/zotero/preferences.dtd | 9+++------
Mchrome/locale/mn-MN/zotero/zotero.dtd | 6+++---
Mchrome/locale/mn-MN/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/nb-NO/zotero/csledit.dtd | 4++++
Achrome/locale/nb-NO/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/nb-NO/zotero/preferences.dtd | 9+++------
Mchrome/locale/nb-NO/zotero/zotero.dtd | 6+++---
Mchrome/locale/nb-NO/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/nl-NL/zotero/csledit.dtd | 4++++
Achrome/locale/nl-NL/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/nl-NL/zotero/preferences.dtd | 9+++------
Mchrome/locale/nl-NL/zotero/searchbox.dtd | 2+-
Mchrome/locale/nl-NL/zotero/zotero.dtd | 14+++++++-------
Mchrome/locale/nl-NL/zotero/zotero.properties | 34++++++++++++++++++++++++----------
Achrome/locale/nn-NO/zotero/csledit.dtd | 4++++
Achrome/locale/nn-NO/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/nn-NO/zotero/preferences.dtd | 9+++------
Mchrome/locale/nn-NO/zotero/zotero.dtd | 6+++---
Mchrome/locale/nn-NO/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/pl-PL/zotero/csledit.dtd | 4++++
Achrome/locale/pl-PL/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/pl-PL/zotero/preferences.dtd | 9+++------
Mchrome/locale/pl-PL/zotero/zotero.dtd | 12++++++------
Mchrome/locale/pl-PL/zotero/zotero.properties | 30++++++++++++++++++++++--------
Achrome/locale/pt-BR/zotero/csledit.dtd | 4++++
Achrome/locale/pt-BR/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/pt-BR/zotero/preferences.dtd | 9+++------
Mchrome/locale/pt-BR/zotero/zotero.dtd | 6+++---
Mchrome/locale/pt-BR/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/pt-PT/zotero/csledit.dtd | 4++++
Achrome/locale/pt-PT/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/pt-PT/zotero/preferences.dtd | 9+++------
Mchrome/locale/pt-PT/zotero/zotero.dtd | 6+++---
Mchrome/locale/pt-PT/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/ro-RO/zotero/csledit.dtd | 4++++
Achrome/locale/ro-RO/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/ro-RO/zotero/preferences.dtd | 9+++------
Mchrome/locale/ro-RO/zotero/zotero.dtd | 6+++---
Mchrome/locale/ro-RO/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/ru-RU/zotero/csledit.dtd | 4++++
Achrome/locale/ru-RU/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/ru-RU/zotero/preferences.dtd | 9+++------
Mchrome/locale/ru-RU/zotero/zotero.dtd | 6+++---
Mchrome/locale/ru-RU/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/sk-SK/zotero/csledit.dtd | 4++++
Achrome/locale/sk-SK/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/sk-SK/zotero/preferences.dtd | 13+++++--------
Mchrome/locale/sk-SK/zotero/zotero.dtd | 4++--
Mchrome/locale/sk-SK/zotero/zotero.properties | 34++++++++++++++++++++++++----------
Achrome/locale/sl-SI/zotero/csledit.dtd | 4++++
Achrome/locale/sl-SI/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/sl-SI/zotero/preferences.dtd | 9+++------
Mchrome/locale/sl-SI/zotero/zotero.dtd | 12++++++------
Mchrome/locale/sl-SI/zotero/zotero.properties | 18++++++++++++++++--
Achrome/locale/sr-RS/zotero/csledit.dtd | 4++++
Achrome/locale/sr-RS/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/sr-RS/zotero/preferences.dtd | 9+++------
Mchrome/locale/sr-RS/zotero/zotero.dtd | 6+++---
Mchrome/locale/sr-RS/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/sv-SE/zotero/csledit.dtd | 4++++
Achrome/locale/sv-SE/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/sv-SE/zotero/preferences.dtd | 9+++------
Mchrome/locale/sv-SE/zotero/zotero.dtd | 18+++++++++---------
Mchrome/locale/sv-SE/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/th-TH/zotero/csledit.dtd | 4++++
Achrome/locale/th-TH/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/th-TH/zotero/preferences.dtd | 9+++------
Mchrome/locale/th-TH/zotero/zotero.dtd | 6+++---
Mchrome/locale/th-TH/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/tr-TR/zotero/csledit.dtd | 4++++
Achrome/locale/tr-TR/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/tr-TR/zotero/preferences.dtd | 9+++------
Mchrome/locale/tr-TR/zotero/zotero.dtd | 6+++---
Mchrome/locale/tr-TR/zotero/zotero.properties | 16+++++++++++++++-
Mchrome/locale/uk-UA/zotero/about.dtd | 2+-
Achrome/locale/uk-UA/zotero/csledit.dtd | 4++++
Achrome/locale/uk-UA/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/uk-UA/zotero/preferences.dtd | 9+++------
Mchrome/locale/uk-UA/zotero/standalone.dtd | 2+-
Mchrome/locale/uk-UA/zotero/zotero.dtd | 16++++++++--------
Mchrome/locale/uk-UA/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/vi-VN/zotero/csledit.dtd | 4++++
Achrome/locale/vi-VN/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/vi-VN/zotero/preferences.dtd | 9+++------
Mchrome/locale/vi-VN/zotero/zotero.dtd | 6+++---
Mchrome/locale/vi-VN/zotero/zotero.properties | 14++++++++++++++
Achrome/locale/zh-CN/zotero/csledit.dtd | 4++++
Achrome/locale/zh-CN/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/zh-CN/zotero/preferences.dtd | 9+++------
Mchrome/locale/zh-CN/zotero/zotero.dtd | 12++++++------
Mchrome/locale/zh-CN/zotero/zotero.properties | 18++++++++++++++++--
Achrome/locale/zh-TW/zotero/csledit.dtd | 4++++
Achrome/locale/zh-TW/zotero/cslpreview.dtd | 9+++++++++
Mchrome/locale/zh-TW/zotero/preferences.dtd | 9+++------
Mchrome/locale/zh-TW/zotero/zotero.dtd | 6+++---
Mchrome/locale/zh-TW/zotero/zotero.properties | 14++++++++++++++
Mchrome/skin/default/zotero/overlay.css | 9++++++---
Mchrome/skin/default/zotero/preferences.css | 22++++++----------------
Achrome/skin/default/zotero/treeitem-webpage@2x.png | 0
Dchrome/skin/default/zotero/zotero-z-16px-australis.svg | 65-----------------------------------------------------------------
Mchrome/skin/default/zotero/zotero-z-32px-australis.svg | 13++++++++++---
Mchrome/skin/default/zotero/zotero.css | 67+++++++++++++++++++++++++++++++++----------------------------------
Dchrome/skin/default/zotero/zotero_status_bar.png | 0
Dchrome/skin/default/zotero/zotero_status_bar_compact.png | 0
Dchrome/skin/default/zotero/zotero_status_bar_error.png | 0
Mcomponents/zotero-autocomplete.js | 2+-
Mcomponents/zotero-service.js | 16++++++++++++++++
Mdefaults/preferences/zotero.js | 2+-
Minstall.rdf | 2+-
Mresource/config.js | 1+
Mresource/schema/repotime.txt | 2+-
Atest/chrome.manifest | 7+++++++
Atest/components/zotero-unit.js | 52++++++++++++++++++++++++++++++++++++++++++++++++++++
Atest/content/runtests.html | 15+++++++++++++++
Atest/content/runtests.js | 116+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Atest/content/support.js | 171+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Atest/install.rdf | 26++++++++++++++++++++++++++
Atest/resource/EventUtils.jsm | 835+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Atest/resource/chai | 1+
Atest/resource/mocha | 1+
Atest/runtests.sh | 72++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Atest/tests/data/recognizePDF_test_DOI.pdf | 0
Atest/tests/data/recognizePDF_test_GS.pdf | 0
Atest/tests/lookup.js | 51+++++++++++++++++++++++++++++++++++++++++++++++++++
Atest/tests/recognizePDF.js | 58++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Atest/tests/support.js | 12++++++++++++
Atest/tests/utilities.js | 20++++++++++++++++++++
Mupdate.rdf | 2+-
328 files changed, 6258 insertions(+), 2666 deletions(-)

diff --git a/.gitmodules b/.gitmodules @@ -7,3 +7,9 @@ [submodule "styles"] path = styles url = git://github.com/zotero/bundled-styles.git +[submodule "test/resource/chai"] + path = test/resource/chai + url = https://github.com/chaijs/chai.git +[submodule "test/resource/mocha"] + path = test/resource/mocha + url = https://github.com/mochajs/mocha.git diff --git a/.travis.yml b/.travis.yml @@ -0,0 +1,16 @@ +language: cpp +compiler: + - gcc +env: + matrix: + - FIREFOXVERSION="36.0.1" + - FIREFOXVERSION="31.5.0esr" +notifications: + email: false +before_install: + - export DISPLAY=:99.0 + - sh -e /etc/init.d/xvfb start + - wget http://ftp.mozilla.org/pub/firefox/releases/${FIREFOXVERSION}/linux-x86_64/en-US/firefox-${FIREFOXVERSION}.tar.bz2 + - tar -xjf firefox-${FIREFOXVERSION}.tar.bz2 +script: + - test/runtests.sh -x firefox/firefox diff --git a/README.md b/README.md @@ -1,5 +1,6 @@ Zotero ====== +[![Build Status](https://travis-ci.org/zotero/zotero.svg?branch=4.0)](https://travis-ci.org/zotero/zotero) Zotero is a free, easy-to-use tool to help you collect, organize, cite, and share your research sources. diff --git a/chrome/content/zotero-platform/mac/overlay.css b/chrome/content/zotero-platform/mac/overlay.css @@ -1,3 +1,94 @@ +/* + As of Fx36, the built-in Mac styles don't properly handle a menu-button within a combined + button, so we need this ungodly mess. +*/ +#zotero-toolbar-buttons[cui-areatype="toolbar"] > separator, +#zotero-toolbar-save-button[cui-areatype="toolbar"]:not(:hover) > .toolbarbutton-menubutton-dropmarker::before, +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button { + box-shadow: none; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] { + margin-top: 3px !important; + margin-bottom: 3px !important; + border-right: 0; + border-width: 1px; + border-style: solid; + border-color: transparent; +} + +#zotero-toolbar-main-button[cui-areatype="toolbar"] { + margin-right: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + padding-right: 2px; + padding-left: 2px; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] { + margin-top: 3px; + margin-bottom: 3px; + margin-left: -1px; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + border-left: 0 solid transparent; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] > .toolbarbutton-menubutton-button { + min-width: 26px; + padding-left: 1px; + padding-right: 1px; +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button > .toolbarbutton-menubutton-button, +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button > .toolbarbutton-menubutton-dropmarker { + border-width: 1px; + border-style: solid; + border-color: var(--toolbarbutton-hover-bordercolor) !important; + box-shadow: var(--toolbarbutton-hover-boxshadow) !important; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button > .toolbarbutton-menubutton-dropmarker::before { + background: none; +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button > .toolbarbutton-menubutton-button { + border-right: 1px solid transparent; +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button > .toolbarbutton-menubutton-dropmarker { + border-left: 1px solid transparent; +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > .toolbarbutton-menubutton-dropmarker { + background: inherit; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] > .toolbarbutton-menubutton-dropmarker:hover { + background: var(--toolbarbutton-hover-background); +} + +#zotero-toolbar-main-button[cui-areatype="toolbar"] { + border-right: 1px solid transparent; +} +#zotero-toolbar-save-button[cui-areatype="toolbar"]:hover { + border-left: 0 solid transparent; +} +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button > .toolbarbutton-menubutton-button { + border-left: 1px solid transparent; +} + +/* Necessary in Fx36 to keep 32px icons from being rendered at full size */ +#zotero-toolbar-main-button[cui-areatype="toolbar"] > .toolbarbutton-icon, +#zotero-toolbar-main-button-single[cui-areatype="toolbar"] > .toolbarbutton-icon, +#zotero-toolbar-save-button[cui-areatype="toolbar"] > .toolbarbutton-menubutton-button > .toolbarbutton-icon, +#zotero-toolbar-save-button-single[cui-areatype="toolbar"] > .toolbarbutton-menubutton-button > .toolbarbutton-icon { + width: 16px; +} +/* End toolbar icons */ + #zotero-splitter { border-top: none; @@ -255,10 +346,8 @@ background-color: #8b8b8b !important; } -#zotero-collections-splitter[state=collapsed], #zotero-items-splitter[state=collapsed] -{ - border-right: 1px; - border-color: #A5A5A5; +#zotero-collections-splitter[state=collapsed], #zotero-items-splitter[state=collapsed] { + border: 0 solid #d6d6d6 !important; max-width: 8px !important; min-width: 8px !important; width: 8px !important; @@ -267,6 +356,14 @@ padding: 0; } +#zotero-collections-splitter[state=collapsed] { + border-right-width: 1px !important; +} + +#zotero-items-splitter[state=collapsed] { + border-left-width: 1px !important; +} + #zotero-collections-splitter[state=collapsed] > grippy, #zotero-items-splitter[state=collapsed] > grippy { -moz-appearance: none; diff --git a/chrome/content/zotero-platform/unix/overlay.css b/chrome/content/zotero-platform/unix/overlay.css @@ -1,3 +1,98 @@ +/* + As of Fx36, the built-in styles don't properly handle a menu-button within combined buttons. +*/ +#zotero-toolbar-main-button[cui-areatype="toolbar"] { + margin-right: -1px; +} + +#zotero-toolbar-main-button[cui-areatype="toolbar"] .toolbarbutton-icon { + width: 28px !important; + margin-left: 2px; + margin-right: -3px; + padding-left: 5px !important; + padding-right: 5px !important; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] .toolbarbutton-icon { + width: 30px !important; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] > .toolbarbutton-menubutton-button { + padding-left: 0; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] > .toolbarbutton-menubutton-button .toolbarbutton-icon { + padding-left: 6px !important; + padding-right: 6px !important; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] > .toolbarbutton-menubutton-dropmarker { + margin-top: 2px; + margin-bottom: 2px; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] > .toolbarbutton-menubutton-dropmarker .dropmarker-icon { + padding-left: 14px !important; + padding-right: 3px !important; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] > .toolbarbutton-menubutton-dropmarker { + margin-top: 6px; + margin-bottom: 6px; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"]:hover > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon, +#zotero-toolbar-save-button[cui-areatype="toolbar"][open] > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon { + margin-top: 0; + margin-bottom: 0; +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"] > separator { + /* Copied from .toolbarbutton-menubutton-dropmarker::before */ + display: -moz-box; + width: 1px; + height: 18px; + -moz-margin-end: -1px; + background-image: var(--toolbarbutton-combined-backgroundimage); + background-clip: padding-box; + background-position: center; + background-repeat: no-repeat; + background-size: 1px 18px; + box-shadow: var(--toolbarbutton-combined-boxshadow); +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-main-button .toolbarbutton-icon, +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button .toolbarbutton-icon, +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button .dropmarker-icon { + border-color: var(--toolbarbutton-hover-bordercolor) !important; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"]:hover:not(:active) > .toolbarbutton-menubutton-button > .toolbarbutton-icon, +#zotero-toolbar-save-button[cui-areatype="toolbar"]:hover > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon { + background: inherit; +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"] > #zotero-toolbar-save-button > .toolbarbutton-menubutton-button:hover:not(:active) > .toolbarbutton-icon, +/* This selector doesn't work, so the dropmarker doesn't get a hover effect. :hover doesn't seem + to have an effect on either part of the dropmarker */ +#zotero-toolbar-buttons[cui-areatype="toolbar"] > #zotero-toolbar-save-button > .toolbarbutton-menubutton-dropmarker:hover > .dropmarker-icon { + background: var(--toolbarbutton-hover-background) !important; +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"] > #zotero-toolbar-save-button:hover:active:not([open]):not([disabled]) .toolbarbutton-menubutton-button .toolbarbutton-icon, +#zotero-toolbar-buttons[cui-areatype="toolbar"] > #zotero-toolbar-save-button:hover[open]:not([disabled]) .toolbarbutton-menubutton-dropmarker .dropmarker-icon { + background: var(--toolbarbutton-active-background); + border-color: var(--toolbarbutton-active-bordercolor); + box-shadow: var(--toolbarbutton-active-boxshadow); + transition-duration: 10ms; +} + +#zotero-toolbar-main-button-single[cui-areatype="toolbar"] .toolbarbutton-icon { + width: 32px; +} +/* End toolbar buttons */ + + .zotero-tb-button:not([type=menu]) { margin-right: 4px; } diff --git a/chrome/content/zotero-platform/win/overlay.css b/chrome/content/zotero-platform/win/overlay.css @@ -1,3 +1,105 @@ +/* + As of Fx36, the built-in styles don't properly handle a menu-button within combined buttons. +*/ +#zotero-toolbar-main-button[cui-areatype="toolbar"] { + margin-right: -1px !important; +} + +#zotero-toolbar-main-button[cui-areatype="toolbar"] .toolbarbutton-icon { + width: 28px; + margin-left: 2px; + margin-right: -1px; + padding-left: 5px !important; + padding-right: 5px !important; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] .toolbarbutton-icon { + padding-left: 6px !important; + padding-right: 6px !important; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] > .toolbarbutton-menubutton-dropmarker .dropmarker-icon { + padding-left: 5px !important; + padding-right: 4px !important; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] .toolbarbutton-menubutton-button { + margin-left: -2px !important; +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"] > separator, +#zotero-toolbar-buttons[cui-areatype="toolbar"] > #zotero-toolbar-save-button > .toolbarbutton-menubutton-dropmarker::before { + width: 1px; + -moz-margin-end: -1px; + background-image: var(--toolbarbutton-combined-backgroundimage); +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"] > separator { + margin-top: 11px; + margin-bottom: 11px; +} + + +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > separator, +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button:not([disabled]) > .toolbarbutton-menubutton-dropmarker::before { + display: none; +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-main-button .toolbarbutton-icon, +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button:not([disabled]) .toolbarbutton-icon, +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button:not([disabled]) .dropmarker-icon { + border-color: var(--toolbarbutton-hover-bordercolor) !important; +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-main-button:not(:active) .toolbarbutton-icon, +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover:not([disabled]) > #zotero-toolbar-save-button:not(:active) .toolbarbutton-icon, +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover:not([disabled]) > #zotero-toolbar-save-button:not(:active) .dropmarker-icon { + background: var(--toolbarbutton-hover-background); +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button .toolbarbutton-icon, +#zotero-toolbar-buttons[cui-areatype="toolbar"]:hover > #zotero-toolbar-save-button .dropmarker-icon { + box-shadow: none; +} + +/* + There are two hover effects: when the toolbaritem is hovered over, and when the button is hovered over. + This applies the latter (and may not be right on different versions of Windows). +*/ +#zotero-toolbar-buttons[cui-areatype="toolbar"] > #zotero-toolbar-main-button:hover:not(:active):not([disabled]) > .toolbarbutton-icon, +/* + The dropmarker doesn't honor :hover, so instead of showing the hover effect for each segment individually, do the + menu-button parts together, which at least looks like a choice. +*/ +#zotero-toolbar-buttons[cui-areatype="toolbar"] > #zotero-toolbar-save-button:hover .toolbarbutton-menubutton-button .toolbarbutton-icon, +#zotero-toolbar-buttons[cui-areatype="toolbar"] > #zotero-toolbar-save-button:hover:not(:active):not([disabled]) .toolbarbutton-menubutton-dropmarker .dropmarker-icon { + background-color: hsla(210,48%,96%,.75) !important; +} +#zotero-toolbar-buttons[cui-areatype="toolbar"] > #zotero-toolbar-main-button:hover > .toolbarbutton-icon, +#zotero-toolbar-buttons[cui-areatype="toolbar"] > #zotero-toolbar-save-button:hover:not([disabled]) .toolbarbutton-menubutton-button .toolbarbutton-icon, +#zotero-toolbar-buttons[cui-areatype="toolbar"] > #zotero-toolbar-save-button:hover:not([disabled]) .toolbarbutton-menubutton-dropmarker .dropmarker-icon { + border-color: hsla(210,54%,20%,.3) hsla(210,54%,20%,.35) hsla(210,54%,20%,.4) !important; + box-shadow: 0 0 1px hsla(210,54%,20%,.03), + 0 0 2px hsla(210,54%,20%,.1) !important; +} + +#zotero-toolbar-buttons[cui-areatype="toolbar"] > #zotero-toolbar-save-button:hover:active:not([open]):not([disabled]) .toolbarbutton-menubutton-button .toolbarbutton-icon, +#zotero-toolbar-buttons[cui-areatype="toolbar"] > #zotero-toolbar-save-button:hover[open]:not([disabled]) .toolbarbutton-menubutton-dropmarker .dropmarker-icon { + background: var(--toolbarbutton-active-background); + border-color: var(--toolbarbutton-active-bordercolor); + box-shadow: var(--toolbarbutton-active-boxshadow); + transition-duration: 10ms; +} + +#zotero-toolbar-save-button[cui-areatype="toolbar"] > menupopup { + margin-top: -5px; +} + +#zotero-toolbar-main-button-single[cui-areatype="toolbar"] .toolbarbutton-icon { + width: 32px; +} +/* End toolbar buttons */ + #zotero-tb-search-menu-button { margin: 0 -1px 0 -4px; border: 0; diff --git a/chrome/content/zotero/attachLink.xul b/chrome/content/zotero/attachLink.xul @@ -14,7 +14,7 @@ > <script src="include.js"/> - <script src="AttachLink.js"/> + <script src="attachLink.js"/> <vbox id="zotero-attach-uri-container"> <hbox> diff --git a/chrome/content/zotero/bindings/guidancepanel.xml b/chrome/content/zotero/bindings/guidancepanel.xml @@ -36,6 +36,7 @@ <body> <![CDATA[ Components.utils.import("resource://gre/modules/Services.jsm"); + if(!Zotero.Prefs.get("firstRunGuidance")) return; var about = this.getAttribute("about"), pref = "firstRunGuidanceShown."+about, diff --git a/chrome/content/zotero/bindings/itembox.xml b/chrome/content/zotero/bindings/itembox.xml @@ -1036,6 +1036,9 @@ <body> <![CDATA[ var sbo = document.getAnonymousNodes(this)[0].boxObject; + if (Zotero.platformMajorVersion < 36) { + sbo.QueryInterface(Components.interfaces.nsIScrollBoxObject); + } sbo.ensureElementIsVisible(elem); ]]> </body> diff --git a/chrome/content/zotero/bindings/tagsbox.xml b/chrome/content/zotero/bindings/tagsbox.xml @@ -1028,6 +1028,9 @@ <body> <![CDATA[ var sbo = document.getAnonymousNodes(this)[0].boxObject; + if (Zotero.platformMajorVersion < 36) { + sbo.QueryInterface(Components.interfaces.nsIScrollBoxObject); + } sbo.ensureElementIsVisible(elem); ]]> </body> diff --git a/chrome/content/zotero/browser.js b/chrome/content/zotero/browser.js @@ -40,7 +40,6 @@ var Zotero_Browser = new function() { this.init = init; - this.scrapeThisPage = scrapeThisPage; this.annotatePage = annotatePage; this.toggleMode = toggleMode; this.toggleCollapsed = toggleCollapsed; @@ -54,7 +53,6 @@ var Zotero_Browser = new function() { this.tabbrowser = null; this.appcontent = null; - this.statusImage = null; this.isScraping = false; var _browserData = new Object(); @@ -154,13 +152,25 @@ var Zotero_Browser = new function() { * Scrapes a page (called when the capture icon is clicked * @return void */ - function scrapeThisPage(translator) { + this.scrapeThisPage = function (translator, event) { // Perform translation var tab = _getTabObject(Zotero_Browser.tabbrowser.selectedBrowser); if(tab.page.translators && tab.page.translators.length) { tab.page.translate.setTranslator(translator || tab.page.translators[0]); Zotero_Browser.performTranslation(tab.page.translate); // TODO: async } + else { + // Keep in sync with cmd_zotero_newItemFromCurrentPage + // + // DEBUG: Possible to just trigger command directly with event? Assigning it to the + // command property of the icon doesn't seem to work, and neither does goDoCommand() + // from chrome://global/content/globalOverlay.js. Getting the command by id and + // running doCommand() works but doesn't pass the event. + ZoteroPane.addItemFromPage( + 'temporaryPDFHack', + (event && event.shiftKey) ? !Zotero.Prefs.get('automaticSnapshots') : null + ); + } } /* @@ -223,7 +233,6 @@ var Zotero_Browser = new function() { function chromeLoad() { this.tabbrowser = gBrowser; this.appcontent = document.getElementById("appcontent"); - this.statusImage = document.getElementById("zotero-status-image"); // this gives us onLocationChange, for updating when tabs are switched/created gBrowser.tabContainer.addEventListener("TabClose", @@ -270,6 +279,7 @@ var Zotero_Browser = new function() { function(e) { Zotero_Browser.resize(e) }, false); } + /* * An event handler called when a new document is loaded. Creates a new document * object, and updates the status of the capture icon @@ -415,19 +425,34 @@ var Zotero_Browser = new function() { * thereof of the current page */ function updateStatus() { + if (!Zotero_Browser.tabbrowser) return; var tab = _getTabObject(Zotero_Browser.tabbrowser.selectedBrowser); - var captureIcon = tab.getCaptureIcon(); - if(captureIcon) { - Zotero_Browser.statusImage.src = captureIcon; - Zotero_Browser.statusImage.tooltipText = tab.getCaptureTooltip(); - Zotero_Browser.statusImage.hidden = false; - - Zotero_Browser.statusImage.addEventListener("load", function() { - document.getElementById("zotero-status-image-guidance").show(); - }, false); - } else { - Zotero_Browser.statusImage.hidden = true; + Components.utils.import("resource:///modules/CustomizableUI.jsm"); + var buttons = getSaveButtons(); + if (buttons.length) { + let state = tab.getCaptureState(); + let tooltiptext = tab.getCaptureTooltip(); + for (let { button, placement } of buttons) { + let inToolbar = placement.area == CustomizableUI.AREA_NAVBAR; + button.image = tab.getCaptureIcon(Zotero.hiDPI || !inToolbar); + button.tooltipText = tooltiptext; + if (state == tab.CAPTURE_STATE_TRANSLATABLE) { + button.classList.add('translate'); + + // Show guidance panel if necessary + if (inToolbar) { + button.addEventListener("load", function() { + document.getElementById("zotero-status-image-guidance").show(); + }); + } + // TODO: Different guidance for web pages? + } + else { + button.classList.remove('translate'); + } + button.removeAttribute('disabled'); + } } // set annotation bar status @@ -439,6 +464,35 @@ var Zotero_Browser = new function() { } } + function getSaveButtons() { + Components.utils.import("resource:///modules/CustomizableUI.jsm"); + var buttons = []; + + var placement = CustomizableUI.getPlacementOfWidget("zotero-toolbar-buttons"); + if (placement) { + let button = document.getElementById("zotero-toolbar-save-button"); + if (button) { + buttons.push({ + button: button, + placement: placement + }); + } + } + + placement = CustomizableUI.getPlacementOfWidget("zotero-toolbar-save-button-single"); + if (placement) { + let button = document.getElementById("zotero-toolbar-save-button-single"); + if (button) { + buttons.push({ + button: button, + placement: placement + }); + } + } + + return buttons; + } + /** * Called when status bar icon is right-clicked */ @@ -447,45 +501,79 @@ var Zotero_Browser = new function() { while(popup.hasChildNodes()) popup.removeChild(popup.lastChild); var tab = _getTabObject(this.tabbrowser.selectedBrowser); - var translators = tab.page.translators; - for(var i=0, n=translators.length; i<n; i++) { - let translator = translators[i]; + + if (tab.getCaptureState() == tab.CAPTURE_STATE_TRANSLATABLE) { + let translators = tab.page.translators; + for (var i=0, n = translators.length; i < n; i++) { + let translator = translators[i]; + + let menuitem = document.createElement("menuitem"); + menuitem.setAttribute("label", + Zotero.getString("ingester.saveToZoteroUsing", translator.label)); + menuitem.setAttribute("image", (translator.itemType === "multiple" + ? "chrome://zotero/skin/treesource-collection.png" + : Zotero.ItemTypes.getImageSrc(translator.itemType))); + menuitem.setAttribute("class", "menuitem-iconic"); + menuitem.addEventListener("command", function(e) { + Zotero_Browser.scrapeThisPage(translator, e); + e.stopPropagation(); + }, false); + popup.appendChild(menuitem); + } - var menuitem = document.createElement("menuitem"); - menuitem.setAttribute("label", - Zotero.getString("ingester.saveToZoteroUsing", translator.label)); - menuitem.setAttribute("image", (translator.itemType === "multiple" - ? "chrome://zotero/skin/treesource-collection.png" - : Zotero.ItemTypes.getImageSrc(translator.itemType))); + popup.appendChild(document.createElement("menuseparator")); + + let menuitem = document.createElement("menuitem"); + menuitem.setAttribute("label", Zotero.getString("locate.libraryLookup.label")); + menuitem.setAttribute("tooltiptext", Zotero.getString("locate.libraryLookup.tooltip")); + menuitem.setAttribute("image", "chrome://zotero/skin/locate-library-lookup.png"); menuitem.setAttribute("class", "menuitem-iconic"); - menuitem.addEventListener("command", function(e) { - scrapeThisPage(translator); - }, false); + menuitem.addEventListener("command", _constructLookupFunction(tab, function(event, obj) { + var urls = []; + for each(var item in obj.newItems) { + var url = Zotero.OpenURL.resolve(item); + if(url) urls.push(url); + } + ZoteroPane.loadURI(urls, event); + }), false); + popup.appendChild(menuitem); + + var locateEngines = Zotero.LocateManager.getVisibleEngines(); + Zotero_LocateMenu.addLocateEngines(popup, locateEngines, + _constructLookupFunction(tab, function(e, obj) { + Zotero_LocateMenu.locateItem(e, obj.newItems); + }), true); + } + else { + let webPageIcon = tab.getCaptureIcon(Zotero.hiDPI); + let automaticSnapshots = Zotero.Prefs.get('automaticSnapshots'); + let snapshotEvent = { + shiftKey: !automaticSnapshots + }; + let noSnapshotEvent = { + shiftKey: automaticSnapshots + }; + + let menuitem = document.createElement("menuitem"); + menuitem.setAttribute("label", "Save to Zotero as Web Page (with snapshot)"); + menuitem.setAttribute("image", webPageIcon); + menuitem.setAttribute("class", "menuitem-iconic"); + menuitem.addEventListener("command", function (event) { + Zotero_Browser.scrapeThisPage(null, snapshotEvent); + event.stopPropagation(); + }); + popup.appendChild(menuitem); + + menuitem = document.createElement("menuitem"); + menuitem.setAttribute("label", "Save to Zotero as Web Page (without snapshot)"); + menuitem.setAttribute("image", webPageIcon); + menuitem.setAttribute("class", "menuitem-iconic"); + menuitem.addEventListener("command", function (event) { + Zotero_Browser.scrapeThisPage(null, noSnapshotEvent); + event.stopPropagation(); + }); popup.appendChild(menuitem); } - - popup.appendChild(document.createElement("menuseparator")); - - var menuitem = document.createElement("menuitem"); - menuitem.setAttribute("label", Zotero.getString("locate.libraryLookup.label")); - menuitem.setAttribute("tooltiptext", Zotero.getString("locate.libraryLookup.tooltip")); - menuitem.setAttribute("image", "chrome://zotero/skin/locate-library-lookup.png"); - menuitem.setAttribute("class", "menuitem-iconic"); - menuitem.addEventListener("command", _constructLookupFunction(tab, function(event, obj) { - var urls = []; - for each(var item in obj.newItems) { - var url = Zotero.OpenURL.resolve(item); - if(url) urls.push(url); - } - ZoteroPane.loadURI(urls, event); - }), false); - popup.appendChild(menuitem); - - var locateEngines = Zotero.LocateManager.getVisibleEngines(); - Zotero_LocateMenu.addLocateEngines(popup, locateEngines, - _constructLookupFunction(tab, function(e, obj) { - Zotero_LocateMenu.locateItem(e, obj.newItems); - }), true); } /** @@ -698,6 +786,10 @@ Zotero_Browser.Tab = function(browser) { this.page = new Object(); } +Zotero_Browser.Tab.prototype.CAPTURE_STATE_DISABLED = 0; +Zotero_Browser.Tab.prototype.CAPTURE_STATE_GENERIC = 1; +Zotero_Browser.Tab.prototype.CAPTURE_STATE_TRANSLATABLE = 2; + /* * clears page-specific information */ @@ -709,8 +801,13 @@ Zotero_Browser.Tab.prototype.clear = function() { /* * detects translators for this browser object */ -Zotero_Browser.Tab.prototype.detectTranslators = function(rootDoc, doc) { - if(doc instanceof HTMLDocument && doc.documentURI.substr(0, 6) != "about:") { +Zotero_Browser.Tab.prototype.detectTranslators = function(rootDoc, doc) { + if (doc instanceof HTMLDocument) { + if (doc.documentURI.startsWith("about:")) { + this.page.saveEnabled = false; + return; + } + // get translators var me = this; @@ -776,31 +873,78 @@ Zotero_Browser.Tab.prototype._attemptLocalFileImport = function(doc) { } } + +Zotero_Browser.Tab.prototype.getCaptureState = function () { + if (!this.page.saveEnabled) { + return this.CAPTURE_STATE_DISABLED; + } + if (this.page.translators && this.page.translators.length) { + return this.CAPTURE_STATE_TRANSLATABLE; + } + return this.CAPTURE_STATE_GENERIC; +} + /* * returns the URL of the image representing the translator to be called on the * current page, or false if the page cannot be scraped */ -Zotero_Browser.Tab.prototype.getCaptureIcon = function() { - if(this.page.translators && this.page.translators.length) { +Zotero_Browser.Tab.prototype.getCaptureIcon = function (hiDPI) { + var suffix = hiDPI ? "@2x" : ""; + + switch (this.getCaptureState()) { + case this.CAPTURE_STATE_TRANSLATABLE: var itemType = this.page.translators[0].itemType; return (itemType === "multiple" ? "chrome://zotero/skin/treesource-collection.png" : Zotero.ItemTypes.getImageSrc(itemType)); - } - return false; + // TODO: Show icons for images, PDFs, etc.? + default: + return "chrome://zotero/skin/treeitem-webpage" + suffix + ".png"; + } } Zotero_Browser.Tab.prototype.getCaptureTooltip = function() { - if (this.page.translators && this.page.translators.length) { - var arr = [Zotero.getString('ingester.saveToZotero')]; + switch (this.getCaptureState()) { + case this.CAPTURE_STATE_DISABLED: + var text = Zotero.getString('ingester.saveToZotero'); + break; + + case this.CAPTURE_STATE_TRANSLATABLE: + var text = Zotero.getString('ingester.saveToZotero'); if (this.page.translators[0].itemType == 'multiple') { - arr.push('...'); + text += '…'; } - arr.push (' ' , '(' + this.page.translators[0].label + ')'); - return Zotero.localeJoin(arr, ''); + text += ' (' + this.page.translators[0].label + ')'; + break; + + // TODO: Different captions for images, PDFs, etc.? + default: + var text = Zotero.getString('ingester.saveToZotero') + + " (" + Zotero.getString('itemTypes.webpage') + ")"; + } + + var key = Zotero.Keys.getKeyForCommand('saveToZotero'); + if (key) { + // Add RLE mark in RTL mode to make shortcut render the right way + text += (Zotero.rtl ? ' \u202B' : ' ') + '(' + + (Zotero.isMac ? '⇧⌘' : Zotero.getString('general.keys.ctrlShift')) + + key + + ')'; + } + + return text; +} + +Zotero_Browser.Tab.prototype.getCaptureCommand = function () { + switch (this.getCaptureState()) { + case this.CAPTURE_STATE_DISABLED: + return ''; + case this.CAPTURE_STATE_TRANSLATABLE: + return ''; + default: + return 'cmd_zotero_newItemFromCurrentPage'; } - return ''; } @@ -826,6 +970,8 @@ Zotero_Browser.Tab.prototype._selectItems = function(obj, itemList, callback) { * called when translators are available */ Zotero_Browser.Tab.prototype._translatorsAvailable = function(translate, translators) { + this.page.saveEnabled = true; + if(translators && translators.length) { //see if we should keep the previous set of translators if(//we already have a translator for part of this page @@ -850,6 +996,7 @@ Zotero_Browser.Tab.prototype._translatorsAvailable = function(translate, transla return; //keep what we had } else { this.clear(); //clear URL bar icon + this.page.saveEnabled = true; } Zotero.debug("Translate: found translators for page\n" diff --git a/chrome/content/zotero/icon.js b/chrome/content/zotero/icon.js @@ -0,0 +1,291 @@ +/* + ***** BEGIN LICENSE BLOCK ***** + + Copyright © 2015 Center for History and New Media + George Mason University, Fairfax, Virginia, USA + http://zotero.org + + This file is part of Zotero. + + Zotero is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Zotero is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with Zotero. If not, see <http://www.gnu.org/licenses/>. + + ***** END LICENSE BLOCK ***** +*/ + +"use strict"; + +Components.utils.import("resource:///modules/CustomizableUI.jsm"); + +var comboButtonsID = 'zotero-toolbar-buttons'; + +CustomizableUI.addListener({ + onWidgetAdded: function (id, area, position) { + if (id == comboButtonsID) { + // When dropping combo button into panel, add two independent buttons instead + if (area == CustomizableUI.AREA_PANEL) { + let mainID = getSingleID('main'); + let saveID = getSingleID('save'); + CustomizableUI.removeWidgetFromArea(id); + // Remove independent main and save buttons first if they're already in panel + CustomizableUI.removeWidgetFromArea(mainID); + CustomizableUI.removeWidgetFromArea(saveID); + CustomizableUI.addWidgetToArea(mainID, area, position); + let placement = CustomizableUI.getPlacementOfWidget(mainID) + let mainPos = placement.position; + CustomizableUI.addWidgetToArea(saveID, area, mainPos + 1); + return; + } + + var item = document.getElementById(id); + // Element may not exist yet if it was added to the panel + if (item) { + updateItemForArea(item, area); + } + + var isUpgrade = false; + try { + isUpgrade = Zotero.Prefs.get("firstRunGuidanceShown.saveIcon"); + } catch(e) {} + var property = "firstRunGuidance.toolbarButton." + (isUpgrade ? "upgrade" : "new"); + var shortcut = Zotero.getString( + Zotero.isMac ? "general.keys.cmdShift" : "general.keys.ctrlShift" + ) + Zotero.Prefs.get("keys.openZotero"); + document.getElementById("zotero-toolbar-button-guidance").show( + null, Zotero.getString(property, shortcut) + ); + } + else if (id == getSingleID('save')) { + Zotero_Browser.updateStatus(); + } + }, + + onWidgetRemoved: function (id, area) { + if (id == comboButtonsID) { + var item = document.getElementById(id); + updateItemForArea(item, null); + } + // Clear dynamic image from save icon and revert to CSS + else if (id == getSingleID('save')) { + let button = document.getElementById(id); + button.image = ""; + } + }, + + // Save icon in panel isn't in DOM until menu is shown once and therefore isn't updated + // on page loads, so update the icon status when the panel is first shown so that it + // doesn't remain disabled + onAreaNodeRegistered: function (area, node) { + if (area == CustomizableUI.AREA_PANEL) { + var placement = CustomizableUI.getPlacementOfWidget(comboButtonsID) + var update = false; + if (placement && placement.area == CustomizableUI.AREA_PANEL) { + update = true; + } + else { + placement = CustomizableUI.getPlacementOfWidget(getSingleID('save')); + if (placement && placement.area == CustomizableUI.AREA_PANEL) { + update = true; + } + } + if (update) { + Zotero_Browser.updateStatus(); + } + } + } +}) + +// Create the combo buttons, which go in the toolbar by default +CustomizableUI.createWidget({ + id: comboButtonsID, + type: 'custom', + label: 'Zotero', + tooltiptext: "Zotero", + defaultArea: CustomizableUI.AREA_NAVBAR, + onBuild: function (document) { + const kNSXUL = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"; + + var item = document.createElementNS(kNSXUL, "toolbaritem"); + item.setAttribute("id", comboButtonsID); + item.setAttribute("label", "Zotero (Combo)"); // TODO: localize + // Set this as an attribute in addition to the property to make sure we can style correctly. + item.setAttribute("removable", "true"); + item.classList.add("chromeclass-toolbar-additional"); + + ['main', 'save'].map(button => { + return { + name: button, + id: getID(button), + tooltiptext: getTooltipText(button), + oncommand: getCommand(button) + }; + }).forEach(function(attribs, index) { + if (index != 0) { + item.appendChild(document.createElementNS(kNSXUL, "separator")); + } + let button = document.createElementNS(kNSXUL, "toolbarbutton"); + if (attribs.name == 'save') { + button.setAttribute('disabled', 'true'); + button.setAttribute('type', 'menu-button'); + let menupopup = document.createElementNS(kNSXUL, "menupopup"); + menupopup.setAttribute('onpopupshowing', "Zotero_Browser.onStatusPopupShowing(event)"); + button.appendChild(menupopup); + } + delete attribs.name; + setAttributes(button, attribs); + item.appendChild(button); + }); + + updateItemForArea(item, this.currentArea) + + return item; + } +}); + +// Create the independent Z button, which isn't shown by default +CustomizableUI.createWidget({ + id: getSingleID('main'), + label: Zotero.clientName, + tooltiptext: getTooltipText('main'), + defaultArea: false, + onCommand: function (event) { + ZoteroOverlay.toggleDisplay(); + } +}); + +// Create the independent save button, which isn't shown by default +CustomizableUI.createWidget({ + id: getSingleID('save'), + label: Zotero.getString('ingester.saveToZotero'), + tooltiptext: getTooltipText('save'), + defaultArea: false, + onCommand: function (event) { + Zotero_Browser.scrapeThisPage(null, event); + }, + onCreated: function (button) { + const kNSXUL = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"; + button.setAttribute('disabled', 'true'); + button.setAttribute('type', 'menu-button'); + let menupopup = document.createElementNS(kNSXUL, "menupopup"); + menupopup.setAttribute('onpopupshowing', "Zotero_Browser.onStatusPopupShowing(event)"); + button.appendChild(menupopup); + } +}); + + +function getID(button) { + switch (button) { + case 'main': + return "zotero-toolbar-main-button"; + + case 'save': + return "zotero-toolbar-save-button"; + } +} + +function getSingleID(button) { + return getID(button) + '-single'; +} + +function getCommand(button) { + switch (button) { + case 'main': + return "ZoteroOverlay.toggleDisplay()"; + + case 'save': + return "Zotero_Browser.scrapeThisPage(null, event)"; + } +} + +function getTooltipText(button) { + var text; + switch (button) { + case 'main': + if (Zotero && Zotero.initialized) { + text = Zotero.clientName; + let key = Zotero.Keys.getKeyForCommand('openZotero'); + if (key) { + // Add RLE mark in RTL mode to make shortcut render the right way + text += (Zotero.rtl ? ' \u202B' : ' ') + '(' + + (Zotero.isMac ? '⇧⌘' : Zotero.getString('general.keys.ctrlShift')) + + key + + ')'; + } + + } + else { + if (Zotero) { + text = Zotero.startupError; + } + + // Use defaults if necessary + if (!text) { + // Get the stringbundle manually + let src = 'chrome://zotero/locale/zotero.properties'; + let localeService = Components.classes['@mozilla.org/intl/nslocaleservice;1'] + .getService(Components.interfaces.nsILocaleService); + let appLocale = localeService.getApplicationLocale(); + let stringBundleService = Components.classes["@mozilla.org/intl/stringbundle;1"] + .getService(Components.interfaces.nsIStringBundleService); + let stringBundle = stringBundleService.createBundle(src, appLocale); + text = stringBundle.GetStringFromName('startupError'); + } + } + break; + + case 'save': + text = Zotero.getString('ingester.saveToZotero'); + break; + } + return text; +} + +/** + * Set various attributes that allow treeitem and subelements to be styled properly + * in the different areas + */ +function updateItemForArea(item, area) { + if (area) { + var areaType = CustomizableUI.getAreaType(area); + var inPanel = area == CustomizableUI.AREA_PANEL; + var classes = inPanel ? "panel-combined-button" : "toolbarbutton-1 toolbarbutton-combined"; + item.setAttribute("cui-areatype", areaType); + item.classList.add("toolbaritem-combined-buttons"); + if (inPanel) { + item.classList.add("panel-wide-item"); + } + var buttons = item.getElementsByTagName('toolbarbutton'); + for (let i = 0; i < buttons.length; i++) { + let button = buttons[i]; + button.setAttribute("class", classes); + button.setAttribute("cui-areatype", areaType); + } + } + // In customization palette pretend it's a single icon + else { + item.classList.remove("toolbaritem-combined-buttons"); + item.classList.remove("panel-wide-item"); + var buttons = item.getElementsByTagName('toolbarbutton'); + for (let i = 0; i < buttons.length; i++) { + let button = buttons[i]; + button.setAttribute("class", "toolbarbutton-1"); + button.removeAttribute("cui-areatype"); + } + } +} + +function setAttributes(elem, attrs) { + for (let i in attrs) { + elem.setAttribute(i, attrs[i]); + } +} diff --git a/chrome/content/zotero/overlay.js b/chrome/content/zotero/overlay.js @@ -39,24 +39,6 @@ var ZoteroOverlay = new function() zoteroPane = document.getElementById('zotero-pane-stack'); zoteroSplitter = document.getElementById('zotero-splitter'); - // Make Zotero icon visible, if requested - var prefBranch = Components.classes["@mozilla.org/preferences-service;1"] - .getService(Components.interfaces.nsIPrefService) - .getBranch('extensions.zotero.'); - var addonBar = document.getElementById('addon-bar'); - var iconPref = prefBranch.getIntPref('statusBarIcon'); - // If this is the first run, add icon to add-on bar if not - // in the window already and not hidden by the Zotero prefs - if (!document.getElementById("zotero-toolbar-button") && iconPref != 0) { - addonBar.insertItem("zotero-toolbar-button"); - addonBar.setAttribute("currentset", addonBar.currentSet); - document.persist(addonBar.id, "currentset"); - addonBar.setAttribute("collapsed", false); - document.persist(addonBar.id, "collapsed"); - } - - var icon = document.getElementById('zotero-toolbar-button'); - var self = this; Zotero.Promise.try(function () { @@ -104,49 +86,17 @@ var ZoteroOverlay = new function() // Set a flag for hi-res displays Zotero.hiDPI = window.devicePixelRatio > 1; - // Add a listener for toolbar change events - window.addEventListener("customizationchange", onToolbarChange, false); + // Clear old Zotero icon pref + var prefBranch = Components.classes["@mozilla.org/preferences-service;1"] + .getService(Components.interfaces.nsIPrefService) + .getBranch('extensions.zotero.'); + prefBranch.clearUserPref('statusBarIcon'); + + // Add toolbar icon + Services.scriptloader.loadSubScript("chrome://zotero/content/icon.js", {}, "UTF-8"); + // TODO: Add only when progress window is open document.getElementById('appcontent').addEventListener('mousemove', Zotero.ProgressWindowSet.updateTimers, false); - if (icon) { - // TODO: move to strings - let str = 'Zotero'; - let key = Zotero.Keys.getKeyForCommand('openZotero'); - if (key) { - str += ' (' - + (Zotero.isMac ? '⇧⌘' : Zotero.getString('general.keys.ctrlShift')) - + key - + ')'; - } - icon.setAttribute('tooltiptext', str); - - if (iconPref == 1) { - icon.setAttribute('compact', true); - } - // If hidden in prefs, remove from add-on bar - else if (iconPref == 0) { - var toolbar = icon.parentNode; - if (toolbar.id == 'addon-bar') { - var palette = document.getElementById("navigator-toolbox").palette; - palette.appendChild(icon); - toolbar.setAttribute("currentset", toolbar.currentSet); - document.persist(toolbar.id, "currentset"); - } - } - - if (icon.getAttribute("cui-areatype") == "toolbar") { - window.setTimeout(function() { - var isUpgrade = false; - try { - isUpgrade = Zotero.Prefs.get("firstRunGuidanceShown.saveIcon"); - } catch(e) {} - var property = "firstRunGuidance.toolbarButton."+(isUpgrade ? "upgrade" : "new"); - var shortcut = Zotero.getString(Zotero.isMac ? "general.keys.cmdShift" : "general.keys.ctrlShift")+ - Zotero.Prefs.get("keys.openZotero"); - document.getElementById("zotero-toolbar-button-guidance").show(null, Zotero.getString(property, shortcut)); - }, 0); - } - } // Used for loading pages from upgrade wizard if (Zotero.initialURL) { @@ -179,52 +129,12 @@ var ZoteroOverlay = new function() }) .catch(function (e) { Zotero.debug(e, 1); - Components.utils.reportError(e); - var errMsg = Zotero ? Zotero.startupError : null; - // Use defaults if necessary - if (!errMsg) { - // Get the stringbundle manually - var src = 'chrome://zotero/locale/zotero.properties'; - var localeService = Components.classes['@mozilla.org/intl/nslocaleservice;1'] - .getService(Components.interfaces.nsILocaleService); - var appLocale = localeService.getApplicationLocale(); - var stringBundleService = Components.classes["@mozilla.org/intl/stringbundle;1"] - .getService(Components.interfaces.nsIStringBundleService); - var stringBundle = stringBundleService.createBundle(src, appLocale); - - errMsg = stringBundle.GetStringFromName('startupError'); - } - icon.setAttribute('tooltiptext', errMsg); - icon.setAttribute('error', 'true'); + throw e; }); } - function onToolbarChange(e) { - // e.target seems to be navigator-toolbox in all cases, - // so check the addon-bar directly - var addonBar = document.getElementById("addon-bar"); - var icon = document.getElementById("zotero-toolbar-button"); - if (icon) { - // If dragged to add-on bar - if (addonBar.getElementsByAttribute("id", "zotero-toolbar-button").length) { - var statusBarPref = Zotero.Prefs.get("statusBarIcon"); - // If pref set to hide, force to full - if (statusBarPref == 0) { - Zotero.Prefs.set("statusBarIcon", 2) - } - else if (statusBarPref == 1) { - icon.setAttribute("compact", true); - } - return; - } - } - Zotero.Prefs.set("statusBarIcon", 0); - } - - this.onUnload = function() { - window.removeEventListener("customizationchange", onToolbarChange, false); ZoteroPane.destroy(); } diff --git a/chrome/content/zotero/overlay.xul b/chrome/content/zotero/overlay.xul @@ -25,8 +25,6 @@ --> -<?xml-stylesheet href="chrome://zotero/skin/overlay.css" type="text/css"?> -<?xml-stylesheet href="chrome://zotero-platform/content/overlay.css" type="text/css"?> <?xul-overlay href="chrome://zotero/content/zoteroPane.xul"?> <?xul-overlay href="chrome://zotero/content/itemPane.xul"?> @@ -42,12 +40,6 @@ <popup id="contentAreaContextMenu"/> - <toolbarpalette id="BrowserToolbarPalette"> - <toolbarbutton id="zotero-toolbar-button" class="toolbarbutton-1" - label="Zotero" - oncommand="ZoteroOverlay.toggleDisplay();"/> - </toolbarpalette> - <toolbar id="zotero-toolbar" nowindowdrag="true"/> <vbox id="appcontent"> @@ -57,7 +49,9 @@ <stack id="zotero-pane-stack" persist="savedHeight" savedHeight="300" hidden="true"/> - <zoteroguidancepanel id="zotero-toolbar-button-guidance" about="toolbarButton" for="zotero-toolbar-button" position="bottomcenter topleft" delay="2000" foregroundonly="true" hidden="true"/> + <zoteroguidancepanel id="zotero-toolbar-button-guidance" about="toolbarButton" for="zotero-toolbar-main-button" + position="bottomcenter topleft" delay="2000" foregroundonly="true"/> + <zoteroguidancepanel id="zotero-status-image-guidance" about="saveIcon" for="zotero-toolbar-save-button" x="17"/> <!-- Annotation Toolbar --> <toolbar id="zotero-annotate-tb" crop="end" insertbefore="content" hidden="true"> @@ -70,17 +64,6 @@ </vbox> - <!-- Scrape Code --> - <hbox id="urlbar-icons"> - <popupset> - <menupopup id="zotero-status-image-context" onpopupshowing="Zotero_Browser.onStatusPopupShowing(event)"/> - </popupset> - <image src="chrome://zotero/skin/treeitem-book.png" id="zotero-status-image" - onclick="if(event.button === 0) Zotero_Browser.scrapeThisPage()" context="zotero-status-image-context" - position="1" hidden="true"/> - <zoteroguidancepanel id="zotero-status-image-guidance" about="saveIcon" for="zotero-status-image" x="8"/> - </hbox> - <menupopup id="menu_ToolsPopup"> <menuseparator id="zoteroSeparator" insertbefore="devToolsSeparator"/> <menuitem id="tools-zotero" insertbefore="devToolsSeparator" diff --git a/chrome/content/zotero/preferences/preferences.xul b/chrome/content/zotero/preferences/preferences.xul @@ -68,11 +68,6 @@ image="chrome://zotero/skin/prefs-styles.png" src="chrome://zotero/content/preferences/preferences_cite.xul"/> - <prefpane id="zotero-prefpane-keys" - label="&zotero.preferences.prefpane.keys;" - image="chrome://zotero/skin/prefs-keys.png" - src="chrome://zotero/content/preferences/preferences_keys.xul"/> - <prefpane id="zotero-prefpane-advanced" label="&zotero.preferences.prefpane.advanced;" image="chrome://zotero/skin/prefs-advanced.png" diff --git a/chrome/content/zotero/preferences/preferences_advanced.js b/chrome/content/zotero/preferences/preferences_advanced.js @@ -31,6 +31,7 @@ Zotero_Preferences.Advanced = { init: function () { Zotero_Preferences.Debug_Output.init(); + Zotero_Preferences.Keys.init(); }, revealDataDirectory: function () { @@ -817,3 +818,33 @@ Zotero_Preferences.Debug_Output = { } } }; + + +Zotero_Preferences.Keys = { + init: function () { + var rows = document.getElementById('zotero-prefpane-advanced-keys-tab').getElementsByTagName('row'); + for (var i=0; i<rows.length; i++) { + // Display the appropriate modifier keys for the platform + rows[i].firstChild.nextSibling.value = Zotero.isMac ? Zotero.getString('general.keys.cmdShift') : Zotero.getString('general.keys.ctrlShift'); + } + + var textboxes = document.getElementById('zotero-keys-rows').getElementsByTagName('textbox'); + for (let i=0; i<textboxes.length; i++) { + let textbox = textboxes[i]; + textbox.value = textbox.value.toUpperCase(); + // .value takes care of the initial value, and this takes care of direct pref changes + // while the window is open + textbox.setAttribute('onsyncfrompreference', 'return Zotero_Preferences.Keys.capitalizePref(this.id)'); + textbox.setAttribute('oninput', 'this.value = this.value.toUpperCase()'); + } + }, + + + capitalizePref: function (id) { + var elem = document.getElementById(id); + var pref = document.getElementById(elem.getAttribute('preference')); + if (pref.value) { + return pref.value.toUpperCase(); + } + } +}; diff --git a/chrome/content/zotero/preferences/preferences_advanced.xul b/chrome/content/zotero/preferences/preferences_advanced.xul @@ -38,12 +38,24 @@ <preference id="pref-debug-output-enableAfterRestart" name="extensions.zotero.debug.store" type="bool"/> <preference id="pref-openURL-resolver" name="extensions.zotero.openURL.resolver" type="string"/> <preference id="pref-openURL-version" name="extensions.zotero.openURL.version" type="string"/> + <preference id="pref-keys-openZotero" name="extensions.zotero.keys.openZotero" type="string"/> + <preference id="pref-keys-saveToZotero" name="extensions.zotero.keys.saveToZotero" type="string"/> + <preference id="pref-keys-toggleFullscreen" name="extensions.zotero.keys.toggleFullscreen" type="string"/> + <preference id="pref-keys-library" name="extensions.zotero.keys.library" type="string"/> + <preference id="pref-keys-quicksearch" name="extensions.zotero.keys.quicksearch" type="string"/> + <preference id="pref-keys-toggleTagSelector" name="extensions.zotero.keys.toggleTagSelector" type="string"/> + <preference id="pref-keys-newItem" name="extensions.zotero.keys.newItem" type="string"/> + <preference id="pref-keys-newNote" name="extensions.zotero.keys.newNote" type="string"/> + <preference id="pref-keys-importFromClipboard" name="extensions.zotero.keys.importFromClipboard" type="string"/> + <preference id="pref-keys-copySelectedItemCitationsToClipboard" name="extensions.zotero.keys.copySelectedItemCitationsToClipboard" type="string"/> + <preference id="pref-keys-copySelectedItemsToClipboard" name="extensions.zotero.keys.copySelectedItemsToClipboard" type="string"/> </preferences> <tabbox id="zotero-prefpane-advanced-tabs"> <tabs> <tab label="&zotero.preferences.prefpane.general;"/> <tab label="&zotero.preferences.advanced.filesAndFolders;"/> + <tab label="&zotero.preferences.advanced.keys;"/> </tabs> <tabpanels id="zotero-prefpane-advanced-tabpanels"> @@ -194,6 +206,75 @@ </hbox> </groupbox> </tabpanel> + + <tabpanel id="zotero-prefpane-advanced-keys-tab" orient="vertical"> + + <grid id="zotero-keys-grid"> + <columns> + <column flex="1"/> + <column/> + <column/> + </columns> + + <rows id="zotero-keys-rows"> + <row id="zotero-keys-new-item"> + <label value="&zotero.preferences.keys.newItem;" control="textbox-newItem"/> + <label/> + <textbox id="textbox-newItem" maxlength="1" size="1" preference="pref-keys-newItem"/> + </row> + + <row> + <label value="&zotero.preferences.keys.newNote;" control="textbox-newNote"/> + <label/> + <textbox id="textbox-newNote" maxlength="1" size="1" preference="pref-keys-newNote"/> + </row> + + <row> + <label value="&zotero.preferences.keys.importFromClipboard;" control="textbox-importFromClipboard"/> + <label/> + <textbox id="textbox-importFromClipboard" maxlength="1" size="1" preference="pref-keys-importFromClipboard"/> + </row> + + <row id="zotero-keys-focus-libraries-pane"> + <label value="&zotero.preferences.keys.focusLibrariesPane;" control="textbox-library"/> + <label/> + <textbox id="textbox-library" maxlength="1" size="1" preference="pref-keys-library"/> + </row> + + <row> + <label value="&zotero.preferences.keys.quicksearch;" control="textbox-quicksearch"/> + <label/> + <textbox id="textbox-quicksearch" maxlength="1" size="1" preference="pref-keys-quicksearch"/> + </row> + + <row> + <label value="&zotero.preferences.keys.copySelectedItemCitationsToClipboard;" control="textbox-copySelectedItemCitationsToClipboard"/> + <label/> + <textbox id="textbox-copySelectedItemCitationsToClipboard" maxlength="1" size="1" + preference="pref-keys-copySelectedItemCitationsToClipboard" + onchange="if (Zotero_Preferences.Export) { Zotero_Preferences.Export.updateQuickCopyInstructions(); }"/> + </row> + + <row> + <label value="&zotero.preferences.keys.copySelectedItemsToClipboard;" control="textbox-copySelectedItemsToClipboard"/> + <label/> + <textbox id="textbox-copySelectedItemsToClipboard" maxlength="1" size="1" + preference="pref-keys-copySelectedItemsToClipboard" + onchange="if (Zotero_Preferences.Export) { Zotero_Preferences.Export.updateQuickCopyInstructions(); }"/> + </row> + + <row> + <label value="&zotero.preferences.keys.toggleTagSelector;" control="textbox-toggleTagSelector"/> + <label/> + <textbox id="textbox-toggleTagSelector" maxlength="1" size="1" preference="pref-keys-toggleTagSelector"/> + </row> + </rows> + </grid> + + <label class="statusLine" value="&zotero.preferences.keys.changesTakeEffect;"/> + + <separator/> + </tabpanel> </tabpanels> </tabbox> diff --git a/chrome/content/zotero/preferences/preferences_advanced_firefox.xul b/chrome/content/zotero/preferences/preferences_advanced_firefox.xul @@ -45,6 +45,30 @@ insertbefore="zotero-prefpane-advanced-openbuttons"/> </groupbox> </tabpanel> + + <tabpanel id="zotero-prefpane-advanced-keys-tab"> + <grid id="zotero-keys-grid"> + <rows id="zotero-keys-rows"> + <row insertbefore="zotero-keys-new-item"> + <label value="&zotero.preferences.keys.openZotero;" control="key-textbox-openZotero"/> + <label/> + <textbox id="textbox-openZotero" maxlength="1" size="1" preference="pref-keys-openZotero"/> + </row> + + <row insertbefore="zotero-keys-new-item"> + <label value="&zotero.preferences.keys.toggleFullscreen;" control="textbox-toggleFullscreen"/> + <label/> + <textbox id="textbox-toggleFullscreen" maxlength="1" size="1" preference="pref-keys-toggleFullscreen"/> + </row> + + <row insertbefore="zotero-keys-new-item"> + <label value="&zotero.preferences.keys.saveToZotero;" control="key-textbox-saveToZotero"/> + <label/> + <textbox id="textbox-saveToZotero" maxlength="1" size="1" preference="pref-keys-saveToZotero"/> + </row> + </rows> + </grid> + </tabpanel> </tabpanels> </tabbox> </prefpane> diff --git a/chrome/content/zotero/preferences/preferences_general.js b/chrome/content/zotero/preferences/preferences_general.js @@ -35,32 +35,9 @@ Zotero_Preferences.General = { ); } - // Only show icon options for Firefox <29 - if (Zotero.platformMajorVersion < 29) { - let statusBarRow = document.getElementById('zotero-prefpane-general-statusBarIcon-row'); - if (statusBarRow) { - statusBarRow.hidden = false; - } - } - document.getElementById('noteFontSize').value = Zotero.Prefs.get('note.fontSize'); }, - /** - * Sets "Status bar icon" to "None" if Zotero is set to load in separate tab - */ - handleShowInPreferenceChange: function () { - var showInSeparateTab = document.getElementById("zotero-prefpane-general-showIn-separateTab"); - var showInAppTab = document.getElementById("zotero-prefpane-general-showIn-appTab"); - if(showInAppTab.selected) { - document.getElementById('statusBarIcon').selectedItem = document.getElementById('statusBarIcon-none'); - Zotero.Prefs.set("statusBarIcon", 0); - } else { - document.getElementById('statusBarIcon').selectedItem = document.getElementById('statusBarIcon-full'); - Zotero.Prefs.set("statusBarIcon", 2); - } - }, - updateTranslators: function () { Zotero.Schema.updateFromRepository(true) diff --git a/chrome/content/zotero/preferences/preferences_general_firefox.xul b/chrome/content/zotero/preferences/preferences_general_firefox.xul @@ -29,7 +29,6 @@ <prefpane id="zotero-prefpane-general"> <preferences id="zotero-prefpane-general-preferences"> <preference id="pref-showIn" name="extensions.zotero.showIn" type="int"/> - <preference id="pref-statusBarIcon" name="extensions.zotero.statusBarIcon" type="int"/> <preference id="pref-launchNonNativeFiles" name="extensions.zotero.launchNonNativeFiles" type="bool"/> <preference id="pref-parseEndNoteMIMETypes" name="extensions.zotero.parseEndNoteMIMETypes" @@ -42,22 +41,12 @@ <hbox align="center"> <label value="&zotero.preferences.showIn;" control="showAs"/> </hbox> - <radiogroup id="showIn" orient="horizontal" preference="pref-showIn" oncommand="Zotero_Preferences.General.handleShowInPreferenceChange()"> + <radiogroup id="showIn" orient="horizontal" preference="pref-showIn"> <radio id="zotero-prefpane-general-showIn-browserPane" label="&zotero.preferences.showIn.browserPane;" value="1"/> <radio id="zotero-prefpane-general-showIn-separateTab" label="&zotero.preferences.showIn.separateTab;" value="2"/> <radio id="zotero-prefpane-general-showIn-appTab" label="&zotero.preferences.showIn.appTab;" value="3"/> </radiogroup> </row> - <row position="2" id="zotero-prefpane-general-statusBarIcon-row" hidden="true"> - <hbox align="center"> - <label id="statusBarIcon-label" value="&zotero.preferences.statusBarIcon;" control="statusBarIcon"/> - </hbox> - <radiogroup id="statusBarIcon" orient="horizontal" preference="pref-statusBarIcon"> - <radio id="statusBarIcon-full" src="chrome://zotero/skin/zotero_status_bar.png" value="2"/> - <radio id="statusBarIcon-compact" src="chrome://zotero/skin/zotero_status_bar_compact.png" value="1"/> - <radio id="statusBarIcon-none" label="&zotero.preferences.statusBarIcon.none;" value="0"/> - </radiogroup> - </row> </rows> </grid> </groupbox> diff --git a/chrome/content/zotero/preferences/preferences_keys.js b/chrome/content/zotero/preferences/preferences_keys.js @@ -1,55 +0,0 @@ -/* - ***** BEGIN LICENSE BLOCK ***** - - Copyright © 2006–2013 Center for History and New Media - George Mason University, Fairfax, Virginia, USA - http://zotero.org - - This file is part of Zotero. - - Zotero is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Zotero is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Zotero. If not, see <http://www.gnu.org/licenses/>. - - ***** END LICENSE BLOCK ***** -*/ - -"use strict"; - -Zotero_Preferences.Keys = { - init: function () { - var rows = document.getElementById('zotero-prefpane-keys').getElementsByTagName('row'); - for (var i=0; i<rows.length; i++) { - // Display the appropriate modifier keys for the platform - rows[i].firstChild.nextSibling.value = Zotero.isMac ? Zotero.getString('general.keys.cmdShift') : Zotero.getString('general.keys.ctrlShift'); - } - - var textboxes = document.getElementById('zotero-keys-rows').getElementsByTagName('textbox'); - for (let i=0; i<textboxes.length; i++) { - let textbox = textboxes[i]; - textbox.value = textbox.value.toUpperCase(); - // .value takes care of the initial value, and this takes care of direct pref changes - // while the window is open - textbox.setAttribute('onsyncfrompreference', 'return Zotero_Preferences.Keys.capitalizePref(this.id)'); - textbox.setAttribute('oninput', 'this.value = this.value.toUpperCase()'); - } - }, - - - capitalizePref: function (id) { - var elem = document.getElementById(id); - var pref = document.getElementById(elem.getAttribute('preference')); - if (pref.value) { - return pref.value.toUpperCase(); - } - } -}; diff --git a/chrome/content/zotero/preferences/preferences_keys.xul b/chrome/content/zotero/preferences/preferences_keys.xul @@ -1,114 +0,0 @@ -<?xml version="1.0"?> -<!-- - ***** BEGIN LICENSE BLOCK ***** - - Copyright © 2006–2013 Center for History and New Media - George Mason University, Fairfax, Virginia, USA - http://zotero.org - - This file is part of Zotero. - - Zotero is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Zotero is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Zotero. If not, see <http://www.gnu.org/licenses/>. - - ***** END LICENSE BLOCK ***** ---> -<!DOCTYPE prefwindow SYSTEM "chrome://zotero/locale/preferences.dtd"> - -<overlay xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> - <prefpane id="zotero-prefpane-keys" - onpaneload="Zotero_Preferences.Keys.init()" - helpTopic="shortcut_keys"> - <preferences> - <preference id="pref-keys-openZotero" name="extensions.zotero.keys.openZotero" type="string"/> - <preference id="pref-keys-saveToZotero" name="extensions.zotero.keys.saveToZotero" type="string"/> - <preference id="pref-keys-toggleFullscreen" name="extensions.zotero.keys.toggleFullscreen" type="string"/> - <preference id="pref-keys-library" name="extensions.zotero.keys.library" type="string"/> - <preference id="pref-keys-quicksearch" name="extensions.zotero.keys.quicksearch" type="string"/> - <preference id="pref-keys-toggleTagSelector" name="extensions.zotero.keys.toggleTagSelector" type="string"/> - <preference id="pref-keys-newItem" name="extensions.zotero.keys.newItem" type="string"/> - <preference id="pref-keys-newNote" name="extensions.zotero.keys.newNote" type="string"/> - <preference id="pref-keys-importFromClipboard" name="extensions.zotero.keys.importFromClipboard" type="string"/> - <preference id="pref-keys-copySelectedItemCitationsToClipboard" name="extensions.zotero.keys.copySelectedItemCitationsToClipboard" type="string"/> - <preference id="pref-keys-copySelectedItemsToClipboard" name="extensions.zotero.keys.copySelectedItemsToClipboard" type="string"/> - </preferences> - - <grid id="zotero-keys-grid"> - <columns> - <column flex="1"/> - <column/> - <column/> - </columns> - - <rows id="zotero-keys-rows"> - <row id="zotero-keys-new-item"> - <label value="&zotero.preferences.keys.newItem;" control="textbox-newItem"/> - <label/> - <textbox id="textbox-newItem" maxlength="1" size="1" preference="pref-keys-newItem"/> - </row> - - <row> - <label value="&zotero.preferences.keys.newNote;" control="textbox-newNote"/> - <label/> - <textbox id="textbox-newNote" maxlength="1" size="1" preference="pref-keys-newNote"/> - </row> - - <row> - <label value="&zotero.preferences.keys.importFromClipboard;" control="textbox-importFromClipboard"/> - <label/> - <textbox id="textbox-importFromClipboard" maxlength="1" size="1" preference="pref-keys-importFromClipboard"/> - </row> - - <row id="zotero-keys-focus-libraries-pane"> - <label value="&zotero.preferences.keys.focusLibrariesPane;" control="textbox-library"/> - <label/> - <textbox id="textbox-library" maxlength="1" size="1" preference="pref-keys-library"/> - </row> - - <row> - <label value="&zotero.preferences.keys.quicksearch;" control="textbox-quicksearch"/> - <label/> - <textbox id="textbox-quicksearch" maxlength="1" size="1" preference="pref-keys-quicksearch"/> - </row> - - <row> - <label value="&zotero.preferences.keys.copySelectedItemCitationsToClipboard;" control="textbox-copySelectedItemCitationsToClipboard"/> - <label/> - <textbox id="textbox-copySelectedItemCitationsToClipboard" maxlength="1" size="1" - preference="pref-keys-copySelectedItemCitationsToClipboard" - onchange="if (Zotero_Preferences.Export) { Zotero_Preferences.Export.updateQuickCopyInstructions(); }"/> - </row> - - <row> - <label value="&zotero.preferences.keys.copySelectedItemsToClipboard;" control="textbox-copySelectedItemsToClipboard"/> - <label/> - <textbox id="textbox-copySelectedItemsToClipboard" maxlength="1" size="1" - preference="pref-keys-copySelectedItemsToClipboard" - onchange="if (Zotero_Preferences.Export) { Zotero_Preferences.Export.updateQuickCopyInstructions(); }"/> - </row> - - <row> - <label value="&zotero.preferences.keys.toggleTagSelector;" control="textbox-toggleTagSelector"/> - <label/> - <textbox id="textbox-toggleTagSelector" maxlength="1" size="1" preference="pref-keys-toggleTagSelector"/> - </row> - </rows> - </grid> - - <label class="statusLine" value="&zotero.preferences.keys.changesTakeEffect;"/> - - <separator/> - </prefpane> - - <script src="preferences_keys.js" type="application/javascript;version=1.8"/> -</overlay> diff --git a/chrome/content/zotero/preferences/preferences_keys_firefox.xul b/chrome/content/zotero/preferences/preferences_keys_firefox.xul @@ -1,52 +0,0 @@ -<?xml version="1.0"?> -<!-- - ***** BEGIN LICENSE BLOCK ***** - - Copyright © 2006–2013 Center for History and New Media - George Mason University, Fairfax, Virginia, USA - http://zotero.org - - This file is part of Zotero. - - Zotero is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Zotero is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with Zotero. If not, see <http://www.gnu.org/licenses/>. - - ***** END LICENSE BLOCK ***** ---> -<!DOCTYPE prefwindow SYSTEM "chrome://zotero/locale/preferences.dtd"> - -<overlay xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> - <prefpane id="zotero-prefpane-keys"> - <grid id="zotero-keys-grid"> - <rows id="zotero-keys-rows"> - <row position="1"> - <label value="&zotero.preferences.keys.openZotero;" control="key-textbox-openZotero"/> - <label/> - <textbox id="textbox-openZotero" maxlength="1" size="1" preference="pref-keys-openZotero"/> - </row> - - <row position="2"> - <label value="&zotero.preferences.keys.toggleFullscreen;" control="textbox-toggleFullscreen"/> - <label/> - <textbox id="textbox-toggleFullscreen" maxlength="1" size="1" preference="pref-keys-toggleFullscreen"/> - </row> - - <row insertbefore="zotero-keys-new-item"> - <label value="&zotero.preferences.keys.saveToZotero;" control="key-textbox-saveToZotero"/> - <label/> - <textbox id="textbox-saveToZotero" maxlength="1" size="1" preference="pref-keys-saveToZotero"/> - </row> - </rows> - </grid> - </prefpane> -</overlay> diff --git a/chrome/content/zotero/preferences/preferences_search.js b/chrome/content/zotero/preferences/preferences_search.js @@ -392,13 +392,7 @@ Zotero_Preferences.Search = { wbp.progressListener = progressListener; Zotero.debug("Saving " + uri.spec + " to " + fileURL.spec); - try { - wbp.saveURI(uri, null, null, null, null, fileURL); - } catch(e if e.name === "NS_ERROR_XPC_NOT_ENOUGH_ARGS") { - // https://bugzilla.mozilla.org/show_bug.cgi?id=794602 - // XXX Always use when we no longer support Firefox < 18 - wbp.saveURI(uri, null, null, null, null, fileURL, null); - } + Zotero.Utilities.Internal.saveURI(wbp, uri, fileURL); }, diff --git a/chrome/content/zotero/recognizePDF.js b/chrome/content/zotero/recognizePDF.js @@ -70,7 +70,7 @@ var Zotero_RecognizePDF = new function() { * @return {Promise} A promise resolved when PDF metadata has been retrieved */ this.recognize = function(file, libraryID, stopCheckCallback) { - const MAX_PAGES = 7; + const MAX_PAGES = 15; var me = this; return _extractText(file, MAX_PAGES).then(function(lines) { diff --git a/chrome/content/zotero/tools/csledit.js b/chrome/content/zotero/tools/csledit.js @@ -0,0 +1,209 @@ +/* + ***** BEGIN LICENSE BLOCK ***** + + Copyright © 2009 Center for History and New Media + George Mason University, Fairfax, Virginia, USA + http://zotero.org + + This file is part of Zotero. + + Zotero is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Zotero is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with Zotero. If not, see <http://www.gnu.org/licenses/>. + + ***** END LICENSE BLOCK ***** +*/ + +var Zotero_CSL_Editor = new function() { + this.init = init; + this.handleKeyPress = handleKeyPress; + this.loadCSL = loadCSL; + this.generateBibliography = generateBibliography; + this.refresh = refresh; + function init() { + var cslList = document.getElementById('zotero-csl-list'); + if (cslList.getAttribute('initialized') == 'true') { + if (currentStyle) { + loadCSL(currentStyle); + refresh(); + } + return; + } + + var rawDefaultStyle = Zotero.Prefs.get('export.quickCopy.setting'); + var defaultStyle = Zotero.QuickCopy.stripContentType(rawDefaultStyle); + + var styles = Zotero.Styles.getAll(); + var currentStyle = null; + var listPos = 0; + for each(var style in styles) { + if (style.source) { + continue; + } + var item = cslList.appendItem(style.title, style.styleID); + if (!currentStyle || defaultStyle == ('bibliography=' + style.styleID)) { + currentStyle = style.styleID; + cslList.selectedIndex = listPos; + } + listPos += 1; + } + if (currentStyle) { + loadCSL(currentStyle); + refresh(); + } + var pageList = document.getElementById('zotero-csl-page-type'); + var locators = Zotero.Cite.labels; + for each(var type in locators) { + var locator = type; + locator = locator[0].toUpperCase()+locator.substr(1); + pageList.appendItem(locator, type); + } + + pageList.selectedIndex = 0; + cslList.setAttribute('initialized', true); + } + function refresh() { + var editor = document.getElementById('zotero-csl-editor'); + generateBibliography(editor.value); + + } + this.save = function() { + var editor = document.getElementById('zotero-csl-editor'); + var style = editor.value; + const nsIFilePicker = Components.interfaces.nsIFilePicker; + var fp = Components.classes["@mozilla.org/filepicker;1"] + .createInstance(nsIFilePicker); + fp.init(window, Zotero.getString('styles.editor.save'), nsIFilePicker.modeSave); + fp.appendFilter("Citation Style Language", "*.csl"); + //get the filename from the id; we could consider doing even more here like creating the id from filename. + var parser = new DOMParser(); + var doc = parser.parseFromString(style, 'text/xml'); + var filename = doc.getElementsByTagName("id"); + if (filename) { + filename = filename[0].textContent; + fp.defaultString = filename.replace(/.+\//, "") + ".csl"; + } + else { + fp.defaultString = "untitled.csl"; + } + var rv = fp.show(); + if (rv == nsIFilePicker.returnOK || rv == nsIFilePicker.returnReplace) { + var outputFile = fp.file; + Zotero.File.putContents(outputFile, style); + } + }; + + function handleKeyPress(event) { + if (event.keyCode == 9 && + (!event.shiftKey && !event.metaKey && !event.altKey && !event.ctrlKey)) { + _insertText("\t"); + event.preventDefault(); + } + } + + + function loadCSL(cslID) { + var editor = document.getElementById('zotero-csl-editor'); + var style = Zotero.Styles.get(cslID); + editor.value = Zotero.File.getContents(style.file); + editor.cslID = cslID; + editor.doCommand(); + document.getElementById('zotero-csl-list').value = cslID; + } + + + function generateBibliography(str) { + var editor = document.getElementById('zotero-csl-editor') + var iframe = document.getElementById('zotero-csl-preview-box'); + + var items = Zotero.getActiveZoteroPane().getSelectedItems(); + if (items.length == 0) { + iframe.contentDocument.documentElement.innerHTML = '<html><head><title></title></head><body><p style="color: red">' + Zotero.getString('styles.editor.warning.noItems') + '</p></body></html>'; + return; + } + var styleObject, styleEngine; + try { + styleObject = new Zotero.Style(str); + styleEngine = styleObject.getCiteProc(); + } catch(e) { + iframe.contentDocument.documentElement.innerHTML = '<div>' + Zotero.getString('styles.editor.warning.parseError') + '</div><div>'+e+'</div>'; + throw e; + } + + var itemIds = [items[i].id for (i in items)]; + + styleEngine.updateItems(itemIds); + + // Generate multiple citations + var citation = {}; + citation.citationItems = []; + citation.properties = {}; + citation.properties.noteIndex = 1; + for (var i = 0, ilen = items.length; i < ilen; i += 1) { + citation.citationItems.push({id:itemIds[i]}); + } + + // Generate single citations + var author = document.getElementById("preview-suppress-author").checked; + var search = document.getElementById('preview-pages'); + var loc = document.getElementById('zotero-csl-page-type'); + var pos = document.getElementById('zotero-ref-position').selectedItem.value; + var citations = '<h3>' + Zotero.getString('styles.editor.output.individualCitations') + '</h3>'; + for (var i=0; i<citation.citationItems.length; i++) { + citation.citationItems[i]['suppress-author'] = author; + if (search.value !== '') { + citation.citationItems[i].locator = search.value; + citation.citationItems[i].label = loc.selectedItem.value; + } + if (pos == 4) { + //near note is a subsequent citation with near note set to true; + citation.citationItems[i].position = 1; + citation.citationItems[i]["near-note"] = true; + } + else { + citation.citationItems[i].position = parseInt(pos, 10); + } + var subcitation = [citation.citationItems[i]]; + citations += styleEngine.makeCitationCluster(subcitation) + '<br />'; + } + + try { + var multCitations = '<hr><h3>' + Zotero.getString('styles.editor.output.singleCitation') + '</h3>' + + styleEngine.previewCitationCluster(citation, [], [], "html"); + + // Generate bibliography + styleEngine.updateItems(itemIds); + var bibliography = '<hr/><h3>' + Zotero.getString('styles.bibliography') + '</h3>' + + Zotero.Cite.makeFormattedBibliography(styleEngine, "html"); + + iframe.contentDocument.documentElement.innerHTML = + '<div>' + citations + multCitations + bibliography + '</div>'; + } catch(e) { + iframe.contentDocument.documentElement.innerHTML = '<div>' + Zotero.getString('styles.editor.warning.renderError') + '</div><div>'+e+'</div>'; + throw e; + } + } + + + // From http://kb.mozillazine.org/Inserting_text_at_cursor + function _insertText(text) { + var command = "cmd_insertText"; + var controller = document.commandDispatcher.getControllerForCommand(command); + if (controller && controller.isCommandEnabled(command)) { + controller = controller.QueryInterface(Components.interfaces.nsICommandController); + var params = Components.classes["@mozilla.org/embedcomp/command-params;1"]; + params = params.createInstance(Components.interfaces.nsICommandParams); + params.setStringValue("state_data", "\t"); + controller.doCommandWithParams(command, params); + } + } +}(); diff --git a/chrome/content/zotero/tools/csledit.xul b/chrome/content/zotero/tools/csledit.xul @@ -26,241 +26,47 @@ <?xml-stylesheet href="chrome://global/skin/global.css"?> <?xml-stylesheet href="chrome://zotero/skin/zotero.css" type="text/css"?> +<!DOCTYPE window [ + <!ENTITY % csleditDTD SYSTEM "chrome://zotero/locale/csledit.dtd"> %csleditDTD; + <!ENTITY % zoteroDTD SYSTEM "chrome://zotero/locale/zotero.dtd"> %zoteroDTD; +]> + <window id="csl-edit" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" onload="Zotero_CSL_Editor.init();" - title="Zotero Reference Test pane"> + title="&styles.editor;"> <script src="chrome://zotero/content/include.js"/> - - <script> - <![CDATA[ - var Zotero_CSL_Editor = new function() { - this.init = init; - this.handleKeyPress = handleKeyPress; - this.loadCSL = loadCSL; - this.generateBibliography = generateBibliography; - this.refresh = refresh; - function init() { - var cslList = document.getElementById('zotero-csl-list'); - if (cslList.getAttribute('initialized') == 'true') { - if (currentStyle) { - loadCSL(currentStyle); - refresh(); - } - return; - } - - var rawDefaultStyle = Zotero.Prefs.get('export.quickCopy.setting'); - var defaultStyle = Zotero.QuickCopy.stripContentType(rawDefaultStyle); - - var styles = Zotero.Styles.getAll(); - var currentStyle = null; - var listPos = 0; - for each(var style in styles) { - if (style.source) { - continue; - } - var item = cslList.appendItem(style.title, style.styleID); - if (!currentStyle || defaultStyle == ('bibliography=' + style.styleID)) { - currentStyle = style.styleID; - cslList.selectedIndex = listPos; - } - listPos += 1; - } - if (currentStyle) { - loadCSL(currentStyle); - refresh(); - } - var pageList = document.getElementById('zotero-csl-page-type'); - var locators = Zotero.Cite.labels; - for each(var type in locators) { - var locator = type; - locator = locator[0].toUpperCase()+locator.substr(1); - pageList.appendItem(locator, type); - } - - pageList.selectedIndex = 0; - cslList.setAttribute('initialized', true) - } - function refresh() { - var editor = document.getElementById('zotero-csl-editor') - generateBibliography(editor.value); - - } - this.save = function() { - var editor = document.getElementById('zotero-csl-editor') - var style = editor.value; - const nsIFilePicker = Components.interfaces.nsIFilePicker; - var fp = Components.classes["@mozilla.org/filepicker;1"] - .createInstance(nsIFilePicker); - fp.init(window, "Save Citation Style", nsIFilePicker.modeSave); - fp.appendFilter("Citation Style Language", "*.csl"); - //get the filename from the id; we could consider doing even more here like creating the id from filename. - var parser = new DOMParser(); - var doc = parser.parseFromString(style, 'text/xml'); - var filename = doc.getElementsByTagName("id"); - if (filename) { - filename = filename[0].textContent; - fp.defaultString = filename.replace(/.+\//, "") + ".csl"; - } - else { - fp.defaultString = "untitled.csl"; - } - var rv = fp.show(); - if (rv == nsIFilePicker.returnOK || rv == nsIFilePicker.returnReplace) { - var outputFile = fp.file; - Zotero.File.putContents(outputFile, style); - } - } - - function handleKeyPress(event) { - if (event.keyCode == 9 && - (!event.shiftKey && !event.metaKey && !event.altKey && !event.ctrlKey)) { - _insertText("\t"); - event.preventDefault(); - } - } - - - function loadCSL(cslID) { - var editor = document.getElementById('zotero-csl-editor') - var style = Zotero.Styles.get(cslID); - editor.value = Zotero.File.getContents(style.file); - editor.cslID = cslID; - editor.doCommand(); - document.getElementById('zotero-csl-list').value = cslID; - } - - - function generateBibliography(str) { - var editor = document.getElementById('zotero-csl-editor') - var iframe = document.getElementById('zotero-csl-preview-box'); - - var items = Zotero.getActiveZoteroPane().getSelectedItems(); - if (items.length == 0) { - iframe.contentDocument.documentElement.innerHTML = '<html><head><title></title></head><body><p style="color: red">No references selected in Zotero.</p></body></html>'; - return; - } - var styleObject, styleEngine; - if (str.indexOf("<defaults") != -1) { - iframe.contentDocument.documentElement.innerHTML = - '<div>' - + "Old-style CSLs are no longer supported." - + '</div>'; - return; - } - else { - try { - styleObject = new Zotero.Style(str); - styleEngine = styleObject.getCiteProc(); - } catch(e) { - iframe.contentDocument.documentElement.innerHTML = '<div>Error parsing '+ - 'style: </div><div>'+e+'</div>'; - throw e; - } - } - - var itemIds = [items[i].id for (i in items)]; - - styleEngine.updateItems(itemIds); - - // Generate multiple citations - var citation = {}; - citation.citationItems = []; - citation.properties = {}; - citation.properties.noteIndex = 1; - for (var i = 0, ilen = items.length; i < ilen; i += 1) { - citation.citationItems.push({id:itemIds[i]}); - } - - // Generate single citations - var author = document.getElementById("preview-suppress-author").checked; - var search = document.getElementById('preview-pages'); - var loc = document.getElementById('zotero-csl-page-type'); - var pos = document.getElementById('zotero-ref-position').selectedItem.value; - var citations = '<h1>Single Citations</h1>'; - for (var i=0; i<citation.citationItems.length; i++) { - citation.citationItems[i]['suppress-author'] = author; - if (search.value != '') { - citation.citationItems[i].locator = search.value; - citation.citationItems[i].label = loc.selectedItem.value; - } - if (pos == 4) { - //near note is a subsequent citation with near note set to true; - citation.citationItems[i].position = 1; - citation.citationItems[i]["near-note"] = true; - } - else { - citation.citationItems[i].position = parseInt(pos, 10); - } - var subcitation = [citation.citationItems[i]]; - citations += styleEngine.makeCitationCluster(subcitation) + '<br />'; - } - - try { - var multCitations = '<hr><h1>Multi Citations <span style="font-size:smaller;">(all with position "first")</span></h1>' + - styleEngine.previewCitationCluster(citation, [], [], "html"); - - // Generate bibliography - styleEngine.updateItems(itemIds); - var bibliography = '<hr/><h1>Bibliography</h1>' + - Zotero.Cite.makeFormattedBibliography(styleEngine, "html"); - - iframe.contentDocument.documentElement.innerHTML = - '<div style="white-space: pre-wrap">' - + citations + multCitations + bibliography - + '</div>'; - } catch(e) { - iframe.contentDocument.documentElement.innerHTML = '<div>Error generating citations '+ - 'and bibliography: </div><div>'+e+'</div>'; - throw e; - } - } - - - // From http://kb.mozillazine.org/Inserting_text_at_cursor - function _insertText(text) { - var command = "cmd_insertText"; - var controller = document.commandDispatcher.getControllerForCommand(command); - if (controller && controller.isCommandEnabled(command)) { - controller = controller.QueryInterface(Components.interfaces.nsICommandController); - var params = Components.classes["@mozilla.org/embedcomp/command-params;1"]; - params = params.createInstance(Components.interfaces.nsICommandParams); - params.setStringValue("state_data", "\t"); - controller.doCommandWithParams(command, params); - } - } - } - ]]> - </script> + <script src="csledit.js"/> <vbox flex="1"> <hbox align="center"> - <button id="preview-refresh-button" label="Refresh" oncommand="Zotero_CSL_Editor.refresh()"/> - <button id="zotero-csl-save" label="Save" oncommand="Zotero_CSL_Editor.save()"/> - <menulist id="zotero-csl-page-type" style="min-height: 1.6em; min-width: 50px" oncommand="Zotero_CSL_Editor.refresh()" /> - <label value=":" /> - <textbox size="5" id="preview-pages" type="timed" timeout="250" oncommand="Zotero_CSL_Editor.refresh()"/> - <checkbox oncommand="Zotero_CSL_Editor.refresh()" id="preview-suppress-author" label="Suppress author" /> - <label value="Citation is:" /> - <menulist id="zotero-ref-position" oncommand="Zotero_CSL_Editor.refresh()"> - <menupopup> - <menuitem label="First" value="0"/> - <menuitem label="Subsequent" value="1"/> - <menuitem label="Ibid" value="2"/> - <menuitem label="Ibid+Locator" value="3"/> - <menuitem label="Near Note" value="4"/> - </menupopup> - </menulist> - <menulist id="zotero-csl-list" style="min-height: 1.6em; min-width: 100px" initialized="false" flex="1" oncommand="Zotero_CSL_Editor.loadCSL(this.selectedItem.value)"/> + <button id="preview-refresh-button" label="&zotero.general.refresh;" oncommand="Zotero_CSL_Editor.refresh()"/> + <button id="zotero-csl-save" label="&zotero.general.saveAs;" oncommand="Zotero_CSL_Editor.save()"/> + <menulist id="zotero-csl-page-type" style="min-height: 1.6em; min-width: 50px" oncommand="Zotero_CSL_Editor.refresh()" /> + <label value=":" /> + <textbox size="5" id="preview-pages" type="timed" timeout="250" oncommand="Zotero_CSL_Editor.refresh()"/> + <checkbox oncommand="Zotero_CSL_Editor.refresh()" id="preview-suppress-author" label="&styles.editor.suppressAuthor;" /> + <label value="&styles.editor.citePosition;" /> + <menulist id="zotero-ref-position" oncommand="Zotero_CSL_Editor.refresh()"> + <menupopup> + <menuitem label="first" value="0"/> + <menuitem label="subsequent" value="1"/> + <menuitem label="ibid" value="2"/> + <menuitem label="ibid-with-locator" value="3"/> + <menuitem label="near-note" value="4"/> + </menupopup> + </menulist> + <menulist id="zotero-csl-list" style="min-height: 1.6em; min-width: 100px" initialized="false" flex="1" oncommand="Zotero_CSL_Editor.loadCSL(this.selectedItem.value)"/> </hbox> <textbox id="zotero-csl-editor" type="timed" timeout="250" multiline="true" flex="1" onkeypress="Zotero_CSL_Editor.handleKeyPress(event)" oncommand="document.getElementById('zotero-csl-list').selectedIndex = -1; Zotero_CSL_Editor.generateBibliography(this.value)"/> - <splitter/> + <splitter id="csledit-splitter" collapse="before" persist="state"> + <grippy/> + </splitter> <iframe id="zotero-csl-preview-box" flex="1" style="padding: 0 1em;background:white" overflow="auto" type="content"/> </vbox> diff --git a/chrome/content/zotero/tools/cslpreview.js b/chrome/content/zotero/tools/cslpreview.js @@ -0,0 +1,107 @@ +/* + ***** BEGIN LICENSE BLOCK ***** + + Copyright © 2009 Center for History and New Media + George Mason University, Fairfax, Virginia, USA + http://zotero.org + + This file is part of Zotero. + + Zotero is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Zotero is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with Zotero. If not, see <http://www.gnu.org/licenses/>. + + ***** END LICENSE BLOCK ***** + Contributed by Julian Onions +*/ + +var Zotero_CSL_Preview = new function() { + this.init = init; + this.refresh = refresh; + this.generateBibliography = generateBibliography; + + function init() { + //refresh(); + + var iframe = document.getElementById('zotero-csl-preview-box'); + iframe.contentDocument.documentElement.innerHTML = '<html><head><title></title></head><body><p>' + Zotero.getString('styles.preview.instructions') + '</p></body></html>'; + } + function refresh() { + var iframe = document.getElementById('zotero-csl-preview-box'); + var items = Zotero.getActiveZoteroPane().getSelectedItems(); + if (items.length === 0) { + iframe.contentDocument.documentElement.innerHTML = '<html><head><title></title></head><body><p style="color: red">' + Zotero.getString('styles.editor.warning.noItems') + '</p></body></html>'; + return; + } + var progressWin = new Zotero.ProgressWindow(); + // XXX needs its own string really! + progressWin.changeHeadline(Zotero.getString("pane.items.menu.createBib.multiple")); + var icon = 'chrome://zotero/skin/treeitem-attachment-file.png'; + progressWin.addLines(document.title, icon); + progressWin.show(); + progressWin.startCloseTimer(); + var f = function() { + var styles = Zotero.Styles.getAll(); + // XXX needs its own string really for the title! + var str = '<html><head><title></title></head><body>'; + for each(var style in styles) { + if (style.source) { + continue; + } + Zotero.debug("Generate Bib for " + style.title); + var cite = generateBibliography(style); + if (cite) { + str += '<h3>' + style.title + '</h3>'; + str += cite; + str += '<hr>'; + } + } + + str += '</body></html>'; + iframe.contentDocument.documentElement.innerHTML = str; + }; + // Give progress window time to appear + setTimeout(f, 100); + } + + function generateBibliography(style) { + var iframe = document.getElementById('zotero-csl-preview-box'); + + var items = Zotero.getActiveZoteroPane().getSelectedItems(); + if (items.length === 0) { + return ''; + } + + var citationFormat = document.getElementById("citation-format").selectedItem.value; + if (citationFormat != "all" && citationFormat != style.categories) { + Zotero.debug("CSL IGNORE: citation format is " + style.categories); + return ''; + } + var styleEngine = style.getCiteProc(); + + // Generate multiple citations + var citations = styleEngine.previewCitationCluster( + {"citationItems":[{"id":item.id} for each(item in items)], "properties":{}}, + [], [], "html"); + + // Generate bibliography + var bibliography = ''; + if(style.hasBibliography) { + styleEngine.updateItems([item.id for each(item in items)]); + bibliography = Zotero.Cite.makeFormattedBibliography(styleEngine, "html"); + } + + return '<p>' + citations + '</p>' + bibliography; + } + + +}(); diff --git a/chrome/content/zotero/tools/cslpreview.xul b/chrome/content/zotero/tools/cslpreview.xul @@ -27,120 +27,37 @@ <?xml-stylesheet href="chrome://global/skin/global.css"?> <?xml-stylesheet href="chrome://zotero/skin/zotero.css" type="text/css"?> +<!DOCTYPE window [ + <!ENTITY % cslpreviewDTD SYSTEM "chrome://zotero/locale/cslpreview.dtd"> %cslpreviewDTD; + <!ENTITY % zoteroDTD SYSTEM "chrome://zotero/locale/zotero.dtd"> %zoteroDTD; +]> + <window id="csl-preview" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" onload="Zotero_CSL_Preview.init();" - title="Zotero Preview pane"> + title="&styles.preview;"> <script src="chrome://zotero/content/include.js"/> - - <script> - <![CDATA[ - var Zotero_CSL_Preview = new function() { - this.init = init; - this.refresh = refresh; - this.generateBibliography = generateBibliography; + <script src="cslpreview.js"/> - function init() { - //refresh(); - - var iframe = document.getElementById('zotero-csl-preview-box'); - iframe.contentDocument.documentElement.innerHTML = '<html><head><title></title></head><body><p>Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles.</p></body></html>'; - } - function refresh() { - var iframe = document.getElementById('zotero-csl-preview-box'); - var items = Zotero.getActiveZoteroPane().getSelectedItems(); - if (items.length === 0) { - iframe.contentDocument.documentElement.innerHTML = '<html><head><title></title></head><body><p style="color: red">No items selected in Zotero.</p></body></html>'; - return; - } - var progressWin = new Zotero.ProgressWindow(); - // XXX needs its own string really! - progressWin.changeHeadline(Zotero.getString("pane.items.menu.createBib.multiple")); - var icon = 'chrome://zotero/skin/treeitem-attachment-file.png'; - progressWin.addLines(document.title, icon); - progressWin.show(); - progressWin.startCloseTimer(); - var f = function() { - var styles = Zotero.Styles.getAll(); - // XXX needs its own string really for the title! - var str = '<html><head><title></title></head><body>'; - for each(var style in styles) { - if (style.source) { - continue; - } - Zotero.debug("Generate Bib for " + style.title); - var cite = generateBibliography(style); - if (cite) { - str += '<h3>' + style.title + '</h3>'; - str += cite; - str += '<hr>'; - } - } - - str += '</body></html>'; - iframe.contentDocument.documentElement.innerHTML = str; - }; - // Give progress window time to appear - setTimeout(f, 100); - } - - function generateBibliography(style) { - var iframe = document.getElementById('zotero-csl-preview-box'); - - var items = Zotero.getActiveZoteroPane().getSelectedItems(); - if (items.length === 0) { - return ''; - } - - var citationFormat = document.getElementById("citation-format").selectedItem.value; - if (citationFormat != "all" && citationFormat != style.categories) { - Zotero.debug("CSL IGNORE: citation format is " + style.categories); - return ''; - } - var styleEngine = style.getCiteProc(); - - // Generate multiple citations - var citations = styleEngine.previewCitationCluster( - {"citationItems":[{"id":item.id} for each(item in items)], "properties":{}}, - [], [], "html"); - - // Generate bibliography - var bibliography = ''; - if(style.hasBibliography) { - styleEngine.updateItems([item.id for each(item in items)]); - bibliography = Zotero.Cite.makeFormattedBibliography(styleEngine, "html"); - } - - return '<p>' + citations + '</p>' + bibliography; - } - - - }(); - ]]> - </script> - <!-- NEEDS LOCALISING --> <vbox flex="1"> - <hbox > <hbox align="center"> - <button id="preview-refresh-button" label="Refresh" oncommand="Zotero_CSL_Preview.refresh()"/> - <groupbox orient="horizontal" align="center"> - <label value="Citation format:" /> - <menulist id="citation-format" oncommand="Zotero_CSL_Preview.refresh()"> - <menupopup> - <menuitem label="all" value="all"/> - <menuitem label="author" value="author"/> - <menuitem label="author-date" value="author-date"/> - <menuitem label="label" value="label"/> - <menuitem label="note" value="note"/> - <menuitem label="numeric" value="numeric"/> - </menupopup> - </menulist> - </groupbox> + <button id="preview-refresh-button" label="&zotero.general.refresh;" oncommand="Zotero_CSL_Preview.refresh()"/> + + <label value="&styles.preview.citationFormat;" /> + <menulist id="citation-format" oncommand="Zotero_CSL_Preview.refresh()"> + <menupopup> + <menuitem value="all" label="&styles.preview.citationFormat.all;"/> + <menuitem value="author" label="&styles.preview.citationFormat.author;"/> + <menuitem value="author-date" label="&styles.preview.citationFormat.authorDate;"/> + <menuitem value="label" label="&styles.preview.citationFormat.label;"/> + <menuitem value="note" label="&styles.preview.citationFormat.note;"/> + <menuitem value="numeric" label="&styles.preview.citationFormat.numeric;"/> + </menupopup> + </menulist> </hbox> - </hbox> - <iframe id="zotero-csl-preview-box" flex="1" style="padding: 0 1em; background:white;" overflow="auto" type="content"/> + <iframe id="zotero-csl-preview-box" flex="1" style="padding: 0 1em; background:white;" overflow="auto" type="content"/> </vbox> </window> diff --git a/chrome/content/zotero/tools/testTranslators/translatorTester.js b/chrome/content/zotero/tools/testTranslators/translatorTester.js @@ -196,6 +196,8 @@ Zotero_TranslatorTester = function(translator, type, debugCallback) { } }; +Zotero_TranslatorTester.DEFER_DELAY = 30000; // Delay for deferred tests + /** * Removes document objects, which contain cyclic references, and other fields to be ignored from items * @param {Object} Item, in the format returned by Zotero.Item.serialize() @@ -258,7 +260,9 @@ Zotero_TranslatorTester._sanitizeItem = function(item, testItem, keepValidFields if(!keepValidFields && "accessDate" in item) delete item.accessDate; //sort tags, if they're still there - if(item.tags && typeof item.tags === "object" && "sort" in item.tags) item.tags.sort(); + if(item.tags && typeof item.tags === "object" && "sort" in item.tags) { + item.tags = Zotero.Utilities.arrayUnique(item.tags).sort(); + } return item; }; @@ -318,7 +322,7 @@ Zotero_TranslatorTester.prototype._runTestsRecursively = function(testDoneCallba var testNumber = this.tests.length-this.pending.length; var me = this; - this._debug(this, "\nTranslatorTester: Running "+this.translator.label+" Test "+testNumber); + this._debug(this, "TranslatorTester: Running "+this.translator.label+" Test "+testNumber); var executedCallback = false; var callback = function(obj, test, status, message) { @@ -375,7 +379,14 @@ Zotero_TranslatorTester.prototype.fetchPageAndRunTest = function(test, testDoneC var hiddenBrowser = Zotero.HTTP.processDocuments(test.url, function(doc) { if(test.defer) { - Zotero.setTimeout(function() { runTest(doc) }, 30000, true); + me._debug(this, "TranslatorTesting: Waiting " + + (Zotero_TranslatorTester.DEFER_DELAY/1000) + + " second(s) for page content to settle" + ); + Zotero.setTimeout( + function() {runTest(hiddenBrowser.contentDocument) }, + Zotero_TranslatorTester.DEFER_DELAY, true + ); } else { runTest(doc); } @@ -386,6 +397,8 @@ Zotero_TranslatorTester.prototype.fetchPageAndRunTest = function(test, testDoneC }, true ); + + hiddenBrowser.docShell.allowMetaRedirects = true; }; /** diff --git a/chrome/content/zotero/webpagedump/common.js b/chrome/content/zotero/webpagedump/common.js @@ -310,8 +310,10 @@ var wpdCommon = { }, // add a line to the error list (displays a maximum of 15 errors) - addError: function (aError) { - Zotero.debug('ERROR: ' + aError); + addError: function (errorMsg, errorObj) { + if (errorMsg) Zotero.debug(errorMsg); + if (errorObj) Zotero.debug(errorObj); + /* if (this.errCount < WPD_MAXUIERRORCOUNT) { if (this.errList.indexOf(aError) > -1) return; // is the same this.errList = this.errList + aError + "\n"; @@ -319,6 +321,7 @@ var wpdCommon = { this.errList = this.errList + '...'; } this.errCount++; + */ }, saveWebPage: function (aDestFile) { @@ -505,7 +508,7 @@ var wpdCommon = { var aBaseURLObj = this.convertURLToObject(aBaseURL); return aBaseURLObj.resolve(aRelURL); } catch (ex) { - this.addError("[wpdCommon.resolveURL]:\n -> aBaseURL: " + aBaseURL + "\n -> aRelURL: " + aRelURL + "\n -> " + ex); + this.addError("[wpdCommon.resolveURL]:\n -> aBaseURL: " + aBaseURL + "\n -> aRelURL: " + aRelURL, ex); } return ""; }, @@ -516,7 +519,7 @@ var wpdCommon = { aURLObj.spec = aURL return aURLObj.asciiHost; } catch (ex) { - this.addError("[wpdCommon.getHostName]:\n -> aURL: " + aURL + "\n -> " + ex); + this.addError("[wpdCommon.getHostName]:\n -> aURL: " + aURL, ex); } return ""; }, @@ -527,7 +530,7 @@ var wpdCommon = { aURLObj.spec = aURL return aURLObj.asciiSpec; } catch (ex) { - this.addError("[wpdCommon.getHostName]:\n -> aURL: " + aURL + "\n -> " + ex); + this.addError("[wpdCommon.getHostName]:\n -> aURL: " + aURL, ex); } return ""; }, @@ -577,7 +580,7 @@ var wpdCommon = { if (text) output = output.split(/\n/g); return output; } catch (ex) { - this.addError("[wpdCommon.readFile]:\n -> str_Filename: " + str_Filename + "\n -> " + ex); + this.addError("[wpdCommon.readFile]:\n -> str_Filename: " + str_Filename, ex); } return ""; }, @@ -621,7 +624,7 @@ var wpdCommon = { obj_Transport.close(); return true; } catch (ex) { - this.addError("[wpdCommon.writeFile]:\n -> str_Filename: " + str_Filename + "\n -> " + ex); + this.addError("[wpdCommon.writeFile]:\n -> str_Filename: " + str_Filename, ex); } return false; }, @@ -651,10 +654,13 @@ var wpdCommon = { if (MODE_SIMULATE) return true; try { //new obj_URI object - var obj_URI = Components.classes["@mozilla.org/network/io-service;1"].getService(Components.interfaces.nsIIOService).newURI(aSourceURL, null, null); + var obj_URI = Components.classes["@mozilla.org/network/io-service;1"] + .getService(Components.interfaces.nsIIOService) + .newURI(aSourceURL, null, null); //new file object - var obj_TargetFile = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile); + var obj_TargetFile = Components.classes["@mozilla.org/file/local;1"] + .createInstance(Components.interfaces.nsILocalFile); //set file with path // NOTE: This function has a known bug on the macintosh and other OSes // which do not represent file locations as paths. If you do use this @@ -662,29 +668,25 @@ var wpdCommon = { obj_TargetFile.initWithPath(aTargetFilename); //new persistence object - var obj_Persist = Components.classes["@mozilla.org/embedding/browser/nsWebBrowserPersist;1"].createInstance(Components.interfaces.nsIWebBrowserPersist); + var obj_Persist = Components.classes["@mozilla.org/embedding/browser/nsWebBrowserPersist;1"] + .createInstance(Components.interfaces.nsIWebBrowserPersist); // set flags const nsIWBP = Components.interfaces.nsIWebBrowserPersist; - var flags = nsIWBP.PERSIST_FLAGS_REPLACE_EXISTING_FILES | nsIWBP.PERSIST_FLAGS_FROM_CACHE; + var flags = nsIWBP.PERSIST_FLAGS_REPLACE_EXISTING_FILES + | nsIWBP.PERSIST_FLAGS_FROM_CACHE; //nsIWBP.PERSIST_FLAGS_BYPASS_CACHE; obj_Persist.persistFlags = flags; // has the url the same filetype like the file extension? //save file to target - try { - obj_Persist.saveURI(obj_URI, null, null, null, null, obj_TargetFile); - } catch(e if e.name === "NS_ERROR_XPC_NOT_ENOUGH_ARGS") { - // https://bugzilla.mozilla.org/show_bug.cgi?id=794602 - // XXX Always use when we no longer support Firefox < 18 - obj_Persist.saveURI(obj_URI, null, null, null, null, obj_TargetFile, null); - } + Zotero.Utilities.Internal.saveURI(obj_Persist, obj_URI, obj_TargetFile); return true; } catch (ex) { aSourceURL = this.removeGETFromURL(aSourceURL); - this.addError("[wpdCommon.downloadFile]:\n -> aSourceURL: " + aSourceURL.substring(aSourceURL.length - 60) + "\n -> aTargetFilename: " + aTargetFilename + "\n -> " + ex); + this.addError("[wpdCommon.downloadFile]:\n -> aSourceURL: " + aSourceURL.substring(aSourceURL.length - 60) + "\n -> aTargetFilename: " + aTargetFilename, ex); } return false; }, diff --git a/chrome/content/zotero/webpagedump/domsaver.js b/chrome/content/zotero/webpagedump/domsaver.js @@ -503,7 +503,7 @@ var wpdDOMSaver = { aNode.setAttribute("src", this.relativeLinkFix(newFileName)); } } catch (ex) { - wpdCommon.addError("[wpdCommon.processDOMNode]:\n -> aNode.nodeName: " + aNode.nodeName + "\n -> " + ex); + wpdCommon.addError("[wpdCommon.processDOMNode]:\n -> aNode.nodeName: " + aNode.nodeName, ex); } break; case "xmp": @@ -525,7 +525,7 @@ var wpdDOMSaver = { aNode.removeAttribute("onload"); } } catch (ex) { - wpdCommon.addError("[wpdDOMSaver.processDOMNode]:\n -> aNode.nodeName: " + aNode.nodeName + "\n -> " + ex); + wpdCommon.addError("[wpdDOMSaver.processDOMNode]:\n -> aNode.nodeName: " + aNode.nodeName, ex); } return aNode; }, @@ -750,7 +750,7 @@ var wpdDOMSaver = { } return newFileName; } catch (ex) { - wpdCommon.addError("[wpdDOMSaver.download]\n -> aURLSpec: " + aURLSpec + "\n -> " + ex); + wpdCommon.addError("[wpdDOMSaver.download]\n -> aURLSpec: " + aURLSpec, ex); return ""; } }, @@ -784,7 +784,7 @@ var wpdDOMSaver = { rootNode.insertBefore(aDocument.createTextNode("\n"), rootNode.firstChild); } catch (ex) { - wpdCommon.addError("[wpdDOMSaver.createDocTypeNode]\n -> " + ex); + wpdCommon.addError("[wpdDOMSaver.createDocTypeNode]", ex); } }, @@ -795,7 +795,7 @@ var wpdDOMSaver = { try { return aHTMLText.replace("<wpd_doctype></wpd_doctype>", this.getDocType(aDocument)); } catch (ex) { - wpdCommon.addError("[wpdDOMSaver.replaceDocType]\n -> " + ex); + wpdCommon.addError("[wpdDOMSaver.replaceDocType]", ex); } return aHTMLText; }, @@ -857,7 +857,7 @@ var wpdDOMSaver = { rootNode.firstChild.insertBefore(aDocument.createTextNode("\n"), rootNode.firstChild.firstChild); } catch (ex) { - wpdCommon.addError("[wpdDOMSaver.createMetaCharsetNode]\n -> " + ex); + wpdCommon.addError("[wpdDOMSaver.createMetaCharsetNode]", ex); } }, @@ -872,7 +872,7 @@ var wpdDOMSaver = { rootNode.firstChild.insertBefore(aDocument.createTextNode("\n"), rootNode.firstChild.firstChild); rootNode.firstChild.insertBefore(metaNode, rootNode.firstChild.firstChild); } catch (ex) { - wpdCommon.addError("[wpdDOMSaver.createMetaNameNode]\n -> " + ex); + wpdCommon.addError("[wpdDOMSaver.createMetaNameNode]", ex); } }, @@ -981,7 +981,7 @@ var wpdDOMSaver = { Zotero.debug("[wpdDOMSaver.saveDocumentCSS]: " + this.currentDir + aFileName); // write css file var CSSFile = this.currentDir + aFileName; - if (!wpdCommon.writeFile(CSSText, CSSFile)) wpdCommon.addError("[wpdDOMSaver.saveDocumentCSS]: could not write CSS File\n"); + if (!wpdCommon.writeFile(CSSText, CSSFile)) wpdCommon.addError("[wpdDOMSaver.saveDocumentCSS]: could not write CSS File"); return aFileName; } } @@ -1051,7 +1051,7 @@ var wpdDOMSaver = { // and write the file... var HTMLFile = this.currentDir + aFileName; - if (!wpdCommon.writeFile(HTMLText, HTMLFile)) wpdCommon.addError("[wpdDOMSaver.saveDocumentHTML]: could not write HTML File\n"); + if (!wpdCommon.writeFile(HTMLText, HTMLFile)) wpdCommon.addError("[wpdDOMSaver.saveDocumentHTML]: could not write HTML File"); return aFileName; }, @@ -1083,7 +1083,7 @@ var wpdDOMSaver = { try { return this.saveDocumentEx(this.document, this.name); } catch (ex) { - wpdCommon.addError("[wpdDOMSaver.saveHTMLDocument]\n -> " + ex); + wpdCommon.addError("[wpdDOMSaver.saveHTMLDocument]", ex); } } diff --git a/chrome/content/zotero/xpcom/attachments.js b/chrome/content/zotero/xpcom/attachments.js @@ -305,7 +305,7 @@ Zotero.Attachments = new function(){ var nsIURL = Components.classes["@mozilla.org/network/standard-url;1"] .createInstance(Components.interfaces.nsIURL); nsIURL.spec = url; - wbp.saveURI(nsIURL, null, null, null, null, tmpFile, null); + Zotero.Utilities.Internal.saveURI(wbp, nsIURL, tmpFile); yield deferred.promise; // Create DB item @@ -452,7 +452,8 @@ Zotero.Attachments = new function(){ title = dir[dir.length - 2]; } } - else { + + if (!title) { title = url; } } @@ -613,7 +614,7 @@ Zotero.Attachments = new function(){ wbp.progressListener = new Zotero.WebProgressFinishListener(function () { deferred.resolve(); }); - wbp.saveURI(nsIURL, null, null, null, null, file, null); + Zotero.Utilities.Internal.saveURI(wbp, nsIURL, file); yield deferred.promise; } diff --git a/chrome/content/zotero/xpcom/cite.js b/chrome/content/zotero/xpcom/cite.js @@ -522,100 +522,20 @@ Zotero.Cite.System.prototype = { throw "Zotero.Cite.System.retrieveItem called on non-item "+item; } - // don't return URL or accessed information for journal articles if a - // pages field exists - var itemType = Zotero.ItemTypes.getName(zoteroItem.itemTypeID); - var cslType = CSL_TYPE_MAPPINGS[itemType]; - if(!cslType) cslType = "article"; - var ignoreURL = ((zoteroItem.getField("accessDate", true, true) || zoteroItem.getField("url", true, true)) && - ["journalArticle", "newspaperArticle", "magazineArticle"].indexOf(itemType) !== -1 - && zoteroItem.getField("pages") - && !Zotero.Prefs.get("export.citePaperJournalArticleURL")); - - var cslItem = { - 'id':zoteroItem.id, - 'type':cslType - }; + var cslItem = Zotero.Utilities.itemToCSLJSON(zoteroItem); - // get all text variables (there must be a better way) - // TODO: does citeproc-js permit short forms? - for(var variable in CSL_TEXT_MAPPINGS) { - var fields = CSL_TEXT_MAPPINGS[variable]; - if(variable == "URL" && ignoreURL) continue; - for each(var field in fields) { - var value = zoteroItem.getField(field, false, true).toString(); - if(value != "") { - // Strip enclosing quotes - if(value.match(/^".+"$/)) { - value = value.substr(1, value.length-2); - } - cslItem[variable] = value; - break; - } - } - } - - // separate name variables - var authorID = Zotero.CreatorTypes.getPrimaryIDForType(zoteroItem.itemTypeID); - var creators = zoteroItem.getCreators(); - for each(var creator in creators) { - if(creator.creatorTypeID == authorID) { - var creatorType = "author"; - } else { - var creatorType = Zotero.CreatorTypes.getName(creator.creatorTypeID); - } - - var creatorType = CSL_NAMES_MAPPINGS[creatorType]; - if(!creatorType) continue; - - var nameObj = {'family':creator.ref.lastName, 'given':creator.ref.firstName}; - - if(cslItem[creatorType]) { - cslItem[creatorType].push(nameObj); - } else { - cslItem[creatorType] = [nameObj]; - } - } - - // get date variables - for(var variable in CSL_DATE_MAPPINGS) { - var date = zoteroItem.getField(CSL_DATE_MAPPINGS[variable], false, true); - if(date) { - var dateObj = Zotero.Date.strToDate(date); - // otherwise, use date-parts - var dateParts = []; - if(dateObj.year) { - // add year, month, and day, if they exist - dateParts.push(dateObj.year); - if(dateObj.month !== undefined) { - dateParts.push(dateObj.month+1); - if(dateObj.day) { - dateParts.push(dateObj.day); - } - } - cslItem[variable] = {"date-parts":[dateParts]}; - - // if no month, use season as month - if(dateObj.part && !dateObj.month) { - cslItem[variable].season = dateObj.part; - } - } else { - // if no year, pass date literally - cslItem[variable] = {"literal":date}; - } + if (!Zotero.Prefs.get("export.citePaperJournalArticleURL")) { + var itemType = Zotero.ItemTypes.getName(zoteroItem.itemTypeID); + // don't return URL or accessed information for journal articles if a + // pages field exists + if (["journalArticle", "newspaperArticle", "magazineArticle"].indexOf(itemType) !== -1 + && zoteroItem.getField("pages") + ) { + delete cslItem.URL; + delete cslItem.accessed; } } - - // extract PMID - var extra = zoteroItem.getField("extra", false, true); - if(typeof extra === "string") { - var m = /(?:^|\n)PMID:\s*([0-9]+)/.exec(extra); - if(m) cslItem.PMID = m[1]; - m = /(?:^|\n)PMCID:\s*((?:PMC)?[0-9]+)/.exec(extra); - if(m) cslItem.PMCID = m[1]; - } - //this._cache[zoteroItem.id] = cslItem; return cslItem; }, diff --git a/chrome/content/zotero/xpcom/collectionTreeView.js b/chrome/content/zotero/xpcom/collectionTreeView.js @@ -87,6 +87,8 @@ Zotero.CollectionTreeView.prototype.setTree = Zotero.Promise.coroutine(function* // Add a keypress listener for expand/collapse var tree = this._treebox.treeBody.parentNode; tree.addEventListener('keypress', function(event) { + if (tree.editingRow != -1) return; // In-line editing active + var key = String.fromCharCode(event.which); if (key == '+' && !(event.ctrlKey || event.altKey || event.metaKey)) { @@ -774,6 +776,54 @@ Zotero.CollectionTreeView.prototype.selectLibrary = Zotero.Promise.coroutine(fun }); +Zotero.CollectionTreeView.prototype.selectTrash = function (libraryID) { + if (Zotero.suppressUIUpdates) { + Zotero.debug("UI updates suppressed -- not changing library selection"); + return false; + } + + // Check if trash is already selected + if (this.selection.currentIndex != -1) { + let itemGroup = this._getItemAtRow(this.selection.currentIndex); + if (itemGroup.isTrash() && itemGroup.ref.libraryID == libraryID) { + this._treebox.ensureRowIsVisible(this.selection.currentIndex); + return true; + } + } + + // If in My Library and it's collapsed, open it + if (!libraryID && !this.isContainerOpen(0)) { + this.toggleOpenState(0); + } + + // Find library trash + for (let i = 0; i < this.rowCount; i++) { + let itemGroup = this._getItemAtRow(i); + + // If group header is closed, open it + if (itemGroup.isHeader() && itemGroup.ref.id == 'group-libraries-header' + && !this.isContainerOpen(i)) { + this.toggleOpenState(i); + continue; + } + + if (itemGroup.isLibrary(true) && itemGroup.ref.libraryID == libraryID + && !this.isContainerOpen(i)) { + this.toggleOpenState(i); + continue; + } + + if (itemGroup.isTrash() && itemGroup.ref.libraryID == libraryID) { + this._treebox.ensureRowIsVisible(i); + this.selection.select(i); + return true; + } + } + + return false; +} + + /** * Select the last-viewed source */ @@ -1826,8 +1876,12 @@ Zotero.CollectionTreeView.prototype.drop = Zotero.Promise.coroutine(function* (r // Add items to target collection if (targetCollectionID) { + let ids = newIDs.filter(function (itemID) { + var item = Zotero.Items.get(itemID); + return !item.getSource(); + }); var collection = yield Zotero.Collections.getAsync(targetCollectionID); - yield collection.addItems(newIDs); + yield collection.addItems(ids); } // If moving, remove items from source collection diff --git a/chrome/content/zotero/xpcom/connector/cachedTypes.js b/chrome/content/zotero/xpcom/connector/cachedTypes.js @@ -87,7 +87,7 @@ Zotero.Connector_Types = new function() { } else if(Zotero.isChrome) { return chrome.extension.getURL("images/"+icon); } else if(Zotero.isSafari) { - return safari.extension.baseURI+"images/itemTypes/"+icon; + return safari.extension.baseURI+"images/"+icon; } }; } diff --git a/chrome/content/zotero/xpcom/connector/connector.js b/chrome/content/zotero/xpcom/connector/connector.js @@ -143,7 +143,7 @@ Zotero.Connector = new function() { * @param {Object} data RPC data. See documentation above. * @param {Function} callback Function to be called when requests complete. */ - this.callMethod = function(method, data, callback) { + this.callMethod = function(method, data, callback, tab) { // Don't bother trying if not online in bookmarklet if(Zotero.isBookmarklet && this.isOnline === false) { callback(false, 0); @@ -211,6 +211,57 @@ Zotero.Connector = new function() { "X-Zotero-Connector-API-Version":CONNECTOR_API_VERSION }); } + }, + + /** + * Adds detailed cookies to the data before sending "saveItems" request to + * the server/Standalone + * + * @param {Object} data RPC data. See documentation above. + * @param {Function} callback Function to be called when requests complete. + */ + this.setCookiesThenSaveItems = function(data, callback, tab) { + if(Zotero.isFx && !Zotero.isBookmarklet && data.uri) { + var host = Services.ios.newURI(data.uri, null, null).host; + var cookieEnum = Services.cookies.getCookiesFromHost(host); + var cookieHeader = ''; + while(cookieEnum.hasMoreElements()) { + var cookie = cookieEnum.getNext().QueryInterface(Components.interfaces.nsICookie2); + cookieHeader += '\n' + cookie.name + '=' + cookie.value + + ';Domain=' + cookie.host + + (cookie.path ? ';Path=' + cookie.path : '') + + (!cookie.isDomain ? ';hostOnly' : '') //not a legit flag, but we have to use it internally + + (cookie.isSecure ? ';secure' : ''); + } + + if(cookieHeader) { + data.detailedCookies = cookieHeader.substr(1); + } + + this.callMethod("saveItems", data, callback, tab); + return; + } else if(Zotero.isChrome && !Zotero.isBookmarklet) { + var self = this; + chrome.cookies.getAll({url: tab.url}, function(cookies) { + var cookieHeader = ''; + for(var i=0, n=cookies.length; i<n; i++) { + cookieHeader += '\n' + cookies[i].name + '=' + cookies[i].value + + ';Domain=' + cookies[i].domain + + (cookies[i].path ? ';Path=' + cookies[i].path : '') + + (cookies[i].hostOnly ? ';hostOnly' : '') //not a legit flag, but we have to use it internally + + (cookies[i].secure ? ';secure' : ''); + } + + if(cookieHeader) { + data.detailedCookies = cookieHeader.substr(1); + } + + self.callMethod("saveItems", data, callback, tab); + }); + return; + } + + this.callMethod("saveItems", data, callback, tab); } } diff --git a/chrome/content/zotero/xpcom/connector/translate_item.js b/chrome/content/zotero/xpcom/connector/translate_item.js @@ -80,8 +80,7 @@ Zotero.Translate.ItemSaver.prototype = { payload.uri = this._uri; payload.cookie = this._cookie; } - - Zotero.Connector.callMethod("saveItems", payload, function(data, status) { + Zotero.Connector.setCookiesThenSaveItems(payload, function(data, status) { if(data !== false) { Zotero.debug("Translate: Save via Standalone succeeded"); var haveAttachments = false; diff --git a/chrome/content/zotero/xpcom/connector/translator.js b/chrome/content/zotero/xpcom/connector/translator.js @@ -203,7 +203,7 @@ Zotero.Translators = new function() { } else { // in Firefox, push the converterFunction converterFunctions.push(new function() { - var re = new RegExp('^https?://(?:[^/]\\.)?'+Zotero.Utilities.quotemeta(properHosts[j-1]), "gi"); + var re = new RegExp('^https?://(?:[^/]\\.)?'+Zotero.Utilities.quotemeta(properHosts[j-1])+'/', "gi"); var proxyHost = proxyHosts[j-1].replace(/\$/g, "$$$$"); return function(uri) { return uri.replace(re, "$&."+proxyHost) }; }); diff --git a/chrome/content/zotero/xpcom/cookieSandbox.js b/chrome/content/zotero/xpcom/cookieSandbox.js @@ -47,11 +47,9 @@ Zotero.CookieSandbox = function(browser, uri, cookieData, userAgent) { this._cookies = {}; if(cookieData) { - var splitCookies = cookieData.split(/; ?/); + var splitCookies = cookieData.split(/;\s*/); for each(var cookie in splitCookies) { - var key = cookie.substr(0, cookie.indexOf("=")); - var value = cookie.substr(cookie.indexOf("=")+1); - this._cookies[key] = value; + this.setCookie(cookie, this.URI.host); } } @@ -63,29 +61,93 @@ Zotero.CookieSandbox = function(browser, uri, cookieData, userAgent) { } } +/** + * Normalizes the host string: lower-case, remove leading period, some more cleanup + * @param {String} host; + */ +Zotero.CookieSandbox.normalizeHost = function(host) { + return host.trim().toLowerCase().replace(/^\.+|[:\/].*/g, ''); +} + +/** + * Normalizes the path string + * @param {String} path; + */ +Zotero.CookieSandbox.normalizePath = function(path) { + return '/' + path.trim().replace(/^\/+|[?#].*/g, ''); +} + +/** + * Generates a semicolon-separated string of cookie values from a list of cookies + * @param {Object} cookies Object containing key: value cookie pairs + */ +Zotero.CookieSandbox.generateCookieString = function(cookies) { + var str = ''; + for(var key in cookies) { + str += '; ' + key + '=' + cookies[key]; + } + + return str ? str.substr(2) : ''; +} + Zotero.CookieSandbox.prototype = { /** * Adds cookies to this CookieSandbox based on a cookie header * @param {String} cookieString; + * @param {nsIURI} [uri] URI of the header origin. + Used to verify same origin. If omitted validation is not performed */ - "addCookiesFromHeader":function(cookieString) { + "addCookiesFromHeader":function(cookieString, uri) { var cookies = cookieString.split("\n"); + if(uri) { + var validDomain = '.' + Zotero.CookieSandbox.normalizeHost(uri.host); + } + for(var i=0, n=cookies.length; i<n; i++) { - var cookieInfo = cookies[i].split(/; ?/); - var secure = false; + var cookieInfo = cookies[i].split(/;\s*/); + var secure = false, path = '', domain = '', hostOnly = false; for(var j=1, m=cookieInfo.length; j<m; j++) { - if(cookieInfo[j].substr(0, cookieInfo[j].indexOf("=")).toLowerCase() === "secure") { - secure = true; - break; + var pair = cookieInfo[j].split(/\s*=\s*/); + switch(pair[0].trim().toLowerCase()) { + case 'secure': + secure = true; + break; + case 'domain': + domain = pair[1]; + break; + case 'path': + path = pair[1]; + break; + case 'hostonly': + hostOnly = true; + break; } + + if(secure && domain && path && hostOnly) break; } - if(!secure) { - var key = cookieInfo[0].substr(0, cookieInfo[0].indexOf("=")); - var value = cookieInfo[0].substr(cookieInfo[0].indexOf("=")+1); - this._cookies[key] = value; + // Domain must be a suffix of the host setting the cookie + if(validDomain && domain) { + var normalizedDomain = Zotero.CookieSandbox.normalizeHost(domain); + var substrMatch = validDomain.lastIndexOf(normalizedDomain); + var publicSuffix; + try { publicSuffix = Services.eTLD.getPublicSuffix(uri) } catch(e) {} + if(substrMatch == -1 || !publicSuffix || publicSuffix == normalizedDomain + || (substrMatch + normalizedDomain.length != validDomain.length) + || (validDomain.charAt(substrMatch-1) != '.')) { + Zotero.debug("CookieSandbox: Ignoring attempt to set a cookie for different host"); + continue; + } } + + // When no domain is set, use requestor's host (hostOnly cookie) + if(validDomain && !domain) { + domain = validDomain.substr(1); + hostOnly = true; + } + + this.setCookie(cookieInfo[0], domain, path, secure, hostOnly); } }, @@ -104,13 +166,112 @@ Zotero.CookieSandbox.prototype = { "attachToInterfaceRequestor": function(ir) { Zotero.CookieSandbox.Observer.trackedInterfaceRequestors.push(Components.utils.getWeakReference(ir.QueryInterface(Components.interfaces.nsIInterfaceRequestor))); Zotero.CookieSandbox.Observer.trackedInterfaceRequestorSandboxes.push(this); + }, + + /** + * Set a cookie for a specified host + * @param {String} cookiePair A single cookie pair in the form key=value + * @param {String} [host] Host to bind the cookie to. + * Defaults to the host set on this.URI + * @param {String} [path] + * @param {Boolean} [secure] Whether the cookie has the secure attribute set + * @param {Boolean} [hostOnly] Whether the cookie is a host-only cookie + */ + "setCookie": function(cookiePair, host, path, secure, hostOnly) { + var splitAt = cookiePair.indexOf('='); + if(splitAt === -1) { + Zotero.debug("CookieSandbox: Not setting invalid cookie."); + return; + } + var pair = [cookiePair.substring(0,splitAt), cookiePair.substring(splitAt+1)]; + var name = pair[0].trim(); + var value = pair[1].trim(); + if(!name) { + Zotero.debug("CookieSandbox: Ignoring attempt to set cookie with no name"); + return; + } + + host = '.' + Zotero.CookieSandbox.normalizeHost(host); + + if(!path) path = '/'; + path = Zotero.CookieSandbox.normalizePath(path); + + if(!this._cookies[host]) { + this._cookies[host] = {}; + } + + if(!this._cookies[host][path]) { + this._cookies[host][path] = {}; + } + + /*Zotero.debug("CookieSandbox: adding cookie " + name + '=' + + value + ' for host ' + host + ' and path ' + path + + '[' + (hostOnly?'hostOnly,':'') + (secure?'secure':'') + ']');*/ + + this._cookies[host][path][name] = { + value: value, + secure: !!secure, + hostOnly: !!hostOnly + }; + }, + + /** + * Returns a list of cookies that should be sent to the given URI + * @param {nsIURI} uri + */ + "getCookiesForURI": function(uri) { + var hostParts = Zotero.CookieSandbox.normalizeHost(uri.host).split('.'), + pathParts = Zotero.CookieSandbox.normalizePath(uri.path).split('/'), + cookies = {}, found = false, secure = uri.scheme.toUpperCase() == 'HTTPS'; + + // Fetch cookies starting from the highest level domain + var cookieHost = '.' + hostParts[hostParts.length-1]; + for(var i=hostParts.length-2; i>=0; i--) { + cookieHost = '.' + hostParts[i] + cookieHost; + if(this._cookies[cookieHost]) { + found = this._getCookiesForPath(cookies, this._cookies[cookieHost], pathParts, secure, i==0) || found; + } + } + + //Zotero.debug("CookieSandbox: returning cookies:"); + //Zotero.debug(cookies); + + return found ? cookies : null; + }, + + "_getCookiesForPath": function(cookies, cookiePaths, pathParts, secure, isHost) { + var found = false; + var path = ''; + for(var i=0, n=pathParts.length; i<n; i++) { + path += pathParts[i]; + var cookiesForPath = cookiePaths[path]; + if(cookiesForPath) { + for(var key in cookiesForPath) { + if(cookiesForPath[key].secure && !secure) continue; + if(cookiesForPath[key].hostOnly && !isHost) continue; + + found = true; + cookies[key] = cookiesForPath[key].value; + } + } + + // Also check paths with trailing / (but not for last part) + path += '/'; + cookiesForPath = cookiePaths[path]; + if(cookiesForPath && i != n-1) { + for(var key in cookiesForPath) { + if(cookiesForPath[key].secure && !secure) continue; + if(cookiesForPath[key].hostOnly && !isHost) continue; + + found = true; + cookies[key] = cookiesForPath[key].value; + } + } + } + return found; } } -Zotero.CookieSandbox.prototype.__defineGetter__("cookieString", function() { - return [key+"="+this._cookies[key] for(key in this._cookies)].join("; "); -}); - /** * nsIObserver implementation for adding, clearing, and slurping cookies */ @@ -218,8 +379,12 @@ Zotero.CookieSandbox.Observer = new function() { } if(topic == "http-on-modify-request") { - // clear cookies to be sent to other domains - if(!trackedBy || channel.URI.host != trackedBy.URI.host) { + // Clear cookies to be sent to other domains if we're not explicitly managing them + if(trackedBy) { + var cookiesForURI = trackedBy.getCookiesForURI(channel.URI); + } + + if(!trackedBy || !cookiesForURI) { channel.setRequestHeader("Cookie", "", false); channel.setRequestHeader("Cookie2", "", false); Zotero.debug("CookieSandbox: Cleared cookies to be sent to "+channelURI, 5); @@ -231,26 +396,27 @@ Zotero.CookieSandbox.Observer = new function() { } // add cookies to be sent to this domain - channel.setRequestHeader("Cookie", trackedBy.cookieString, false); + channel.setRequestHeader("Cookie", Zotero.CookieSandbox.generateCookieString(cookiesForURI), false); Zotero.debug("CookieSandbox: Added cookies for request to "+channelURI, 5); } else if(topic == "http-on-examine-response") { // clear cookies being received try { var cookieHeader = channel.getResponseHeader("Set-Cookie"); } catch(e) { + Zotero.debug("CookieSandbox: No Set-Cookie header received for "+channelURI, 5); return; } + channel.setResponseHeader("Set-Cookie", "", false); channel.setResponseHeader("Set-Cookie2", "", false); - // don't process further if these cookies are for another set of domains - if(!trackedBy || channel.URI.host != trackedBy.URI.host) { - Zotero.debug("CookieSandbox: Rejected cookies from "+channelURI, 5); + if(!cookieHeader || !trackedBy) { + Zotero.debug("CookieSandbox: Not tracking received cookies for "+channelURI, 5); return; } - // put new cookies into our sandbox - if(cookieHeader) trackedBy.addCookiesFromHeader(cookieHeader); + // Put new cookies into our sandbox + trackedBy.addCookiesFromHeader(cookieHeader, channel.URI); Zotero.debug("CookieSandbox: Slurped cookies from "+channelURI, 5); } diff --git a/chrome/content/zotero/xpcom/data/item.js b/chrome/content/zotero/xpcom/data/item.js @@ -815,6 +815,24 @@ Zotero.Item.prototype.setField = function(field, value, loadIn) { value = value.replace(/[\r\n]+/g, " ");; } + if (fieldID == Zotero.ItemFields.getID('ISBN')) { + // Hyphenate ISBNs, but only if everything is in expected format and valid + let isbns = ('' + value).trim().split(/\s*[,;]\s*|\s+/), + newISBNs = '', + failed = false; + for (let i=0; i<isbns.length; i++) { + let isbn = Zotero.Utilities.Internal.hyphenateISBN(isbns[i]); + if (!isbn) { + failed = true; + break; + } + + newISBNs += ' ' + isbn; + } + + if (!failed) value = newISBNs.substr(1); + } + if (!loadIn) { // Save date field as multipart date // TEMP - filingDate @@ -2320,7 +2338,10 @@ Zotero.Item.prototype.getFilePathAsync = Zotero.Promise.coroutine(function* (ski // accidentally use the parent dir. Syncing to OS X, which doesn't // exhibit this bug, will properly correct such filenames in // storage.js and propagate the change - if (Zotero.isWin) { + // + // The one exception on other platforms is '/', which is interpreted + // as a directory by setRelativeDescriptor, so strip in that case too. + if (Zotero.isWin || path.indexOf('/') != -1) { path = Zotero.File.getValidFileName(path, true); } var file = Zotero.Attachments.getStorageDirectory(this); diff --git a/chrome/content/zotero/xpcom/error.js b/chrome/content/zotero/xpcom/error.js @@ -25,7 +25,7 @@ Zotero.Error = function (message, error, data) { - this.name = "ZOTERO_ERROR"; + this.name = "Zotero Error"; this.message = message; this.data = data; if (parseInt(error) == error) { @@ -35,6 +35,8 @@ Zotero.Error = function (message, error, data) { this.error = Zotero.Error["ERROR_" + error] ? Zotero.Error["ERROR_" + error] : 0; } } +Zotero.Error.prototype = new Error; + Zotero.Error.ERROR_UNKNOWN = 0; Zotero.Error.ERROR_MISSING_OBJECT = 1; diff --git a/chrome/content/zotero/xpcom/isbn.js b/chrome/content/zotero/xpcom/isbn.js @@ -0,0 +1,11 @@ +/** THIS FILE WAS GENERATED AUTOMATICALLY **/ + +/** + * ISBN Registrant ranges from https://www.isbn-international.org/range_file_generation +**/ +Zotero.ISBN = {}; +Zotero.ISBN.ranges = (function() { + var ranges = {"978":{"0":["00","19","200","699","7000","8499","85000","89999","900000","949999","9500000","9999999"],"1":["00","09","100","329","330","399","4000","5499","55000","86979","869800","998999","9990000","9999999"],"2":["00","19","200","349","400","699","7000","8399","35000","39999","84000","89999","900000","949999","9500000","9999999"],"3":["00","02","04","19","030","033","200","699","0340","0369","7000","8499","03700","03999","85000","89999","95400","96999","99000","99499","99500","99999","900000","949999","9500000","9539999","9700000","9899999"],"5":["01","19","200","420","430","430","440","440","450","699","0050","0099","4210","4299","4310","4399","4410","4499","7000","8499","9200","9299","9501","9799","9910","9999","00000","00499","85000","89999","91000","91999","93000","94999","98000","98999","900000","909999","9500000","9500999","9900000","9909999"],"600":["00","09","100","499","5000","8999","90000","99999"],"601":["00","19","85","99","200","699","7000","7999","80000","84999"],"602":["00","07","200","699","0800","0899","0900","1099","1100","1199","1200","1399","1500","1699","7500","7999","8000","9499","14000","14999","17000","17999","18000","18999","19000","19999","70000","74999","95000","99999"],"603":["00","04","05","49","500","799","8000","8999","90000","99999"],"604":["0","4","50","89","900","979","9800","9999"],"605":["01","02","04","09","030","039","100","399","4000","5999","9000","9999","60000","89999"],"606":["0","0","10","49","500","799","8000","9199","92000","99999"],"607":["00","39","400","749","7500","9499","95000","99999"],"608":["0","0","7","9","10","19","200","449","4500","6499","65000","69999"],"609":["00","39","400","799","8000","9499","95000","99999"],"612":["00","29","50","99","300","399","4000","4499","45000","49999"],"613":["0","9"],"615":["00","09","100","499","5000","7999","80000","89999"],"616":["00","19","200","699","7000","8999","90000","99999"],"617":["00","49","500","699","7000","8999","90000","99999"],"618":["00","19","200","499","5000","7999","80000","99999"],"619":["00","14","150","699","7000","8999","90000","99999"],"621":["00","29","400","599","8000","8999","95000","99999"],"7":["00","09","100","499","5000","7999","80000","89999","900000","999999"],"80":["00","19","200","699","7000","8499","85000","89999","900000","999999"],"82":["00","19","200","689","7000","8999","90000","98999","690000","699999","990000","999999"],"83":["00","19","200","599","7000","8499","60000","69999","85000","89999","900000","999999"],"84":["00","13","140","149","200","699","7000","8499","9000","9199","9700","9999","15000","19999","85000","89999","92400","92999","95000","96999","920000","923999","930000","949999"],"85":["00","19","200","549","5500","5999","7000","8499","60000","69999","85000","89999","98000","99999","900000","979999"],"86":["00","29","300","599","6000","7999","80000","89999","900000","999999"],"87":["00","29","400","649","7000","7999","85000","94999","970000","999999"],"88":["00","19","200","599","910","929","6000","8499","9300","9399","85000","89999","95000","99999","900000","909999","940000","949999"],"89":["00","24","250","549","990","999","5500","8499","85000","94999","97000","98999","950000","969999"],"90":["00","19","90","90","94","94","200","499","5000","6999","8500","8999","70000","79999","800000","849999"],"91":["0","1","20","49","500","649","7000","7999","85000","94999","970000","999999"],"92":["0","5","60","79","800","899","9000","9499","95000","98999","990000","999999"],"93":["00","09","100","499","5000","7999","80000","94999","950000","999999"],"94":["000","599","6000","8999","90000","99999"],"950":["00","49","500","899","9000","9899","99000","99999"],"951":["0","1","20","54","550","889","8900","9499","95000","99999"],"952":["00","19","60","65","80","94","200","499","5000","5999","6600","6699","7000","7999","9500","9899","67000","69999","99000","99999"],"953":["0","0","10","14","51","54","150","509","6000","9499","55000","59999","95000","99999"],"954":["00","28","300","799","2900","2999","8000","8999","9300","9999","90000","92999"],"955":["20","40","550","749","0000","1999","4500","4999","7500","7999","8000","9499","41000","43999","44000","44999","50000","54999","95000","99999"],"956":["00","19","200","699","7000","9999"],"957":["00","02","05","19","21","27","31","43","440","819","0300","0499","2000","2099","8200","9699","28000","30999","97000","99999"],"958":["00","56","600","799","8000","9499","57000","59999","95000","99999"],"959":["00","19","200","699","7000","8499","85000","99999"],"960":["00","19","93","93","200","659","690","699","6600","6899","7000","8499","9400","9799","85000","92999","98000","99999"],"961":["00","19","200","599","6000","8999","90000","94999"],"962":["00","19","200","699","900","999","7000","8499","8700","8999","85000","86999"],"963":["00","19","200","699","7000","8499","9000","9999","85000","89999"],"964":["00","14","150","249","300","549","970","989","2500","2999","5500","8999","9900","9999","90000","96999"],"965":["00","19","200","599","7000","7999","90000","99999"],"966":["00","12","14","14","130","139","170","199","279","289","300","699","910","949","980","999","1500","1699","2000","2789","2900","2999","7000","8999","90000","90999","95000","97999"],"967":["00","00","60","89","300","499","900","989","0100","0999","5000","5999","9900","9989","10000","19999","99900","99999"],"968":["01","39","400","499","800","899","5000","7999","9000","9999"],"969":["0","1","20","22","24","39","400","749","7500","9999","23000","23999"],"970":["01","59","600","899","9000","9099","9700","9999","91000","96999"],"971":["02","02","06","49","97","98","000","015","500","849","0160","0199","0300","0599","8500","9099","9600","9699","9900","9999","91000","95999"],"972":["0","1","20","54","550","799","8000","9499","95000","99999"],"973":["0","0","20","54","100","169","550","759","1700","1999","7600","8499","8900","9499","85000","88999","95000","99999"],"974":["00","19","200","699","7000","8499","9500","9999","85000","89999","90000","94999"],"975":["02","24","250","599","990","999","6000","9199","00000","01999","92000","98999"],"976":["0","3","40","59","600","799","8000","9499","95000","99999"],"977":["00","19","90","99","200","499","700","849","5000","6999","85000","89999"],"978":["000","199","900","999","2000","2999","8000","8999","30000","79999"],"979":["20","29","000","099","400","799","1000","1499","3000","3999","8000","9499","15000","19999","95000","99999"],"980":["00","19","200","599","6000","9999"],"981":["00","11","200","289","290","299","310","399","3000","3099","4000","9999","17000","19999"],"982":["00","09","70","89","100","699","9000","9799","98000","99999"],"983":["00","01","45","49","50","79","020","199","800","899","2000","3999","9000","9899","40000","44999","99000","99999"],"984":["00","39","400","799","8000","8999","90000","99999"],"985":["00","39","400","599","6000","8999","90000","99999"],"986":["00","11","120","559","5600","7999","80000","99999"],"987":["00","09","30","35","40","44","500","899","1000","1999","3600","3999","9000","9499","20000","29999","45000","49999","95000","99999"],"988":["00","11","200","799","8000","9699","12000","14999","15000","16999","17000","19999","97000","99999"],"9925":["0","2","30","54","550","734","7350","9999"],"9926":["0","1","20","39","400","799","8000","9999"],"9927":["00","09","100","399","4000","4999"],"9929":["0","3","40","54","550","799","8000","9999"],"9930":["00","49","500","939","9400","9999"],"9931":["00","29","300","899","9000","9999"],"9932":["00","39","400","849","8500","9999"],"9933":["0","0","10","39","400","899","9000","9999"],"9934":["0","0","10","49","500","799","8000","9999"],"9937":["0","2","30","49","500","799","8000","9999"],"9938":["00","79","800","949","9500","9999"],"9939":["0","4","50","79","800","899","9000","9999"],"9940":["0","1","20","49","500","899","9000","9999"],"9942":["00","84","900","984","8500","8999","9850","9999"],"9943":["00","29","300","399","975","999","4000","9749"],"9944":["60","69","80","89","100","499","700","799","900","999","0000","0999","5000","5999"],"9945":["00","00","08","39","57","57","010","079","400","569","580","849","8500","9999"],"9946":["0","1","20","39","400","899","9000","9999"],"9947":["0","1","20","79","800","999"],"9949":["0","0","10","39","75","89","400","749","9000","9999"],"9950":["00","29","300","849","8500","9999"],"9953":["0","0","10","39","60","89","400","599","9000","9999"],"9955":["00","39","400","929","9300","9999"],"9957":["00","39","70","84","88","99","400","699","8500","8799"],"9958":["00","01","10","18","20","49","020","029","040","089","500","899","0300","0399","0900","0999","1900","1999","9000","9999"],"9959":["0","1","20","79","98","99","800","949","970","979","9500","9699"],"9960":["00","59","600","899","9000","9999"],"9961":["0","2","30","69","700","949","9500","9999"],"9962":["00","54","56","59","600","849","5500","5599","8500","9999"],"9963":["0","1","30","54","250","279","550","734","2000","2499","2800","2999","7350","7499","7500","9999"],"9964":["0","6","70","94","950","999"],"9965":["00","39","400","899","9000","9999"],"9966":["20","69","000","149","750","959","1500","1999","7000","7499","9600","9999"],"9971":["0","5","60","89","900","989","9900","9999"],"9972":["1","1","00","09","30","59","200","249","600","899","2500","2999","9000","9999"],"9973":["00","05","10","69","060","089","700","969","0900","0999","9700","9999"],"9974":["0","2","30","54","95","99","550","749","7500","9499"],"9975":["0","0","45","89","100","299","900","949","3000","3999","4000","4499","9500","9999"],"9977":["00","89","900","989","9900","9999"],"9978":["00","29","40","94","300","399","950","989","9900","9999"],"9979":["0","4","50","64","66","75","650","659","760","899","9000","9999"],"9980":["0","3","40","89","900","989","9900","9999"],"9981":["00","09","20","79","100","159","800","949","1600","1999","9500","9999"],"9982":["00","79","800","989","9900","9999"],"9983":["80","94","950","989","9900","9999"],"9984":["00","49","500","899","9000","9999"],"9986":["00","39","97","99","400","899","940","969","9000","9399"],"9987":["00","39","400","879","8800","9999"],"9988":["0","2","30","54","550","749","7500","9999"],"9989":["0","0","30","59","100","199","600","949","2000","2999","9500","9999"],"99901":["00","49","80","99","500","799"],"99903":["0","1","20","89","900","999"],"99904":["0","5","60","89","900","999"],"99905":["0","3","40","79","800","999"],"99906":["0","2","30","59","70","89","90","94","600","699","950","999"],"99908":["0","0","10","89","900","999"],"99909":["0","3","40","94","950","999"],"99910":["0","2","30","89","900","999"],"99911":["00","59","600","999"],"99912":["0","3","60","89","400","599","900","999"],"99913":["0","2","30","35","600","604"],"99914":["0","4","50","89","900","999"],"99915":["0","4","50","79","800","999"],"99916":["0","2","30","69","700","999"],"99919":["0","2","40","69","70","79","300","399","800","849","850","899","900","999"],"99921":["0","1","8","8","20","69","90","99","700","799"],"99922":["0","3","40","69","700","999"],"99926":["0","0","10","59","87","89","90","99","600","869"],"99927":["0","2","30","59","600","999"],"99928":["0","0","10","79","800","999"],"99932":["0","0","7","7","10","59","80","99","600","699"],"99935":["0","2","7","8","30","59","90","99","600","699"],"99936":["0","0","10","59","600","999"],"99937":["0","1","20","59","600","999"],"99938":["0","1","20","59","90","99","600","899"],"99940":["0","0","10","69","700","999"],"99941":["0","2","30","79","800","999"],"99953":["0","2","30","79","94","99","800","939"],"99954":["0","2","30","69","88","99","700","879"],"99955":["0","1","20","59","80","99","600","799"],"99956":["00","59","86","99","600","859"],"99958":["0","4","50","93","940","949","950","999"],"99960":["0","0","10","94","950","999"],"99961":["0","3","40","89","900","999"],"99963":["00","49","92","99","500","919"],"99966":["0","2","30","69","80","94","700","799"],"99967":["0","1","20","59","600","899"],"99971":["0","5","60","84","850","999"],"99974":["40","79","800","999"],"99976":["0","1","20","59","600","799"]},"979":{"10":["00","19","200","699","7000","8999","90000","97599","976000","999999"],"11":["00","24","250","549","5500","8499","85000","94999","950000","999999"],"12":["200","200"]}}; + ranges['978']['99968']=ranges['978']['99912'];ranges['978']['9935']=ranges['978']['9941']=ranges['978']['9956']=ranges['978']['9933'];ranges['978']['9976']=ranges['978']['9971'];ranges['978']['99949']=ranges['978']['99903'];ranges['978']['9968']=ranges['978']['9930'];ranges['978']['99929']=ranges['978']['99930']=ranges['978']['99931']=ranges['978']['99942']=ranges['978']['99944']=ranges['978']['99948']=ranges['978']['99950']=ranges['978']['99952']=ranges['978']['99962']=ranges['978']['99969']=ranges['978']['99915'];ranges['978']['99917']=ranges['978']['99910'];ranges['978']['99920']=ranges['978']['99970']=ranges['978']['99972']=ranges['978']['99914'];ranges['978']['99933']=ranges['978']['99943']=ranges['978']['99946']=ranges['978']['99959']=ranges['978']['99927'];ranges['978']['81']=ranges['978']['80'];ranges['978']['9967']=ranges['978']['9970']=ranges['978']['9965'];ranges['978']['9936']=ranges['978']['9952']=ranges['978']['9954']=ranges['978']['9926'];ranges['978']['99965']=ranges['978']['99922'];ranges['978']['9928']=ranges['978']['9927'];ranges['978']['99947']=ranges['978']['99916'];ranges['978']['9985']=ranges['978']['9939'];ranges['978']['99918']=ranges['978']['99925']=ranges['978']['99973']=ranges['978']['99975']=ranges['978']['99905'];ranges['978']['99939']=ranges['978']['99945']=ranges['978']['99904'];ranges['978']['989']=ranges['978']['972'];ranges['978']['620']=ranges['978']['613'];ranges['978']['4']=ranges['978']['0'];ranges['978']['99923']=ranges['978']['99924']=ranges['978']['99934']=ranges['978']['99957']=ranges['978']['99964']=ranges['978']['9947'];ranges['978']['614']=ranges['978']['609'];ranges['978']['9948']=ranges['978']['9951']=ranges['978']['9932']; + return ranges; +})(); diff --git a/chrome/content/zotero/xpcom/itemTreeView.js b/chrome/content/zotero/xpcom/itemTreeView.js @@ -1616,6 +1616,12 @@ Zotero.ItemTreeView.prototype.selectItem = Zotero.Promise.coroutine(function* (i // Get the row of the parent, if there is one var parentRow = null; var item = yield Zotero.Items.getAsync(id); + + // Can't select a deleted item if we're not in the trash + if (item.deleted && !this.collectionTreeRow.isTrash()) { + return false; + } + var parent = item.parentItemID; if (parent && this._itemRowMap[parent] != undefined) { parentRow = this._itemRowMap[parent]; diff --git a/chrome/content/zotero/xpcom/mimeTypeHandler.js b/chrome/content/zotero/xpcom/mimeTypeHandler.js @@ -55,30 +55,50 @@ Zotero.MIMETypeHandler = new function () { _observers = []; if(Zotero.Prefs.get("parseEndNoteMIMETypes")) { - this.addHandler("application/x-endnote-refer", _importHandler, true); - this.addHandler("application/x-research-info-systems", _importHandler, true); - this.addHandler("application/x-inst-for-scientific-info", _importHandler, true); - - this.addHandler("text/x-bibtex", _importHandler, true); - this.addHandler("application/x-bibtex", _importHandler, true); - - // - // And some non-standard ones - // - this.addHandler("text/x-research-info-systems", _importHandler, true); - // Nature uses this one - this.addHandler("text/application/x-research-info-systems", _importHandler, true); - // Cell uses this one - this.addHandler("text/ris", _importHandler, true); - // Not even trying - this.addHandler("ris", _importHandler, true); + this.registerMetadataHandlers(); } + Zotero.Prefs.registerObserver("parseEndNoteMIMETypes", function(val) { + if (val) this.registerMetadataHandlers(); + else this.unregisterMetadataHandlers(); + }.bind(this)); + this.addHandler("application/vnd.citationstyles.style+xml", function(a1, a2) { Zotero.Styles.install(a1, a2) }); this.addHandler("text/x-csl", function(a1, a2) { Zotero.Styles.install(a1, a2) }); // deprecated this.addHandler("application/x-zotero-schema", Zotero.Schema.importSchema); this.addHandler("application/x-zotero-settings", Zotero.Prefs.importSettings); } + // MIME types that Zotero should handle when parseEndNoteMIMETypes preference + // is enabled + var metadataMIMETypes = [ + "application/x-endnote-refer", "application/x-research-info-systems", + "application/x-inst-for-scientific-info", + "text/x-bibtex", "application/x-bibtex", + // Non-standard + "text/x-research-info-systems", + "text/application/x-research-info-systems", // Nature serves this + "text/ris", // Cell serves this + "ris" // Not even trying + ]; + + /** + * Registers MIME types for parseEndNoteMIMETypes preference + */ + this.registerMetadataHandlers = function() { + for (var i=0; i<metadataMIMETypes.length; i++) { + this.addHandler(metadataMIMETypes[i], _importHandler, true); + } + } + + /** + * Unregisters MIME types for parseEndNoteMIMETypes preference + */ + this.unregisterMetadataHandlers = function() { + for (var i=0; i<metadataMIMETypes.length; i++) { + this.removeHandler(metadataMIMETypes[i]); + } + } + /** * Adds a handler to handle a specific MIME type * @param {String} type MIME type to handle @@ -93,6 +113,18 @@ Zotero.MIMETypeHandler = new function () { } /** + * Removes a handler for a specific MIME type + * @param {String} type MIME type to handle + */ + this.removeHandler = function(type) { + delete _typeHandlers[type]; + var i = _ignoreContentDispositionTypes.indexOf(type); + if (i != -1) { + _ignoreContentDispositionTypes.splice(i, 1); + } + } + + /** * Adds an observer to inspect and possibly modify page headers */ this.addObserver = function(fn) { @@ -107,7 +139,10 @@ Zotero.MIMETypeHandler = new function () { */ function _importHandler(string, uri, contentType, channel) { var win = channel.notificationCallbacks.getInterface(Components.interfaces.nsIDOMWindow).top; - if(!win) throw "Attempt to import from a channel without an attached document refused"; + if(!win) { + Zotero.debug("Attempt to import from a channel without an attached document refused"); + return false; + } var hostPort = channel.URI.hostPort.replace(";", "_", "g"); @@ -129,7 +164,7 @@ Zotero.MIMETypeHandler = new function () { bag.setPropertyAsBool("allowTabModal", true); var continueDownload = prompt.confirmCheck(title, text, checkMsg, checkValue); - if(!continueDownload) return; + if(!continueDownload) return false; if(checkValue.value) { // add to allowed sites if desired Zotero.Prefs.set("ingester.allowedSites", allowedSitesString+";"+hostPort); @@ -148,7 +183,8 @@ Zotero.MIMETypeHandler = new function () { return translation.getTranslators().then(function(translators) { if(!translators.length) { // we lied. we can't really translate this file. - throw "No translator found for handled RIS, Refer or ISI file" + Zotero.debug("No translator found to handle this file"); + return false; } // translate using first available @@ -302,26 +338,33 @@ Zotero.MIMETypeHandler = new function () { inputStream.close(); var me = this; - Zotero.Promise.resolve(_typeHandlers[this._contentType](readString, (this._request.name ? this._request.name : null), - this._contentType, channel)).catch(function(e) { - // if there was an error, handle using nsIExternalHelperAppService - var externalHelperAppService = Components.classes["@mozilla.org/uriloader/external-helper-app-service;1"]. - getService(Components.interfaces.nsIExternalHelperAppService); - var frontWindow = Components.classes["@mozilla.org/embedcomp/window-watcher;1"]. - getService(Components.interfaces.nsIWindowWatcher).activeWindow; - - var inputStream = me._storageStream.newInputStream(0); - var streamListener = externalHelperAppService.doContent(me._contentType, me._request, frontWindow, null); - if (streamListener) { - streamListener.onStartRequest(channel, context); - streamListener.onDataAvailable(me._request, context, inputStream, 0, me._storageStream.length); - streamListener.onStopRequest(channel, context, status); - } - - // then throw our error - throw e; - }).fin(function() { - me._storageStream.close(); - }).done(); + Zotero.Promise.resolve( + _typeHandlers[this._contentType](readString, (this._request.name ? this._request.name : null), + this._contentType, + channel) + ) + .catch(function(e) { + Zotero.debug(e, 2); + + // if there was an error, handle using nsIExternalHelperAppService + var externalHelperAppService = Components.classes["@mozilla.org/uriloader/external-helper-app-service;1"]. + getService(Components.interfaces.nsIExternalHelperAppService); + var frontWindow = Components.classes["@mozilla.org/embedcomp/window-watcher;1"]. + getService(Components.interfaces.nsIWindowWatcher).activeWindow; + + var inputStream = me._storageStream.newInputStream(0); + var streamListener = externalHelperAppService.doContent(me._contentType, me._request, frontWindow, null); + if (streamListener) { + streamListener.onStartRequest(channel, context); + streamListener.onDataAvailable(me._request, context, inputStream, 0, me._storageStream.length); + streamListener.onStopRequest(channel, context, status); + } + + // then throw our error + throw e; + }) + .finally(function() { + me._storageStream.close(); + });; } } diff --git a/chrome/content/zotero/xpcom/openurl.js b/chrome/content/zotero/xpcom/openurl.js @@ -74,7 +74,7 @@ Zotero.OpenURL = new function() { if(resolver.getElementsByTagName("Z39.88-2004").length > 0) { var version = "1.0"; - } else if(resolver.getElementsByTagName("OpenUrl 0.1").length > 0) { + } else if(resolver.getElementsByTagName("OpenURL_0.1").length > 0) { var version = "0.1"; } else { continue; diff --git a/chrome/content/zotero/xpcom/quickCopy.js b/chrome/content/zotero/xpcom/quickCopy.js @@ -279,11 +279,10 @@ Zotero.QuickCopy = new function() { for(var i=0; i<ps.length; i++) { var p = ps[i], paddingLeft = p.style.paddingLeft; - Zotero.debug("PADDING LEFT "+paddingLeft); if(paddingLeft && paddingLeft.substr(paddingLeft.length-2) === "px") { var paddingPx = parseInt(paddingLeft, 10), ztabs = ""; - for(var i=30; i<=paddingPx; i+=30) ztabs += ZTAB; + for (let j = 30; j <= paddingPx; j += 30) ztabs += ZTAB; p.insertBefore(textDoc.createTextNode(ztabs), p.firstChild); } } diff --git a/chrome/content/zotero/xpcom/schema.js b/chrome/content/zotero/xpcom/schema.js @@ -28,6 +28,9 @@ Zotero.Schema = new function(){ this.dbInitialized = false; this.goToChangeLog = false; + var _schemaUpdateDeferred = Zotero.Promise.defer(); + this.schemaUpdatePromise = _schemaUpdateDeferred.promise; + var _dbVersions = []; var _schemaVersions = []; var _maxCompatibility = 1; @@ -80,7 +83,10 @@ Zotero.Schema = new function(){ .spread(function (userdata, compatibility) { if (!userdata) { Zotero.debug('Database does not exist -- creating\n'); - return _initializeSchema().return(true); + return _initializeSchema() + .then(function() { + return _schemaUpdateDeferred.resolve(true); + }); } // We don't handle upgrades from pre-Zotero 2.1 databases @@ -164,7 +170,9 @@ Zotero.Schema = new function(){ /*Zotero.initializationPromise .delay(5000) .then(function () Zotero.Schema.updateBundledFiles(null, false, true)) - .done();*/ + .finally(function () { + _schemaUpdateDeferred.resolve(true); + })*/ return updated; }); diff --git a/chrome/content/zotero/xpcom/server_connector.js b/chrome/content/zotero/xpcom/server_connector.js @@ -344,7 +344,11 @@ Zotero.Server.Connector.SaveItem.prototype = { } catch(e) {} var cookieSandbox = data["uri"] ? new Zotero.CookieSandbox(null, data["uri"], - data["cookie"] || "", url.userAgent) : null; + data["detailedCookies"] ? "" : data["cookie"] || "", url.userAgent) : null; + if(cookieSandbox && data.detailedCookies) { + cookieSandbox.addCookiesFromHeader(data.detailedCookies); + } + for(var i=0; i<data.items.length; i++) { Zotero.Server.Connector.AttachmentProgressManager.add(data.items[i].attachments); } diff --git a/chrome/content/zotero/xpcom/storage/webdav.js b/chrome/content/zotero/xpcom/storage/webdav.js @@ -959,13 +959,7 @@ Zotero.Sync.Storage.WebDAV = (function () { .createInstance(nsIWBP); wbp.persistFlags = nsIWBP.PERSIST_FLAGS_BYPASS_CACHE; wbp.progressListener = listener; - try { - wbp.saveURI(uri, null, null, null, null, destFile); - } catch(e if e.name === "NS_ERROR_XPC_NOT_ENOUGH_ARGS") { - // https://bugzilla.mozilla.org/show_bug.cgi?id=794602 - // XXX Always use when we no longer support Firefox < 18 - wbp.saveURI(uri, null, null, null, null, destFile, null); - } + Zotero.Utilities.Internal.saveURI(wbp, uri, destFile); return deferred.promise; }); diff --git a/chrome/content/zotero/xpcom/storage/zfs.js b/chrome/content/zotero/xpcom/storage/zfs.js @@ -944,13 +944,7 @@ Zotero.Sync.Storage.ZFS = (function () { .createInstance(nsIWBP); wbp.persistFlags = nsIWBP.PERSIST_FLAGS_BYPASS_CACHE; wbp.progressListener = listener; - try { - wbp.saveURI(uri, null, null, null, null, destFile); - } catch(e if e.name === "NS_ERROR_XPC_NOT_ENOUGH_ARGS") { - // https://bugzilla.mozilla.org/show_bug.cgi?id=794602 - // XXX Always use when we no longer support Firefox < 18 - wbp.saveURI(uri, null, null, null, null, destFile, null); - } + Zotero.Utilities.Internal.saveURI(wbp, uri, destFile); return deferred.promise; }); diff --git a/chrome/content/zotero/xpcom/sync.js b/chrome/content/zotero/xpcom/sync.js @@ -1028,7 +1028,10 @@ Zotero.Sync.Runner = new function () { var button = doc.createElement('button'); button.setAttribute('label', buttonText); - button.onclick = buttonCallback; + button.onclick = function () { + buttonCallback.call(this); + panel.hidePopup(); + } buttons.appendChild(button); } @@ -1924,6 +1927,9 @@ Zotero.Sync.Server = new function () { sql = "INSERT INTO version VALUES ('syncdeletelog', ?)"; Zotero.DB.query(sql, Zotero.Date.getUnixTimestamp()); + var sql = "UPDATE syncedSettings SET synced=0"; + Zotero.DB.query(sql); + Zotero.DB.commitTransaction(); } @@ -2104,7 +2110,19 @@ Zotero.Sync.Server = new function () { var background = Zotero.Sync.Runner.background; setTimeout(function () { var libraryID = parseInt(firstChild.getAttribute('libraryID')); - var group = Zotero.Groups.getByLibraryID(libraryID); + + try { + var group = Zotero.Groups.getByLibraryID(libraryID); + } + catch (e) { + // Not sure how this is possible, but it's affecting some people + // TODO: Clean up in schema updates with FK check + if (!Zotero.Libraries.exists(libraryID)) { + let sql = "DELETE FROM syncedSettings WHERE libraryID=?"; + Zotero.DB.query(sql, libraryID); + return; + } + } var ps = Components.classes["@mozilla.org/embedcomp/prompt-service;1"] .getService(Components.interfaces.nsIPromptService); @@ -2132,6 +2150,42 @@ Zotero.Sync.Server = new function () { }, 1); break; + case 'NOTE_TOO_LONG': + if (!Zotero.Sync.Runner.background) { + let libraryKey = xmlhttp.responseXML.firstChild.getElementsByTagName('item'); + if (libraryKey.length) { + let [libraryID, key] = libraryKey[0].textContent.split('/'); + if (Zotero.Libraries.getType(libraryID) == 'user') { + libraryID = null; + } + let item = Zotero.Items.getByLibraryAndKey(libraryID, key); + if (item) { + let msg = xmlhttp.responseXML.firstChild.getElementsByTagName('error')[0].textContent; + let e = new Zotero.Error( + msg, + 0, + { + dialogText: msg, + dialogButtonText: Zotero.getString('pane.items.showItemInLibrary'), + dialogButtonCallback: function () { + var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"] + .getService(Components.interfaces.nsIWindowMediator); + var win = wm.getMostRecentWindow("navigator:browser"); + win.ZoteroPane.selectItem(item.id); + } + } + ); + _error(e); + } + else { + let msg = "Long note " + libraryKey[0].textContent + " not found!"; + Zotero.debug(msg, 1); + Components.utils.reportError(msg); + } + } + } + break; + case 'TAG_TOO_LONG': if (!Zotero.Sync.Runner.background) { var tag = xmlhttp.responseXML.firstChild.getElementsByTagName('tag'); @@ -2419,7 +2473,7 @@ Zotero.Sync.Server = new function () { function _error(e, extraInfo, skipReload) { - if (e.name && e.name == 'ZOTERO_ERROR') { + if (e instanceof Zotero.Error) { switch (e.error) { case Zotero.Error.ERROR_MISSING_OBJECT: case Zotero.Error.ERROR_FULL_SYNC_REQUIRED: diff --git a/chrome/content/zotero/xpcom/translation/translate.js b/chrome/content/zotero/xpcom/translation/translate.js @@ -590,6 +590,32 @@ Zotero.Translate.Sandbox = { if(setShortTitle) item.shortTitle = title; } + /* Clean up ISBNs + * Allow multiple ISBNs, but... + * (1) validate all ISBNs + * (2) convert all ISBNs to ISBN-13 + * (3) remove any duplicates + * (4) separate them with space + */ + if (item.ISBN) { + // Match ISBNs with groups separated by various dashes or even spaces + var isbnRe = /\b(?:97[89][\s\x2D\xAD\u2010-\u2015\u2043\u2212]*)?(?:\d[\s\x2D\xAD\u2010-\u2015\u2043\u2212]*){9}[\dx](?![\x2D\xAD\u2010-\u2015\u2043\u2212])\b/gi, + validISBNs = [], + isbn; + while (isbn = isbnRe.exec(item.ISBN)) { + var validISBN = Zotero.Utilities.cleanISBN(isbn[0]); + if (!validISBN) { + // Back up and move up one character + isbnRe.lastIndex = isbn.index + 1; + continue; + } + + var isbn13 = Zotero.Utilities.toISBN13(validISBN); + if (validISBNs.indexOf(isbn13) == -1) validISBNs.push(isbn13); + } + item.ISBN = validISBNs.join(' '); + } + // refuse to save very long tags if(item.tags) { for(var i=0; i<item.tags.length; i++) { @@ -605,6 +631,13 @@ Zotero.Translate.Sandbox = { for(var i=0; i<item.attachments.length; i++) { var attachment = item.attachments[i]; + + // Web translators are not allowed to use attachment.path + if (attachment.path) { + if (!attachment.url) attachment.url = attachment.path; + delete attachment.path; + } + if(attachment.url) { // Remap attachment (but not link) URLs attachment.url = translate.resolveURL(attachment.url, attachment.snapshot === false); @@ -1189,16 +1222,22 @@ Zotero.Translate.Base.prototype = { } else { resolved = url; } - } else if(Zotero.isFx) { + } else if(Zotero.isFx && this.location) { resolved = Components.classes["@mozilla.org/network/io-service;1"]. getService(Components.interfaces.nsIIOService). newURI(this.location, "", null).resolve(url); - } else if(Zotero.isNode) { + } else if(Zotero.isNode && this.location) { resolved = require('url').resolve(this.location, url); + } else if (this.document) { + var a = this.document.createElement('a'); + a.href = url; + resolved = a.href; + } else if (url.indexOf('//') == 0) { + // Protocol-relative URL with no associated web page + // Use HTTP by default + resolved = 'http:' + url; } else { - var a = document.createElement('a'); - a.href = url; - resolved = a.href; + throw new Error('Cannot resolve relative URL without an associated web page: ' + url); } /*var m = hostPortRe.exec(resolved); @@ -1500,28 +1539,7 @@ Zotero.Translate.Base.prototype = { "Zotero.Collection.prototype.complete = function() { Zotero._collectionDone(this); };"; } - if(Zotero.isFx && !Zotero.isBookmarklet) { - // workaround for inadvertant attempts to pass E4X back from sandbox - src += "Zotero.Item.prototype.complete = function() { "+ - "for(var key in this) {"+ - "if("+createArrays+".indexOf(key) !== -1) {"+ - "for each(var item in this[key]) {"+ - "for(var key2 in item) {"+ - "if(typeof item[key2] === 'xml') {"+ - "item[key2] = item[key2].toString();"+ - "}"+ - "}"+ - "}"+ - "} else if(typeof this[key] === 'xml') {"+ - "this[key] = this[key].toString();"+ - "}"+ - "}"; - } else { - src += "Zotero.Item.prototype.complete = function() { "; - } - - src += "Zotero._itemDone(this);"+ - "}"; + src += "Zotero.Item.prototype.complete = function() { Zotero._itemDone(this); }"; this._sandboxManager.eval(src); this._sandboxManager.importObject(this.Sandbox, this); @@ -1690,7 +1708,9 @@ Zotero.Translate.Web.prototype._getSandboxLocation = function() { * Pass document and location to detect* and do* functions */ Zotero.Translate.Web.prototype._getParameters = function() { - if (Zotero.Translate.DOMWrapper && Zotero.Translate.DOMWrapper.isWrapped(this.document)) { + if (Zotero.Translate.DOMWrapper && + Zotero.Translate.DOMWrapper.isWrapped(this.document) && + Zotero.platformMajorVersion >= 35) { return [this._sandboxManager.wrap(Zotero.Translate.DOMWrapper.unwrap(this.document), null, this.document.__wrapperOverrides), this.location]; } else { diff --git a/chrome/content/zotero/xpcom/translation/translate_firefox.js b/chrome/content/zotero/xpcom/translation/translate_firefox.js @@ -401,14 +401,17 @@ Zotero.Translate.SandboxManager = function(sandboxLocation) { this.sandbox.DOMParser = sandboxLocation.DOMParser; } else { this.sandbox.DOMParser = function() { - this.__exposedProps__ = {"parseFromString":"r"}; - this.parseFromString = function(str, contentType) { + var obj = new sandbox.Object(); + var wrappedObj = obj.wrappedJSObject || obj; + wrappedObj.__exposedProps__ = {"parseFromString":"r"}; + wrappedObj.parseFromString = function(str, contentType) { var xhr = sandbox.XMLHttpRequest(); xhr.open("GET", "data:"+contentType+";charset=utf-8,"+encodeURIComponent(str), false); xhr.send(); if (!xhr.responseXML) throw new Error("error parsing XML"); return xhr.responseXML; } + return obj; }; } this.sandbox.DOMParser.__exposedProps__ = {"prototype":"r"}; @@ -416,9 +419,12 @@ Zotero.Translate.SandboxManager = function(sandboxLocation) { this.sandbox.XMLSerializer = function() { var s = Components.classes["@mozilla.org/xmlextras/xmlserializer;1"] .createInstance(Components.interfaces.nsIDOMSerializer); - this.serializeToString = function(doc) { + var obj = new sandbox.Object(); + var wrappedObj = obj.wrappedJSObject || obj; + wrappedObj.serializeToString = function(doc) { return s.serializeToString(Zotero.Translate.DOMWrapper.unwrap(doc)); }; + return obj; }; this.sandbox.XMLSerializer.__exposedProps__ = {"prototype":"r"}; this.sandbox.XMLSerializer.prototype = {"__exposedProps__":{"serializeToString":"r"}}; @@ -443,10 +449,11 @@ Zotero.Translate.SandboxManager = function(sandboxLocation) { target = new XPCNativeWrapper(target); } var ret = new sandbox.Object(); - ret.wrappedJSObject.has = function(x, prop) { + var wrappedRet = ret.wrappedJSObject || ret; + wrappedRet.has = function(x, prop) { return overrides.hasOwnProperty(prop) || prop in target; }; - ret.wrappedJSObject.get = function(x, prop, receiver) { + wrappedRet.get = function(x, prop, receiver) { if (prop === "__wrappedObject") return target; if (prop === "__wrappingManager") return me; var y = overrides.hasOwnProperty(prop) ? overrides[prop] : target[prop]; @@ -461,10 +468,10 @@ Zotero.Translate.SandboxManager = function(sandboxLocation) { return wrap(y.apply(target, args)); } : new sandbox.Object()); }; - ret.wrappedJSObject.ownKeys = function(x) { + wrappedRet.ownKeys = function(x) { return Components.utils.cloneInto(target.getOwnPropertyNames(), sandbox); }; - ret.wrappedJSObject.enumerate = function(x) { + wrappedRet.enumerate = function(x) { var y = new sandbox.Array(); for (var i in target) y.wrappedJSObject.push(i); return y; diff --git a/chrome/content/zotero/xpcom/translation/translate_item.js b/chrome/content/zotero/xpcom/translation/translate_item.js @@ -226,14 +226,65 @@ Zotero.Translate.ItemSaver.prototype = { return false; } - if(!attachment.path) { + if (attachment.path) { + var url = Zotero.Attachments.cleanAttachmentURI(attachment.path, false); + if (url && /^(?:https?|ftp):/.test(url)) { + // A web URL. Don't bother parsing it as path below + // Some paths may look like URIs though, so don't just test for 'file' + // E.g. C:\something + if (!attachment.url) attachment.url = attachment.path; + delete attachment.path; + } + } + + let done = false; + if (attachment.path) { + var file = this._parsePath(attachment.path); + if(!file) { + let asUrl = Zotero.Attachments.cleanAttachmentURI(attachment.path); + if (!attachment.url && !asUrl) { + let e = "Translate: Could not parse attachment path <" + attachment.path + ">"; + Zotero.debug(e, 2); + attachmentCallback(attachment, false, e); + return false; + } else if (!attachment.url && asUrl) { + Zotero.debug("Translate: attachment path looks like a URI: " + attachment.path); + attachment.url = asUrl; + delete attachment.path; + } + } else { + if (attachment.url) { + attachment.linkMode = "imported_url"; + var myID = yield Zotero.Attachments.importSnapshotFromFile({ + file: file, + url: attachment.url, + title: attachment.title, + contentType: attachment.mimeType, + charset: attachment.charset, + parentItemID: parentID + }); + } + else { + attachment.linkMode = "imported_file"; + var myID = yield Zotero.Attachments.importFromFile({ + file: file, + parentItemID: parentID + }); + } + attachmentCallback(attachment, 100); + done = true; + } + } + + if(!done) { let url = Zotero.Attachments.cleanAttachmentURI(attachment.url); if (!url) { - let e = "Translate: Invalid attachment URL specified <" + attachment.url + ">"; + let e = "Translate: Invalid attachment.url specified <" + attachment.url + ">"; Zotero.debug(e, 2); attachmentCallback(attachment, false, e); return false; } + attachment.url = url; url = Components.classes["@mozilla.org/network/io-service;1"] .getService(Components.interfaces.nsIIOService) @@ -241,17 +292,17 @@ Zotero.Translate.ItemSaver.prototype = { // see if this is actually a file URL if(url.scheme == "file") { - attachment.path = attachment.url; - attachment.url = false; + let e = "Translate: Local file attachments cannot be specified in attachment.url"; + Zotero.debug(e, 2); + attachmentCallback(attachment, false, e); + return false; } else if(url.scheme != "http" && url.scheme != "https") { let e = "Translate: " + url.scheme + " protocol is not allowed for attachments from translators."; Zotero.debug(e, 2); attachmentCallback(attachment, false, e); return false; } - } - - if(!attachment.path) { + // At this point, must be a valid HTTP/HTTPS url attachment.linkMode = "linked_file"; var newItem = yield Zotero.Attachments.linkFromURL({ @@ -269,29 +320,6 @@ Zotero.Translate.ItemSaver.prototype = { } Zotero.debug("Translate: Created attachment; id is " + newItem.id, 4); attachmentCallback(attachment, 100); - } else { - var file = this._parsePath(attachment.path); - if(!file) return; - - if (attachment.url) { - attachment.linkMode = "imported_url"; - var newItem = yield Zotero.Attachments.importSnapshotFromFile({ - file: file, - url: attachment.url, - title: attachment.title, - contentType: attachment.mimeType, - charset: attachment.charset, - parentItemID: parentID - }); - } - else { - attachment.linkMode = "imported_file"; - var newItem = yield Zotero.Attachments.importFromFile({ - file: file, - parentItemID: parentID - }); - } - attachmentCallback(attachment, 100); } // save fields @@ -311,43 +339,73 @@ Zotero.Translate.ItemSaver.prototype = { "_parsePathURI":function(path) { try { var uri = Services.io.newURI(path, "", this._baseURI); + } catch(e) { + Zotero.debug("Translate: " + path + " is not a valid URI"); + return false; + } + + try { var file = uri.QueryInterface(Components.interfaces.nsIFileURL).file; - if(file.path != '/' && file.exists()) return file; } catch (e) { - Zotero.logError(e); + Zotero.debug("Translate: " + uri.spec + " is not a file URI"); + return false; } - return false; + + if(file.path == '/') { + Zotero.debug("Translate: " + path + " points to root directory"); + return false; + } + + if(!file.exists()) { + Zotero.debug("Translate: File at " + file.path + " does not exist"); + return false; + } + + return file; }, "_parseAbsolutePath":function(path) { + var file = Components.classes["@mozilla.org/file/local;1"]. + createInstance(Components.interfaces.nsILocalFile); try { - // First, try to parse absolute paths using initWithPath - var file = Components.classes["@mozilla.org/file/local;1"]. - createInstance(Components.interfaces.nsILocalFile); file.initWithPath(path); - if(file.exists()) return file; } catch(e) { - Zotero.logError(e); + Zotero.debug("Translate: Invalid absolute path: " + path); + return false; } - return false; + + if(!file.exists()) { + Zotero.debug("Translate: File at absolute path " + file.path + " does not exist"); + return false; + } + + return file; }, "_parseRelativePath":function(path) { - try { - var file = this._baseURI.QueryInterface(Components.interfaces.nsIFileURL).file.parent; - var splitPath = path.split(/\//g); - for(var i=0; i<splitPath.length; i++) { - if(splitPath[i] !== "") file.append(splitPath[i]); - } - if(file.exists()) return file; - } catch(e) { - Zotero.logError(e); + if (!this._baseURI) { + Zotero.debug("Translate: Cannot parse as relative path. No base URI available."); + return false; } - return false; + + var file = this._baseURI.QueryInterface(Components.interfaces.nsIFileURL).file.parent; + var splitPath = path.split(/\//g); + for(var i=0; i<splitPath.length; i++) { + if(splitPath[i] !== "") file.append(splitPath[i]); + } + + if(!file.exists()) { + Zotero.debug("Translate: File at " + file.path + " does not exist"); + return false; + } + + return file; }, "_parsePath":function(path) { + Zotero.debug("Translate: Attempting to parse path " + path); + var file; // First, try to parse as absolute path diff --git a/chrome/content/zotero/xpcom/utilities.js b/chrome/content/zotero/xpcom/utilities.js @@ -278,13 +278,20 @@ Zotero.Utilities = { /** * Clean and validate ISBN. * Return isbn if valid, otherwise return false + * @param {String} isbn + * @param {Boolean} [dontValidate=false] Do not validate check digit + * @return {String|Boolean} Valid ISBN or false */ - "cleanISBN":function(/**String*/ isbn) { + "cleanISBN":function(isbn, dontValidate) { isbn = isbn.replace(/[^0-9a-z]+/ig, '').toUpperCase() //we only want to ignore punctuation, spaces - .match(/(?:97[89][0-9]{10}|[0-9]{9}[0-9X])/); //13 digit or 10 digit + .match(/\b(?:97[89][0-9]{10}|[0-9]{9}[0-9X])\b/); //13 digit or 10 digit if(!isbn) return false; isbn = isbn[0]; - + + if (dontValidate && (isbn.length == 10 || isbn.length == 13)) { + return isbn; + } + if(isbn.length == 10) { // Verify ISBN-10 checksum var sum = 0; @@ -310,6 +317,34 @@ Zotero.Utilities = { return false; }, + + /* + * Convert ISBN 10 to ISBN 13 + * @param {String} isbn ISBN 10 or ISBN 13 + * cleanISBN + * @return {String} ISBN-13 + */ + "toISBN13": function(isbn) { + if (!/^(?:97[89])?\d{9}[\dxX]$/.test(isbn) + && !(isbn = Zotero.Utilities.cleanISBN(isbn)) + ) { + throw new Error('Invalid ISBN: ' + isbn); + } + + if (isbn.length == 13) return isbn; // Recalculate check digit? + + isbn = '978' + isbn.substr(0,9); + + var sum = 0; + for (var i = 0; i < 12; i++) { + sum += isbn[i] * (i%2 ? 3 : 1); + } + + var checkDigit = 10 - (sum % 10); + if (checkDigit == 10) checkDigit = 0; + + return isbn + checkDigit; + }, /** * Clean and validate ISSN. @@ -1162,15 +1197,15 @@ Zotero.Utilities = { // document, we need to use selectNodes if(namespaces) { var ieNamespaces = []; - for(var i in namespaces) { - if(!i) continue; - ieNamespaces.push('xmlns:'+i+'="'+Zotero.Utilities.htmlSpecialChars(namespaces[i])+'"'); + for(var j in namespaces) { + if(!j) continue; + ieNamespaces.push('xmlns:'+j+'="'+Zotero.Utilities.htmlSpecialChars(namespaces[j])+'"'); } rootDoc.setProperty("SelectionNamespaces", ieNamespaces.join(" ")); } var nodes = element.selectNodes(xpath); - for(var i=0; i<nodes.length; i++) { - results.push(nodes[i]); + for(var j=0; j<nodes.length; j++) { + results.push(nodes[j]); } } else { throw new Error("XPath functionality not available"); @@ -1289,9 +1324,10 @@ Zotero.Utilities = { level_padding += " "; } - //Special handling for Error + //Special handling for Error or Exception + var isException = Zotero.isFx && !Zotero.isBookmarklet && obj instanceof Components.interfaces.nsIException; var isError = obj instanceof Error; - if (!isError && obj.constructor) { + if (!isException && !isError && obj.constructor && obj.stack) { switch (obj.constructor.name) { case 'Error': case 'EvalError': @@ -1303,8 +1339,16 @@ Zotero.Utilities = { isError = true; } } - if (isError) { - return (obj.constructor.name ? obj.constructor.name : 'Error') + ': ' + + if (isError || isException) { + var header = ''; + if (isError) { + header = obj.constructor.name ? obj.constructor.name : 'Error'; + } else { + header = (obj.name ? obj.name + ' ' : '') + 'Exception'; + } + + return header + ': ' + (obj.message ? ('' + obj.message).replace(/^/gm, level_padding).trim() : '') + '\n' + level_padding + "===== Stack Trace =====\n" + (obj.stack ? obj.stack.trim().replace(/^(?=.)/gm, level_padding) : '') @@ -1539,89 +1583,84 @@ Zotero.Utilities = { /** * Converts an item from toArray() format to citeproc-js JSON - * @param {Zotero.Item} item + * @param {Zotero.Item} zoteroItem * @return {Object} The CSL item */ - "itemToCSLJSON":function(item) { - if(item instanceof Zotero.Item) { - item = item.toArray(); + "itemToCSLJSON":function(zoteroItem) { + if (zoteroItem instanceof Zotero.Item) { + zoteroItem = zoteroItem.toArray(); } - var itemType = item.itemType; - var cslType = CSL_TYPE_MAPPINGS[itemType]; - if(!cslType) cslType = "article"; + var cslType = CSL_TYPE_MAPPINGS[zoteroItem.itemType] || "article"; + var itemTypeID = Zotero.ItemTypes.getID(zoteroItem.itemType); var cslItem = { - 'id':item.itemID, + 'id':zoteroItem.itemID, 'type':cslType }; - // Map text fields - var itemTypeID = Zotero.ItemTypes.getID(itemType); + // get all text variables (there must be a better way) for(var variable in CSL_TEXT_MAPPINGS) { var fields = CSL_TEXT_MAPPINGS[variable]; for(var i=0, n=fields.length; i<n; i++) { - var field = fields[i], value = undefined; + var field = fields[i], + value = null; - if(field in item) { - value = item[field]; + if(field in zoteroItem) { + value = zoteroItem[field]; } else { var fieldID = Zotero.ItemFields.getID(field), - baseMapping + baseMapping; if(Zotero.ItemFields.isValidForType(fieldID, itemTypeID) && (baseMapping = Zotero.ItemFields.getBaseIDFromTypeAndField(itemTypeID, fieldID))) { - value = item[Zotero.ItemTypes.getName(baseMapping)]; + value = zoteroItem[Zotero.ItemTypes.getName(baseMapping)]; } } - if(!value) continue; + if (!value) continue; - var valueLength = value.length; - if(valueLength) { + if (typeof value == 'string') { + if (field == 'ISBN') { + // Only use the first ISBN in CSL JSON + var isbn = value.match(/^(?:97[89]-?)?(?:\d-?){9}[\dx](?!-)\b/i); + if (isbn) value = isbn[0]; + } + // Strip enclosing quotes - if(value[0] === '"' && value[valueLength-1] === '"') { - value = value.substr(1, valueLength-2); + if(value.charAt(0) == '"' && value.indexOf('"', 1) == value.length - 1) { + value = value.substring(1, value.length-1); } + cslItem[variable] = value; + break; } - - cslItem[variable] = value; - break; } } // separate name variables - var authorID = Zotero.CreatorTypes.getPrimaryIDForType(itemTypeID); - var authorFieldName = Zotero.CreatorTypes.getName(authorID); - var creators = item.creators; - if(creators) { - for(var i=0, n=creators.length; i<n; i++) { - var creator = creators[i]; - - if(creator.creatorType == authorFieldName) { - var creatorType = "author"; - } else { - var creatorType = CSL_NAMES_MAPPINGS[creator.creatorType] - } - - if(!creatorType) continue; - - if(creator.fieldMode == 1) { - var nameObj = {'literal':creator.lastName}; - } else { - var nameObj = {'family':creator.lastName, 'given':creator.firstName}; - } - - if(cslItem[creatorType]) { - cslItem[creatorType].push(nameObj); - } else { - cslItem[creatorType] = [nameObj]; - } + var author = Zotero.CreatorTypes.getName(Zotero.CreatorTypes.getPrimaryIDForType(itemTypeID)); + var creators = zoteroItem.creators; + for(var i=0; i<creators.length; i++) { + var creator = creators[i]; + var creatorType = creator.creatorType; + if(creatorType == author) { + creatorType = "author"; + } + + creatorType = CSL_NAMES_MAPPINGS[creatorType]; + if(!creatorType) continue; + + var nameObj = {'family':creator.lastName, 'given':creator.firstName}; + + if(cslItem[creatorType]) { + cslItem[creatorType].push(nameObj); + } else { + cslItem[creatorType] = [nameObj]; } } // get date variables for(var variable in CSL_DATE_MAPPINGS) { - var date = item[CSL_DATE_MAPPINGS[variable]]; + var date = zoteroItem[CSL_DATE_MAPPINGS[variable]]; if(date) { var dateObj = Zotero.Date.strToDate(date); // otherwise, use date-parts @@ -1647,8 +1686,17 @@ Zotero.Utilities = { } } } + + // extract PMID + var extra = zoteroItem.extra; + if(typeof extra === "string") { + var m = /(?:^|\n)PMID:\s*([0-9]+)/.exec(extra); + if(m) cslItem.PMID = m[1]; + m = /(?:^|\n)PMCID:\s*((?:PMC)?[0-9]+)/.exec(extra); + if(m) cslItem.PMCID = m[1]; + } - //this._cache[item.id] = cslItem; + //this._cache[zoteroItem.id] = cslItem; return cslItem; }, diff --git a/chrome/content/zotero/xpcom/utilities_internal.js b/chrome/content/zotero/xpcom/utilities_internal.js @@ -294,6 +294,25 @@ Zotero.Utilities.Internal = { } }, + + /** + * saveURI wrapper function + * @param {nsIWebBrowserPersist} nsIWebBrowserPersist + * @param {nsIURI} source URL + * @param {nsISupports} target file + */ + saveURI: function (wbp, source, target) { + // Firefox 35 and below + try { + wbp.saveURI(source, null, null, null, null, target, null); + } + // Firefox 36+ needs one more parameter + catch (e if e.name === "NS_ERROR_XPC_NOT_ENOUGH_ARGS") { + wbp.saveURI(source, null, null, null, null, null, target, null); + } + }, + + /** * Launch a process * @param {nsIFile} cmd Path to command to launch @@ -510,6 +529,81 @@ Zotero.Utilities.Internal = { }, 0, 0, null); return pipe.inputStream; + }, + + + /** + * Hyphenate an ISBN based on the registrant table available from + * https://www.isbn-international.org/range_file_generation + * See isbn.js + * + * @param {String} isbn ISBN-10 or ISBN-13 + * @param {Boolean} dontValidate Do not attempt to validate check digit + * @return {String} Hyphenated ISBN or empty string if invalid ISBN is supplied + */ + "hyphenateISBN": function(isbn, dontValidate) { + isbn = Zotero.Utilities.cleanISBN(isbn, dontValidate); + if (!isbn) return ''; + + var ranges = Zotero.ISBN.ranges, + parts = [], + uccPref, + i = 0; + if (isbn.length == 10) { + uccPref = '978'; + } else { + uccPref = isbn.substr(0,3); + if (!ranges[uccPref]) return ''; // Probably invalid ISBN, but the checksum is OK + parts.push(uccPref); + i = 3; // Skip ahead + } + + var group = '', + found = false; + while (i < isbn.length-3 /* check digit, publication, registrant */) { + group += isbn.charAt(i); + if (ranges[uccPref][group]) { + parts.push(group); + found = true; + break; + } + i++; + } + + if (!found) return ''; // Did not find a valid group + + // Array of registrant ranges that are valid for a group + // Array always contains an even number of values (as string) + // From left to right, the values are paired so that the first indicates a + // lower bound of the range and the right indicates an upper bound + // The ranges are sorted by increasing number of characters + var regRanges = ranges[uccPref][group]; + + var registrant = ''; + found = false; + i++; // Previous loop 'break'ed early + while (!found && i < isbn.length-2 /* check digit, publication */) { + registrant += isbn.charAt(i); + + for(let j=0; j < regRanges.length && registrant.length >= regRanges[j].length; j+=2) { + if(registrant.length == regRanges[j].length + && registrant >= regRanges[j] && registrant <= regRanges[j+1] // Falls within the range + ) { + parts.push(registrant); + found = true; + break; + } + } + + i++; + } + + if (!found) return ''; // Outside of valid range, but maybe we need to update our data + + parts.push(isbn.substring(i,isbn.length-1)); // Publication is the remainder up to last digit + parts.push(isbn.charAt(isbn.length-1)); // Check digit + + return parts.join('-'); } } diff --git a/chrome/content/zotero/xpcom/zotero.js b/chrome/content/zotero/xpcom/zotero.js @@ -52,6 +52,7 @@ Components.utils.import("resource://gre/modules/osfile.jsm"); this.getAncestorByTagName = getAncestorByTagName; this.randomString = randomString; this.moveToUnique = moveToUnique; + this.reinit = reinit; // defined in zotero-service.js // Public properties this.initialized = false; @@ -174,6 +175,8 @@ Components.utils.import("resource://gre/modules/osfile.jsm"); this.mainThread = Services.tm.mainThread; + this.clientName = ZOTERO_CONFIG.CLIENT_NAME; + var appInfo = Components.classes["@mozilla.org/xre/app-info;1"] .getService(Components.interfaces.nsIXULAppInfo); this.platformVersion = appInfo.platformVersion; @@ -252,7 +255,8 @@ Components.utils.import("resource://gre/modules/osfile.jsm"); else { Zotero.dir = 'ltr'; } - + Zotero.rtl = Zotero.dir == 'rtl'; + // Make sure that Zotero Standalone is not running as root if(Zotero.isStandalone && !Zotero.isWin) _checkRoot(); @@ -2240,7 +2244,7 @@ Zotero.Prefs = new function(){ case branch.PREF_BOOL: return branch.getBoolPref(pref); case branch.PREF_STRING: - return branch.getCharPref(pref); + return '' + branch.getComplexValue(pref, Components.interfaces.nsISupportsString); case branch.PREF_INT: return branch.getIntPref(pref); } @@ -2327,6 +2331,63 @@ Zotero.Prefs = new function(){ // TODO: parse settings XML } + // Handlers for some Zotero preferences + var _handlers = [ + [ "automaticScraperUpdates", function(val) { + if (val){ + Zotero.Schema.updateFromRepository(); + } + else { + Zotero.Schema.stopRepositoryTimer(); + } + }], + [ "note.fontSize", function(val) { + if (val < 6) { + Zotero.Prefs.set('note.fontSize', 11); + } + }], + [ "zoteroDotOrgVersionHeader", function(val) { + if (val) { + Zotero.VersionHeader.register(); + } + else { + Zotero.VersionHeader.unregister(); + } + }], + [ "zoteroDotOrgVersionHeader", function(val) { + if (val) { + Zotero.VersionHeader.register(); + } + else { + Zotero.VersionHeader.unregister(); + } + }], + [ "sync.autoSync", function(val) { + if (val) { + Zotero.Sync.Runner.IdleListener.register(); + } + else { + Zotero.Sync.Runner.IdleListener.unregister(); + } + }], + [ "search.quicksearch-mode", function(val) { + var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"] + .getService(Components.interfaces.nsIWindowMediator); + var enumerator = wm.getEnumerator("navigator:browser"); + while (enumerator.hasMoreElements()) { + var win = enumerator.getNext(); + if (!win.ZoteroPane) continue; + Zotero.updateQuickSearchBox(win.ZoteroPane.document); + } + + var enumerator = wm.getEnumerator("zotero:item-selector"); + while (enumerator.hasMoreElements()) { + var win = enumerator.getNext(); + if (!win.Zotero) continue; + Zotero.updateQuickSearchBox(win.document); + } + }] + ]; // // Methods to register a preferences observer @@ -2334,6 +2395,11 @@ Zotero.Prefs = new function(){ function register(){ this.prefBranch.QueryInterface(Components.interfaces.nsIPrefBranch2); this.prefBranch.addObserver("", this, false); + + // Register pre-set handlers + for (var i=0; i<_handlers.length; i++) { + this.registerObserver(_handlers[i][0], _handlers[i][1]); + } } function unregister(){ @@ -2343,143 +2409,48 @@ Zotero.Prefs = new function(){ this.prefBranch.removeObserver("", this); } + /** + * @param {nsIPrefBranch} subject The nsIPrefBranch we're observing (after appropriate QI) + * @param {String} topic The string defined by NS_PREFBRANCH_PREFCHANGE_TOPIC_ID + * @param {String} data The name of the pref that's been changed (relative to subject) + */ function observe(subject, topic, data){ - if(topic!="nsPref:changed"){ + if (topic != "nsPref:changed" || !_observers[data] || !_observers[data].length) { return; } - try { - - // subject is the nsIPrefBranch we're observing (after appropriate QI) - // data is the name of the pref that's been changed (relative to subject) - switch (data) { - case "statusBarIcon": - var doc = Services.wm.getMostRecentWindow("navigator:browser").document; - - var addonBar = doc.getElementById("addon-bar"); - var icon = doc.getElementById("zotero-toolbar-button"); - // When the customize window is open, toolbar buttons seem to - // become wrapped in toolbarpaletteitems, which we need to remove - // manually if we change the pref to hidden or else the customize - // window doesn't close. - var wrapper = doc.getElementById("wrapper-zotero-toolbar-button"); - var palette = doc.getElementById("navigator-toolbox").palette; - var inAddonBar = false; - if (icon) { - // Because of the potential wrapper, don't just use .parentNode - var toolbar = Zotero.getAncestorByTagName(icon, "toolbar"); - inAddonBar = toolbar == addonBar; - } - var val = this.get("statusBarIcon"); - if (val == 0) { - // If showing in add-on bar, hide - if (!icon || !inAddonBar) { - return; - } - palette.appendChild(icon); - if (wrapper) { - addonBar.removeChild(wrapper); - } - addonBar.setAttribute("currentset", addonBar.currentSet); - doc.persist(addonBar.id, "currentset"); - } - else { - // If showing somewhere else, remove it from there - if (icon && !inAddonBar) { - palette.appendChild(icon); - if (wrapper) { - toolbar.removeChild(wrapper); - } - toolbar.setAttribute("currentset", toolbar.currentSet); - doc.persist(toolbar.id, "currentset"); - } - - // If not showing in add-on bar, add - if (!inAddonBar) { - var icon = addonBar.insertItem("zotero-toolbar-button"); - addonBar.setAttribute("currentset", addonBar.currentSet); - doc.persist(addonBar.id, "currentset"); - addonBar.setAttribute("collapsed", false); - doc.persist(addonBar.id, "collapsed"); - } - // And make small - if (val == 1) { - icon.setAttribute("compact", true); - } - // Or large - else if (val == 2) { - icon.removeAttribute("compact"); - } - } - break; - - case "automaticScraperUpdates": - if (this.get('automaticScraperUpdates')){ - Zotero.Schema.updateFromRepository(); - } - else { - Zotero.Schema.stopRepositoryTimer(); - } - break; - - case "note.fontSize": - var val = this.get('note.fontSize'); - if (val < 6) { - this.set('note.fontSize', 11); - } - break; - - case "zoteroDotOrgVersionHeader": - if (this.get("zoteroDotOrgVersionHeader")) { - Zotero.VersionHeader.register(); - } - else { - Zotero.VersionHeader.unregister(); - } - break; - - case "sync.autoSync": - if (this.get("sync.autoSync")) { - Zotero.Sync.Runner.IdleListener.register(); - } - else { - Zotero.Sync.Runner.IdleListener.unregister(); - } - break; - - // TEMP - case "sync.fulltext.enabled": - if (this.get("sync.fulltext.enabled")) { - // Disable downgrades if full-text sync is enabled, since otherwise - // we could miss full-text content updates - if (Zotero.DB.valueQuery("SELECT version FROM version WHERE schema='userdata'") < 77) { - Zotero.DB.query("UPDATE version SET version=77 WHERE schema='userdata'"); - } - } - break; - - case "search.quicksearch-mode": - var enumerator = Services.wm.getEnumerator("navigator:browser"); - while (enumerator.hasMoreElements()) { - var win = enumerator.getNext(); - if (!win.ZoteroPane) continue; - Zotero.updateQuickSearchBox(win.ZoteroPane.document); - } - - var enumerator = Services.wm.getEnumerator("zotero:item-selector"); - while (enumerator.hasMoreElements()) { - var win = enumerator.getNext(); - if (!win.Zotero) continue; - Zotero.updateQuickSearchBox(win.document); - } - break; + var obs = _observers[data]; + for (var i=0; i<obs.length; i++) { + try { + obs[i](this.get(data)); + } + catch (e) { + Zotero.debug("Error while executing preference observer handler for " + data); + Zotero.debug(e); + } } - + } + + var _observers = {}; + this.registerObserver = function(name, handler) { + _observers[name] = _observers[name] || []; + _observers[name].push(handler); + } + + this.unregisterObserver = function(name, handler) { + var obs = _observers[name]; + if (!obs) { + Zotero.debug("No preferences observer registered for " + name); + return; } - catch (e) { - Zotero.debug(e); - throw (e); + + var i = obs.indexOf(handler); + if (i == -1) { + Zotero.debug("Handler was not registered for preference " + name); + return; } + + obs.splice(i, 1); } } diff --git a/chrome/content/zotero/zoteroPane.js b/chrome/content/zotero/zoteroPane.js @@ -1413,7 +1413,16 @@ var ZoteroPane = new function() for (var i=0, len=itemsView.selection.getRangeCount(); i<len; i++) { itemsView.selection.getRangeAt(i, start, end); for (var j=start.value; j<=end.value; j++) { - if (!itemsView.getRow(j).ref.deleted) { + let itemRow = itemsView.getRow(j); + + // DEBUG: Not sure how this is possible, but it was happening while switching + // to an item in the trash in a collapsed library from another library + if (!itemRow) { + Zotero.debug("Item row " + j + " not found in _nonDeletedItemsSelected()", 2); + continue; + } + + if (!itemRow.ref.deleted) { return true; } } @@ -1600,6 +1609,12 @@ var ZoteroPane = new function() 'pane.items.delete' + (this.itemsView.selection.count > 1 ? '.multiple' : '') ) }; + var toRemove = { + title: Zotero.getString('pane.items.remove.title'), + text: Zotero.getString( + 'pane.items.remove' + (this.itemsView.selection.count > 1 ? '.multiple' : '') + ) + }; if (collectionTreeRow.isPublications()) { var prompt = toDelete; @@ -1610,7 +1625,7 @@ var ZoteroPane = new function() } else if (collectionTreeRow.isCollection()) { // In collection, only prompt if trashing - var prompt = force ? toTrash : false; + var prompt = force ? toTrash : toRemove; } else if (collectionTreeRow.isSearch() || collectionTreeRow.isUnfiled() || collectionTreeRow.isDuplicates()) { if (!force) { @@ -2003,8 +2018,14 @@ var ZoteroPane = new function() Zotero.spawn(function* () { var selected = yield self.itemsView.selectItem(itemID, expand); if (!selected) { - Zotero.debug("Item was not selected; switching to library"); - yield self.collectionsView.selectLibrary(item.libraryID); + if (item.deleted) { + Zotero.debug("Item is deleted; switching to trash"); + this.collectionsView.selectTrash(item.libraryID); + } + else { + Zotero.debug("Item was not selected; switching to library"); + yield this.collectionsView.selectLibrary(item.libraryID); + } yield self.itemsView.selectItem(itemID, expand); } deferred.resolve(true); diff --git a/chrome/content/zotero/zoteroPane.xul b/chrome/content/zotero/zoteroPane.xul @@ -61,6 +61,7 @@ <command id="cmd_zotero_newSavedSearch" oncommand="ZoteroPane_Local.newSearch()"/> <command id="cmd_zotero_newStandaloneNote" oncommand="ZoteroPane_Local.newNote(event.shiftKey);"/> <command id="cmd_zotero_newChildNote" oncommand="ZoteroPane_Local.newChildNote(event.shiftKey);"/> + <!-- Keep in sync with browser.js::scrapeThisPage(), until that calls this directly --> <command id="cmd_zotero_newItemFromCurrentPage" oncommand="ZoteroPane.addItemFromPage('temporaryPDFHack', event.shiftKey ? !Zotero.Prefs.get('automaticSnapshots') : null)"/> </commandset> @@ -140,7 +141,6 @@ </menu> </menupopup> </toolbarbutton> - <toolbarbutton id="zotero-tb-item-from-page" class="zotero-tb-button standalone-no-display" tooltiptext="&zotero.toolbar.newItemFromPage.label;" command="cmd_zotero_newItemFromCurrentPage"/> <toolbarbutton id="zotero-tb-lookup" class="zotero-tb-button" tooltiptext="&zotero.toolbar.lookup.label;" type="panel"> <panel id="zotero-lookup-panel" type="arrow" onpopupshown="Zotero_Lookup.onShowing()" onpopuphidden="Zotero_Lookup.onHidden(event)"> diff --git a/chrome/locale/af-ZA/zotero/csledit.dtd b/chrome/locale/af-ZA/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/af-ZA/zotero/cslpreview.dtd b/chrome/locale/af-ZA/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/af-ZA/zotero/preferences.dtd b/chrome/locale/af-ZA/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Browser pane"> <!ENTITY zotero.preferences.showIn.separateTab "Separate tab"> <!ENTITY zotero.preferences.showIn.appTab "App tab"> -<!ENTITY zotero.preferences.statusBarIcon "Statusbalk-ikoon:"> -<!ENTITY zotero.preferences.statusBarIcon.none "None"> <!ENTITY zotero.preferences.fontSize "Fontgrootte:"> <!ENTITY zotero.preferences.fontSize.small "Klein"> <!ENTITY zotero.preferences.fontSize.medium "Medium"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Get additional styles..."> -<!ENTITY zotero.preferences.prefpane.keys "Snelsleutels"> - <!ENTITY zotero.preferences.keys.openZotero "Open/sluit Zotero-paneel"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Verwissel volskermmodus"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Advanced"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Locate"> <!ENTITY zotero.preferences.locate.locateEngineManager "Article Lookup Engine Manager"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Submit to Zotero Server"> <!ENTITY zotero.preferences.openAboutConfig "Open about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Open CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Open CSL Preview"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/af-ZA/zotero/zotero.dtd b/chrome/locale/af-ZA/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Skrap"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transform Text"> <!ENTITY zotero.item.textTransform.titlecase "Title Case"> <!ENTITY zotero.item.textTransform.sentencecase "Sentence case"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "New Note"> <!ENTITY zotero.toolbar.note.standalone "New Standalone Note"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/af-ZA/zotero/zotero.properties b/chrome/locale/af-ZA/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Create general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=See %S for more information. +general.open=Open %S general.enable=Enable general.disable=Disable general.remove=Remove @@ -203,6 +204,9 @@ pane.items.trash.multiple=Are you sure you want to move the selected items to th pane.items.delete.title=Delete pane.items.delete=Are you sure you want to delete the selected item? pane.items.delete.multiple=Are you sure you want to delete the selected items? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Remove Item from Collection pane.items.menu.remove.multiple=Remove Items from Collection pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Create Parent Item pane.items.menu.createParent.multiple=Create Parent Items pane.items.menu.renameAttachments=Rename File from Parent Metadata pane.items.menu.renameAttachments.multiple=Rename Files from Parent Metadata +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Letter to %S pane.items.letter.twoParticipants=Letter to %S and %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/ar/zotero/csledit.dtd b/chrome/locale/ar/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/ar/zotero/cslpreview.dtd b/chrome/locale/ar/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/ar/zotero/preferences.dtd b/chrome/locale/ar/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "جزء التصفح"> <!ENTITY zotero.preferences.showIn.separateTab "تبويب منفصل"> <!ENTITY zotero.preferences.showIn.appTab "تبويب التطبيقات"> -<!ENTITY zotero.preferences.statusBarIcon "أيقونة شريط الحالة:"> -<!ENTITY zotero.preferences.statusBarIcon.none "بدون أيقونة"> <!ENTITY zotero.preferences.fontSize "حجم الخط:"> <!ENTITY zotero.preferences.fontSize.small "صغير"> <!ENTITY zotero.preferences.fontSize.medium "متوسط"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "لغة نمط الاستشهاد"> <!ENTITY zotero.preferences.export.getAdditionalStyles "احصل على انماط اضافية..."> -<!ENTITY zotero.preferences.prefpane.keys "اختصارات"> - <!ENTITY zotero.preferences.keys.openZotero "فتح/إغلاق نافذة زوتيرو"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "التنشيط لوضع ملء الشاشة"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "متقدم"> <!ENTITY zotero.preferences.advanced.filesAndFolders "الملفات والمجلدات"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "تحديد موقع المقتنى"> <!ENTITY zotero.preferences.locate.locateEngineManager "إدارة محرك البحث"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "ارسال سجل الاخطاء لخادم زوتيرو"> <!ENTITY zotero.preferences.openAboutConfig "فتح about:config"> -<!ENTITY zotero.preferences.openCSLEdit "افتح محرر لغة نمط الاستشهاد"> -<!ENTITY zotero.preferences.openCSLPreview "افتح مستعرض لغة نمط الاستشهاد"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/ar/zotero/zotero.dtd b/chrome/locale/ar/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "حذف"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "تغيير حالة النص"> <!ENTITY zotero.item.textTransform.titlecase "حرف كبير في بداية كل كلمة"> <!ENTITY zotero.item.textTransform.sentencecase "حالة الجملة"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "ملاحظة جديدة"> <!ENTITY zotero.toolbar.note.standalone "ملاحظة جديدة مستقلة بذاتها"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/ar/zotero/zotero.properties b/chrome/locale/ar/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=إنشاء general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=شاهد %S لمزيد من المعلومات. +general.open=Open %S general.enable=تمكين general.disable=تعطيل general.remove=حذف @@ -203,6 +204,9 @@ pane.items.trash.multiple=هل ترغب في نقل العناصر المحدد pane.items.delete.title=حذف pane.items.delete=هل ترغب في حذف العنصر المحدد؟ pane.items.delete.multiple=هل ترغب في حذف العناصر المحددة؟ +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=حذف العنصر المحدد pane.items.menu.remove.multiple=حذف العناصر المحددة pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=إنشاء عنصر رئيسي من العنصر ا pane.items.menu.createParent.multiple=إنشاء عناصر رئيسية من العناصر المحددة pane.items.menu.renameAttachments=إعادة تسمية الملف وفقا للبيانات الوصفية للعنصر الرئيسي pane.items.menu.renameAttachments.multiple=إعادة تسمية الملفات وفقا للبيانات الوصفية للعنصر الرئيسي +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=خطاب إلى %S pane.items.letter.twoParticipants=خطاب إلى %S و %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/bg-BG/zotero/csledit.dtd b/chrome/locale/bg-BG/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/bg-BG/zotero/cslpreview.dtd b/chrome/locale/bg-BG/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/bg-BG/zotero/preferences.dtd b/chrome/locale/bg-BG/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Browser pane"> <!ENTITY zotero.preferences.showIn.separateTab "Separate tab"> <!ENTITY zotero.preferences.showIn.appTab "App tab"> -<!ENTITY zotero.preferences.statusBarIcon "Икона в лентата за състоянието"> -<!ENTITY zotero.preferences.statusBarIcon.none "Няма"> <!ENTITY zotero.preferences.fontSize "Размер на шрифта:"> <!ENTITY zotero.preferences.fontSize.small "Малък"> <!ENTITY zotero.preferences.fontSize.medium "Среден"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Инсталира на допълнителни стилове..."> -<!ENTITY zotero.preferences.prefpane.keys "Клавишни Комбинации"> - <!ENTITY zotero.preferences.keys.openZotero "Отваря/Затваря на Панела на Зотеро"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Превключва в Режим на Цял Екран"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Допълнителни"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Locate"> <!ENTITY zotero.preferences.locate.locateEngineManager "Article Lookup Engine Manager"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Изпраща до сървъра на Зотеро"> <!ENTITY zotero.preferences.openAboutConfig "Open about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Open CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Open CSL Preview"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/bg-BG/zotero/zotero.dtd b/chrome/locale/bg-BG/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Изтрива"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Преобразува текст"> <!ENTITY zotero.item.textTransform.titlecase "Заглавни букви"> <!ENTITY zotero.item.textTransform.sentencecase "Sentence case"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "New Note"> <!ENTITY zotero.toolbar.note.standalone "Нова самостоятелна бележка"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/bg-BG/zotero/zotero.properties b/chrome/locale/bg-BG/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Създава general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=Виж %S за повече информация. +general.open=Open %S general.enable=Включва general.disable=Изключва general.remove=Remove @@ -203,6 +204,9 @@ pane.items.trash.multiple=Сигурни ли сте, че искате да п pane.items.delete.title=Изтрива pane.items.delete=Сигурни ли сте, че искате да изтриете избрания запис? pane.items.delete.multiple=Сигурни ли сте, че искате да изтриете избраните записи? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Изтрива избрания запис pane.items.menu.remove.multiple=Изтрива избраните записи pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Създава родителски запис от pane.items.menu.createParent.multiple=Създава родителски записи от избраният записи pane.items.menu.renameAttachments=Преименува файла въз основа на родителските метадани pane.items.menu.renameAttachments.multiple=Преименува файловете въз основа на родителските метадани +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Писмо до %S pane.items.letter.twoParticipants=Писмо до %S и %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/ca-AD/zotero/csledit.dtd b/chrome/locale/ca-AD/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/ca-AD/zotero/cslpreview.dtd b/chrome/locale/ca-AD/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/ca-AD/zotero/preferences.dtd b/chrome/locale/ca-AD/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Subfinestra del navegador"> <!ENTITY zotero.preferences.showIn.separateTab "Pestanya separada"> <!ENTITY zotero.preferences.showIn.appTab "Pestanya d'aplicacions"> -<!ENTITY zotero.preferences.statusBarIcon "Icona de la barra d&apos;estat"> -<!ENTITY zotero.preferences.statusBarIcon.none "Cap"> <!ENTITY zotero.preferences.fontSize "Mida de lletra:"> <!ENTITY zotero.preferences.fontSize.small "Petita"> <!ENTITY zotero.preferences.fontSize.medium "Mitjana"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Aconsegueix estils addicionals..."> -<!ENTITY zotero.preferences.prefpane.keys "Dreceres de teclat"> - <!ENTITY zotero.preferences.keys.openZotero "Obre/Tanca el Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Desa al Zotero (icona de la barra d'adreces)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Canvia a pantalla completa"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Avançat"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Fitxers i carpetes"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Localitza"> <!ENTITY zotero.preferences.locate.locateEngineManager "Gestor del motor de cerca d'articles"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Tramet al servidor del Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Obri about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Obri l'editor CSL"> -<!ENTITY zotero.preferences.openCSLPreview "Obri la previsualització CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/ca-AD/zotero/zotero.dtd b/chrome/locale/ca-AD/zotero/zotero.dtd @@ -1,14 +1,16 @@ <!ENTITY zotero.general.optional "(Opcional)"> <!ENTITY zotero.general.note "Nota:"> -<!ENTITY zotero.general.selectAll "Selecciona tot"> -<!ENTITY zotero.general.deselectAll "Desselecciona tot"> +<!ENTITY zotero.general.selectAll "Selecciona-ho tot"> +<!ENTITY zotero.general.deselectAll "Anul·la la selecció"> <!ENTITY zotero.general.edit "Edita"> <!ENTITY zotero.general.delete "Suprimeix"> <!ENTITY zotero.general.ok "D'acord"> <!ENTITY zotero.general.cancel "Cancel·la"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Informe d'error de Zotero"> -<!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> +<!ENTITY zotero.errorReport.unrelatedMessages "Això pot incloure missatges no relacionats amb el Zotero."> <!ENTITY zotero.errorReport.submissionInProgress "Espereu mentre s&apos;envia l&apos;informe d&apos;error."> <!ENTITY zotero.errorReport.submitted "L&apos;informe d&apos;error ha estat enviat correctament."> <!ENTITY zotero.errorReport.reportID "Número de referència de l&apos;informe:"> @@ -45,7 +47,7 @@ <!ENTITY zotero.collections.showUnfiledItems "Mostra els elements no arxivats"> <!ENTITY zotero.items.itemType "Tipus d'element"> -<!ENTITY zotero.items.type_column "Item Type"> +<!ENTITY zotero.items.type_column "Tipus d'element"> <!ENTITY zotero.items.title_column "Títol"> <!ENTITY zotero.items.creator_column "Creador"> <!ENTITY zotero.items.date_column "Data"> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transforma el text"> <!ENTITY zotero.item.textTransform.titlecase "Majúscules o minúscules del títol"> <!ENTITY zotero.item.textTransform.sentencecase "Majúscules o minúscules de la frase"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Intercanvia nom i cognoms"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Nota nova"> <!ENTITY zotero.toolbar.note.standalone "Nova nota independent"> @@ -285,8 +287,6 @@ <!ENTITY zotero.downloadManager.saveToLibrary.description "Els adjunts no es poden desar a la biblioteca seleccionada. Aquest element es desarà a la biblioteca."> <!ENTITY zotero.downloadManager.noPDFTools.description "Per utilitzar aquesta funció, primer cal instal·lar les eines de PDF en les preferències del Zotero."> -<!ENTITY zotero.attachLink.title "Attach Link to URI"> -<!ENTITY zotero.attachLink.label.link "Link:"> -<!ENTITY zotero.attachLink.label.title "Title:"> - - +<!ENTITY zotero.attachLink.title "Adjunta l'enllaç a l'URI"> +<!ENTITY zotero.attachLink.label.link "Enllaç:"> +<!ENTITY zotero.attachLink.label.title "Títol:"> diff --git a/chrome/locale/ca-AD/zotero/zotero.properties b/chrome/locale/ca-AD/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Crea general.delete=Suprimeix general.moreInformation=Més informació general.seeForMoreInformation=Mira %S per a més informació. +general.open=Open %S general.enable=Habilita general.disable=Deshabilita general.remove=Elimina @@ -203,6 +204,9 @@ pane.items.trash.multiple=Segur que voleu moure els elements seleccionats a la p pane.items.delete.title=Elimina pane.items.delete=Segur que voleu eliminar l'element seleccionat? pane.items.delete.multiple=Segur que voleu eliminar els elements seleccionats? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Elimina l'element seleccionat pane.items.menu.remove.multiple=Elimina els elements seleccionats pane.items.menu.moveToTrash=Desplaça l'element a la paperera. @@ -221,6 +225,7 @@ pane.items.menu.createParent=Crea un element ascendent de l'element seleccionat pane.items.menu.createParent.multiple=Crea elements ascendents dels elements seleccionats pane.items.menu.renameAttachments=Canvia el nom del fitxer amb les metadades ascendents pane.items.menu.renameAttachments.multiple=Canvia els noms del fitxers amb les metadades ascendents +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Carta a %S pane.items.letter.twoParticipants=Carta de %S a %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Escriu un títol o autor per cercar una referència firstRunGuidance.quickFormatMac=Escriu un títol o autor per cercar una referència.\n\nDesprés que hagis fet la teva selecció, fes clic a la bombolla o prem Cmd-\u2193 per afegir números de pàgina, prefixos o sufixos. També pots incloure un número de pàgina juntament amb els teus termes de cerca per afegir-lo directament.\n\nLes cites es poden editar directament en el document del processador de textos. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/cs-CZ/zotero/csledit.dtd b/chrome/locale/cs-CZ/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/cs-CZ/zotero/cslpreview.dtd b/chrome/locale/cs-CZ/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/cs-CZ/zotero/preferences.dtd b/chrome/locale/cs-CZ/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Panel prohlížeče"> <!ENTITY zotero.preferences.showIn.separateTab "Samostatný panel"> <!ENTITY zotero.preferences.showIn.appTab "Panel aplikace"> -<!ENTITY zotero.preferences.statusBarIcon "Ikona ve stavovém řádku:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Žádná"> <!ENTITY zotero.preferences.fontSize "Velikost písma:"> <!ENTITY zotero.preferences.fontSize.small "Malá"> <!ENTITY zotero.preferences.fontSize.medium "Střední"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Získat další styly..."> -<!ENTITY zotero.preferences.prefpane.keys "Klávesové zkratky"> - <!ENTITY zotero.preferences.keys.openZotero "Otevřít/Zavřít Zotero panel"> <!ENTITY zotero.preferences.keys.saveToZotero "Uložit do Zotera (ikona v adresním řádku)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Zapnutí celoobrazového módu"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Pokročilé"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Soubory a Složky"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Najít"> <!ENTITY zotero.preferences.locate.locateEngineManager "Správce mechanismu pro vyhledávání článků"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Odeslat na Zotero Server"> <!ENTITY zotero.preferences.openAboutConfig "Otevřít about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Otevřít editor CSL"> -<!ENTITY zotero.preferences.openCSLPreview "Otevřít náhled CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Otevřít about:memory"> diff --git a/chrome/locale/cs-CZ/zotero/zotero.dtd b/chrome/locale/cs-CZ/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Smazat"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Zrušit"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Chybová zpráva Zotera"> <!ENTITY zotero.errorReport.unrelatedMessages "Může obsahovat zprávy nesouvisející se Zoterem."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Převést text"> <!ENTITY zotero.item.textTransform.titlecase "Velká Písmena"> <!ENTITY zotero.item.textTransform.sentencecase "Velké první písmeno"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Přehodit jméno/příjmení"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Nová poznámka"> <!ENTITY zotero.toolbar.note.standalone "Nová samostatná poznámka"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Připojit odkaz na URI"> <!ENTITY zotero.attachLink.label.link "Odkaz:"> <!ENTITY zotero.attachLink.label.title "Název:"> - - diff --git a/chrome/locale/cs-CZ/zotero/zotero.properties b/chrome/locale/cs-CZ/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Vytvořit general.delete=Smazat general.moreInformation=Více informací general.seeForMoreInformation=Pro více informací se podívejte na %S +general.open=Open %S general.enable=Povolit general.disable=Zakázat general.remove=Odstranit @@ -203,6 +204,9 @@ pane.items.trash.multiple=Jste si jisti, že chcete přesunout vybranou položku pane.items.delete.title=Smazat pane.items.delete=Jste si jisti, že chcete smazat zvolenou položku? pane.items.delete.multiple=Jste si jisti, že chcete smazat zvolené položky? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Smazat vybranou položku z kolekce pane.items.menu.remove.multiple=Smazat vybrané položky z kolekce pane.items.menu.moveToTrash=Přesunout položku do Koše... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Vytvořit rodičovskou položku z vybrané položky pane.items.menu.createParent.multiple=Vytvořit rodičovské položky z vybraných položek pane.items.menu.renameAttachments=Přejmenovat soubor z rodičovských metadat pane.items.menu.renameAttachments.multiple=Přejmenovat soubory z rodičovských metadat +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Dopis pro %S pane.items.letter.twoParticipants=Dopis pro %S a %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Napište název, nebo autora k nimž hledáte citac firstRunGuidance.quickFormatMac=Napište název, nebo autora k nimž hledáte citaci.\n\n Když si vyberete, kliknutím na bublinu, nebo stiskem Ctrl-\u2193 můžete přidat čísla stran, prefixy, či sufixy. Číslo stránky můžete vložit přímo k vašim vyhledávaným výrazům.\n\nCitace můžete editovat přímo ve vašem textovém procesoru. firstRunGuidance.toolbarButton.new=Zotero otevřete kliknutím sem, nebo použitím klávesové zkratky %S firstRunGuidance.toolbarButton.upgrade=Ikona Zotero se nyní nachází v Panelu nástrojů Firefoxu. Zotero otevřete kliknutím na ikonu, nebo stisknutím %S. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/da-DK/zotero/csledit.dtd b/chrome/locale/da-DK/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/da-DK/zotero/cslpreview.dtd b/chrome/locale/da-DK/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/da-DK/zotero/preferences.dtd b/chrome/locale/da-DK/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Browser-vindue"> <!ENTITY zotero.preferences.showIn.separateTab "Separat faneblad"> <!ENTITY zotero.preferences.showIn.appTab "Applikationsfaneblad"> -<!ENTITY zotero.preferences.statusBarIcon "Ikon på statuslinie:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Intet"> <!ENTITY zotero.preferences.fontSize "Skriftstørrelse:"> <!ENTITY zotero.preferences.fontSize.small "Lille"> <!ENTITY zotero.preferences.fontSize.medium "Medium"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Hent yderligere formater"> -<!ENTITY zotero.preferences.prefpane.keys "Genvejs-taster"> - <!ENTITY zotero.preferences.keys.openZotero "Åbn/Luk Zotero-vinduet"> <!ENTITY zotero.preferences.keys.saveToZotero "Gem til Zotero (ikon i adresselinjen)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Slå fuldskærmsvisning til/fra"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Avanceret"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Filer og mapper"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Lokaliser"> <!ENTITY zotero.preferences.locate.locateEngineManager "Håndtering af søgemaskiner for artikler"> @@ -193,7 +190,7 @@ <!ENTITY zotero.preferences.dbMaintenance.integrityCheck "Tjek databasens gyldighed"> <!ENTITY zotero.preferences.dbMaintenance.resetTranslatorsAndStyles "Reset &quot;oversættere&quot; og formater..."> <!ENTITY zotero.preferences.dbMaintenance.resetTranslators "Reset &quot;oversættere&quot;..."> -<!ENTITY zotero.preferences.dbMaintenance.resetStyles "Reset formater..."> +<!ENTITY zotero.preferences.dbMaintenance.resetStyles "Nulstil formater..."> <!ENTITY zotero.preferences.debugOutputLogging "Debug logning af output"> <!ENTITY zotero.preferences.debugOutputLogging.message "Debug-output kan hjælpe Zoteros udviklere med at diagnosticere problemer i Zotero. Debug-logning få Zotero til at reagere langsommere, så du bør have det slået fra medmindre en Zotero-udvikler kræver om det."> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Fremsend til Zotero Server"> <!ENTITY zotero.preferences.openAboutConfig "Åbn about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Åbn CSL-Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Åbn CSL-Preview"> +<!ENTITY zotero.preferences.openCSLEdit "Åbn formatredigering"> +<!ENTITY zotero.preferences.openCSLPreview "Åbn formatforhåndsvisning"> <!ENTITY zotero.preferences.openAboutMemory "Åben about:memory"> diff --git a/chrome/locale/da-DK/zotero/searchbox.dtd b/chrome/locale/da-DK/zotero/searchbox.dtd @@ -8,7 +8,7 @@ <!ENTITY zotero.search.joinMode.suffix "de følgende:"> <!ENTITY zotero.search.recursive.label "Søg i underliggende mapper"> -<!ENTITY zotero.search.noChildren "Vis kun de øverste Elementer"> +<!ENTITY zotero.search.noChildren "Vis kun elementer på øverste niveau"> <!ENTITY zotero.search.includeParentsAndChildren "Inkluder overordnede og underordnede elementer i resultatet af søgningen"> <!ENTITY zotero.search.textModes.phrase "Tekststreng"> diff --git a/chrome/locale/da-DK/zotero/zotero.dtd b/chrome/locale/da-DK/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Slet"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Annullér"> +<!ENTITY zotero.general.refresh "Opdatér"> +<!ENTITY zotero.general.saveAs "Gem som..."> <!ENTITY zotero.errorReport.title "Zotero fejlrapport"> <!ENTITY zotero.errorReport.unrelatedMessages "Dette kan inkludere beskeder, som ikke har noget med Zotero at gøre."> @@ -30,7 +32,7 @@ <!ENTITY zotero.upgrade.changeLogAfterLink "for at se nyhederne."> <!ENTITY zotero.contextMenu.addTextToCurrentNote "Overfør den markerede tekst til din note i Zotero"> -<!ENTITY zotero.contextMenu.addTextToNewNote "Opret Zotero-element og note udfra markering"> +<!ENTITY zotero.contextMenu.addTextToNewNote "Opret Zotero-element og note ud fra markering"> <!ENTITY zotero.contextMenu.saveLinkAsItem "Gem link som Zotero-element."> <!ENTITY zotero.contextMenu.saveImageAsItem "Gem billede som Zotero-element."> @@ -95,8 +97,8 @@ <!ENTITY zotero.toolbar.newItem.label "Nyt element"> <!ENTITY zotero.toolbar.moreItemTypes.label "Mere"> -<!ENTITY zotero.toolbar.newItemFromPage.label "Opret nyt element udfra den aktuelle side"> -<!ENTITY zotero.toolbar.lookup.label "Tilføj elementet ud fra identifikationen"> +<!ENTITY zotero.toolbar.newItemFromPage.label "Opret nyt element ud fra den aktuelle side"> +<!ENTITY zotero.toolbar.lookup.label "Tilføj element(er) ud fra identifikator"> <!ENTITY zotero.toolbar.removeItem.label "Fjern ..."> <!ENTITY zotero.toolbar.newCollection.label "Ny Samling..."> <!ENTITY zotero.toolbar.newGroup "Ny Gruppe ..."> @@ -105,10 +107,10 @@ <!ENTITY zotero.toolbar.emptyTrash.label "Tøm affald"> <!ENTITY zotero.toolbar.tagSelector.label "Vis/skjul mærkat-søgning"> <!ENTITY zotero.toolbar.actions.label "Handlinger"> -<!ENTITY zotero.toolbar.import.label "Import..."> +<!ENTITY zotero.toolbar.import.label "Importér..."> <!ENTITY zotero.toolbar.importFromClipboard "Hent fra udklipsholder"> -<!ENTITY zotero.toolbar.export.label "Eksporter Biblioteket ..."> -<!ENTITY zotero.toolbar.rtfScan.label "RTF Scan..."> +<!ENTITY zotero.toolbar.export.label "Eksportér bibliotek..."> +<!ENTITY zotero.toolbar.rtfScan.label "RTF-scanning..."> <!ENTITY zotero.toolbar.timeline.label "Opret tidslinie"> <!ENTITY zotero.toolbar.preferences.label "Indstillinger..."> <!ENTITY zotero.toolbar.supportAndDocumentation "Support og dokumentation"> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transformer tekst"> <!ENTITY zotero.item.textTransform.titlecase "Betydende ord med stort "> <!ENTITY zotero.item.textTransform.sentencecase "Første bogstav med stort"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Byt rundt på fornavn og efternavn"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Ombyt fornavn/efternavn"> <!ENTITY zotero.toolbar.newNote "Ny note"> <!ENTITY zotero.toolbar.note.standalone "Ny selvstændig note"> @@ -176,7 +178,7 @@ <!ENTITY zotero.progress.title "Fremgang"> -<!ENTITY zotero.exportOptions.title "Eksport..."> +<!ENTITY zotero.exportOptions.title "Eksportér..."> <!ENTITY zotero.exportOptions.format.label "Format:"> <!ENTITY zotero.exportOptions.translatorOptions.label "Oversættelsesmuligheder"> @@ -264,7 +266,7 @@ <!ENTITY zotero.rtfScan.ambiguousCitations.label "Flertydige teksthenvisnnger"> <!ENTITY zotero.rtfScan.mappedCitations.label "Teksthenvisninger med korrespondence"> <!ENTITY zotero.rtfScan.introPage.label "Introduktion"> -<!ENTITY zotero.rtfScan.introPage.description "Zotero can automatically extract and reformat citations and insert a bibliography into RTF files. The RTF Scan feature currently supports citations in variations upon the following formats:"> +<!ENTITY zotero.rtfScan.introPage.description "Zotero kan automatisk uddrage og reformatere henvisninger og indsætte en referenceliste i en RTF-fil. RTF-scanningsfunktionen understøtter henvisninger i følgende formater:"> <!ENTITY zotero.rtfScan.introPage.description2 "Vælg en RTF-fil som input og en output-fil nedenfor:"> <!ENTITY zotero.rtfScan.scanPage.label "Scanner efter referencer i dokumentet"> <!ENTITY zotero.rtfScan.scanPage.description "Zotero scanner dit dokument for referencer. Vent venligst."> @@ -278,15 +280,13 @@ <!ENTITY zotero.rtfScan.inputFile.label "Inputfil"> <!ENTITY zotero.rtfScan.outputFile.label "Outputfil"> -<!ENTITY zotero.file.choose.label "Vælg filen..."> +<!ENTITY zotero.file.choose.label "Vælg fil..."> <!ENTITY zotero.file.noneSelected.label "Der er ikke valgt en fil"> <!ENTITY zotero.downloadManager.label "Gem til Zotero"> -<!ENTITY zotero.downloadManager.saveToLibrary.description "Vedhæftede filer kan ikke gemmes til det valgte bibliotek. Dette element vil blive gemt i dit bibliotek i stedet."> +<!ENTITY zotero.downloadManager.saveToLibrary.description "Vedhæftede filer kan ikke gemmes i det valgte bibliotek. Dette element vil blive gemt i dit bibliotek i stedet."> <!ENTITY zotero.downloadManager.noPDFTools.description "For at bruge denne funktion skal du først installere PDF-værktøjerne i Zoteros indstillinger."> -<!ENTITY zotero.attachLink.title "Attach Link to URI"> -<!ENTITY zotero.attachLink.label.link "Link:"> -<!ENTITY zotero.attachLink.label.title "Title:"> - - +<!ENTITY zotero.attachLink.title "Tilføj henvisning til URI"> +<!ENTITY zotero.attachLink.label.link "Henvisning:"> +<!ENTITY zotero.attachLink.label.title "Titel:"> diff --git a/chrome/locale/da-DK/zotero/zotero.properties b/chrome/locale/da-DK/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Opret general.delete=Slet general.moreInformation=Mere information general.seeForMoreInformation=Se %S for nærmere oplysninger. +general.open=Open %S general.enable=Slå til general.disable=Slå fra general.remove=Fjern @@ -164,8 +165,8 @@ pane.collections.library=Mit Bibliotek pane.collections.groupLibraries=Gruppebiblioteker pane.collections.trash=Papirkurv pane.collections.untitled=Unavngivet -pane.collections.unfiled=Elementer som ikke er gemt. -pane.collections.duplicate=Duplikér elementer +pane.collections.unfiled=Ikke-arkiverede elementer +pane.collections.duplicate=Dublet-elementer pane.collections.menu.rename.collection=Omdøb samling... pane.collections.menu.edit.savedSearch=Redigér en gemt søgning @@ -195,14 +196,17 @@ tagColorChooser.maxTags=Op til %S mærker i hvert bibliotek kan have farver tilk pane.items.loading=Henter listen med elementer... pane.items.columnChooser.moreColumns=Flere kolonner pane.items.columnChooser.secondarySort=Sekundær sortering (%S) -pane.items.attach.link.uri.unrecognized=Zotero did not recognize the URI you entered. Please check the address and try again. -pane.items.attach.link.uri.file=To attach a link to a file, please use “%S”. +pane.items.attach.link.uri.unrecognized=Zotero genkendte ikke URI'en, du indtastede. Tjek venligst adressen og prøv igen. +pane.items.attach.link.uri.file=Anvend venligst "%S" for at tilføje en henvisning til en fil. pane.items.trash.title=Flyt til papirkurv pane.items.trash=Er du sikker på, du vil lægge dette element i papirkurven? pane.items.trash.multiple=Er du sikker på, du vil lægge disse elementer i papirkurven? pane.items.delete.title=Slet pane.items.delete=Er du sikker på, du vil slette dette element? pane.items.delete.multiple=Er du sikker på, du vil slette disse elementer? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Fjern element fra samling pane.items.menu.remove.multiple=Fjern elementer fra samling pane.items.menu.moveToTrash=Flyt element til papirkurven... @@ -211,16 +215,17 @@ pane.items.menu.export=Eksportér dette element... pane.items.menu.export.multiple=Eksportér disse elementer... pane.items.menu.createBib=Dan en referenceliste ud fra element... pane.items.menu.createBib.multiple=Dan en referenceliste ud fra elementer... -pane.items.menu.generateReport=Opret rapport ud fra det element... +pane.items.menu.generateReport=Opret rapport ud fra element... pane.items.menu.generateReport.multiple=Opret rapport ud fra elementer... -pane.items.menu.reindexItem=Indeksér element igen. -pane.items.menu.reindexItem.multiple=Indeksér elementer igen. +pane.items.menu.reindexItem=Indeksér element igen +pane.items.menu.reindexItem.multiple=Indeksér elementer igen pane.items.menu.recognizePDF=Hent metadata for pdf-filen. pane.items.menu.recognizePDF.multiple=Hent metadata for pdf-filerne pane.items.menu.createParent=Opret moder-element pane.items.menu.createParent.multiple=Opret moder-elementer pane.items.menu.renameAttachments=Omdøb fil fra moder-metadata pane.items.menu.renameAttachments.multiple=Omdøb filer fra moder-metadata +pane.items.showItemInLibrary=Vis element i Bibliotek pane.items.letter.oneParticipant=Brev til %S pane.items.letter.twoParticipants=Brev til %S og %S @@ -244,7 +249,7 @@ pane.item.duplicates.onlyTopLevel=Kun topniveau fulde elementer kan sammenføjes pane.item.duplicates.onlySameItemType=Sammenføjede elementer skal alle være af samme type. pane.item.changeType.title=Henfør elementet til en ny type -pane.item.changeType.text=Er du sikker på at du vil ændre elementets Type?\n\nFølgende felter går tabt: +pane.item.changeType.text=Er du sikker på at du vil ændre elementets type?\n\nFølgende felter går tabt: pane.item.defaultFirstName=Fornavn pane.item.defaultLastName=Efternavn pane.item.defaultFullName=Fulde navn @@ -400,7 +405,7 @@ itemFields.dictionaryTitle=Ordbogens titel itemFields.language=Sprog itemFields.programmingLanguage=Programmeringssprog itemFields.university=Universitet -itemFields.abstractNote=Abstract/Resumé +itemFields.abstractNote=Resumé itemFields.websiteTitle=Webstedets titel itemFields.reportNumber=Rapportens nr. itemFields.billNumber=Lovforslagets nr. @@ -534,7 +539,7 @@ zotero.preferences.sync.reset.replaceServerData=Erstat serverdata zotero.preferences.sync.reset.fileSyncHistory=Al filsynkroniseringshistorik vil blive slettet.\n\nLokale vedhæftninger, som ikke findes på serveren, vil blive overført ved næste synkronisering. zotero.preferences.search.rebuildIndex=Genopbyg indeks -zotero.preferences.search.rebuildWarning=Ønsker du at gendanne det samlede indeks? Dette kan tage nogen tid.\n\nBrug %S for kun at indeksere de elementer som ikke er indekseret. +zotero.preferences.search.rebuildWarning=Ønsker du at gendanne det samlede indeks? Dette kan tage nogen tid.\n\nBrug %S for kun at indeksere de elementer, som ikke er indekseret. zotero.preferences.search.clearIndex=Ryd indeks zotero.preferences.search.clearWarning=Efter nulstilling af indekset vil indhold fra vedhæftede filer ikke længere være søgbare.\n\nWebhenvisningsvedhæftninger kan ikke genindekseres uden at besøge siden igen. For at lade webhenvisninger være indekserede skal du vælge %S. zotero.preferences.search.clearNonLinkedURLs=Fjern alle undtagen webhenvisninger @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Indtast en titel eller forfatter for at søge efter firstRunGuidance.quickFormatMac=Indtast en titel eller forfatter for at søge efter en reference.\n\nNår du har foretaget dit valg, så klik på boblen eller tryk Cmd-↓ for at tilføje sidenumre, præfikser eller suffikser. Du kan også inkludere et sidenummer sammen med dine søgetermer.\n\nDu kan redigere henvisninger direkte i dit tekstbehandlingsdokument. firstRunGuidance.toolbarButton.new=Klik her for at åbne Zotero eller anvend %S-tastaturgenvejen. firstRunGuidance.toolbarButton.upgrade=Zotero-ikonet kan nu findes i Firefox-værktøjslinjen. Klik ikonet for at åbne Zotero eller anvend %S-tastaturgenvejen. + +styles.bibliography=Referenceliste +styles.editor.save=Gem henvisningsformat +styles.editor.warning.noItems=Ingen elementer valgt i Zotero. +styles.editor.warning.parseError=Fejl under fortolkning af format: +styles.editor.warning.renderError=Fejl under oprettelse af henvisninger og referenceliste: +styles.editor.output.individualCitations=Individuelle henvisninger +styles.editor.output.singleCitation=Enkelt henvisning (med positionen "fornavn") +styles.preview.instructions=Vælg et eller flere elementer i Zotero og klik på "Opdatér"-knappen for at se, hvordan disse elementer gengives af de installerede CSL- diff --git a/chrome/locale/de/zotero/csledit.dtd b/chrome/locale/de/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/de/zotero/cslpreview.dtd b/chrome/locale/de/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/de/zotero/preferences.dtd b/chrome/locale/de/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Browser Ausschnitt"> <!ENTITY zotero.preferences.showIn.separateTab "Eigenem Tab"> <!ENTITY zotero.preferences.showIn.appTab "App Tab"> -<!ENTITY zotero.preferences.statusBarIcon "Statusleisten-Icon:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Kein Icon"> <!ENTITY zotero.preferences.fontSize "Schriftgröße"> <!ENTITY zotero.preferences.fontSize.small "Klein"> <!ENTITY zotero.preferences.fontSize.medium "Mittel"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Weitere Stile hinzufügen..."> -<!ENTITY zotero.preferences.prefpane.keys "Tastenkombinationen"> - <!ENTITY zotero.preferences.keys.openZotero "Zotero-Panel öffnen/schließen"> <!ENTITY zotero.preferences.keys.saveToZotero "In Zotero speichern (Adressleisten-Symbol)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Vollbild-Modus an/aus"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Erweitert"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Dateien und Ordner"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Finden"> <!ENTITY zotero.preferences.locate.locateEngineManager "Artikel Finder verwalten"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Zum Zotero-Server übertragen"> <!ENTITY zotero.preferences.openAboutConfig "about:config öffnen"> -<!ENTITY zotero.preferences.openCSLEdit "CSL Editor öffnen"> -<!ENTITY zotero.preferences.openCSLPreview "CSL Vorschau öffnen"> +<!ENTITY zotero.preferences.openCSLEdit "Zitierstil Editor öffnen"> +<!ENTITY zotero.preferences.openCSLPreview "Zitierstil Vorschau öffnen"> <!ENTITY zotero.preferences.openAboutMemory "about:memory öffnen"> diff --git a/chrome/locale/de/zotero/zotero.dtd b/chrome/locale/de/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Löschen"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Abbrechen"> +<!ENTITY zotero.general.refresh "Aktualisieren"> +<!ENTITY zotero.general.saveAs "Speichern als..."> <!ENTITY zotero.errorReport.title "Zotero Fehlerbericht"> <!ENTITY zotero.errorReport.unrelatedMessages "Unter Umständen sind Nachrichten enthalten, die nicht mit Zotero in Verbindung stehen."> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Link zu einer URI anhängen"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Titel:"> - - diff --git a/chrome/locale/de/zotero/zotero.properties b/chrome/locale/de/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Erstelle general.delete=Löschen general.moreInformation=Weitere Informationen general.seeForMoreInformation=Siehe %S für weitere Informationen. +general.open=Open %S general.enable=Aktivieren general.disable=Deaktivieren general.remove=Entfernen @@ -203,6 +204,9 @@ pane.items.trash.multiple=Sind Sie sicher, dass Sie die ausgewählten Einträge pane.items.delete.title=Löschen pane.items.delete=Sind Sie sicher, dass Sie den ausgewählten Eintrag löschen möchten? pane.items.delete.multiple=Sind Sie sicher, dass Sie die ausgewählten Einträge löschen möchten? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Ausgewählten Eintrag entfernen pane.items.menu.remove.multiple=Ausgewählte Einträge entfernen pane.items.menu.moveToTrash=Eintrag in den Papierkorb verschieben... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Erstelle übergeordneten Eintrag aus ausgewähltem pane.items.menu.createParent.multiple=Erstelle übergeordnete Einträge aus ausgewählten Einträgen pane.items.menu.renameAttachments=Datei nach Metadaten des übergeordneten Eintrags umbenennen pane.items.menu.renameAttachments.multiple=Dateien nach Metadaten des übergeordneten Eintrags umbenennen +pane.items.showItemInLibrary=Eintrag in Bibliothek anzeigen pane.items.letter.oneParticipant=Brief an %S pane.items.letter.twoParticipants=Brief an %S und %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Geben Sie einen Titel oder Autor ein, um nach einer firstRunGuidance.quickFormatMac=Geben Sie einen Titel oder Autor ein, um nach einer Zitation zu suchen.\n\nNachdem Sie Ihre Auswahl getroffen haben, klicken Sie auf die Blase oder drücken Sie Cmd-\u2193, um Seitenzahlen, Präfixe oder Suffixe hinzuzufügen. Sie können die Seitenzahl auch zu Ihren Suchbegriffen hinzufügen, um diese direkt hinzuzufügen.\n\nSie können alle Zitationen direkt im Dokument bearbeiten. firstRunGuidance.toolbarButton.new=Klicken Sie hier oder verwenden Sie die %S Tastenkombination um Zotero zu öffnen. firstRunGuidance.toolbarButton.upgrade=Das Zotero Icon ist jetzt in der Firefox Symbolleiste. Klicken Sie das Icon oder verwenden Sie die %S Tastenkombination um Zotero zu öffnen. + +styles.bibliography=Bibliografie +styles.editor.save=Zitationsstil speichern +styles.editor.warning.noItems=Keine Einträge in Zotero ausgewählt. +styles.editor.warning.parseError=Fehler beim Parsen des Stils: +styles.editor.warning.renderError=Fehler beim Erstellen der Zitationen und Bibliografie: +styles.editor.output.individualCitations=Individuelle Zitationen +styles.editor.output.singleCitation=Einzelne Zitation (an erster Stelle) +styles.preview.instructions=Wählen SIe einen oder mehrere Einträge in Zotero aus und klicken Sie den "Aktualisieren"-Button, um zu sehen, wie diese Einträge mit den installierten CSL-Zitationsstilen jeweils angezeigt werden. diff --git a/chrome/locale/el-GR/zotero/csledit.dtd b/chrome/locale/el-GR/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/el-GR/zotero/cslpreview.dtd b/chrome/locale/el-GR/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/el-GR/zotero/preferences.dtd b/chrome/locale/el-GR/zotero/preferences.dtd @@ -1,209 +1,206 @@ -<!ENTITY zotero.preferences.title "Zotero Preferences"> +<!ENTITY zotero.preferences.title "Προτιμήσεις Zotero"> -<!ENTITY zotero.preferences.default "Default:"> -<!ENTITY zotero.preferences.items "items"> +<!ENTITY zotero.preferences.default "Αρχικές"> +<!ENTITY zotero.preferences.items "στοιχεία"> <!ENTITY zotero.preferences.period "."> -<!ENTITY zotero.preferences.settings "Settings"> - -<!ENTITY zotero.preferences.prefpane.general "General"> - -<!ENTITY zotero.preferences.userInterface "User Interface"> -<!ENTITY zotero.preferences.showIn "Load Zotero in:"> -<!ENTITY zotero.preferences.showIn.browserPane "Browser pane"> -<!ENTITY zotero.preferences.showIn.separateTab "Separate tab"> -<!ENTITY zotero.preferences.showIn.appTab "App tab"> -<!ENTITY zotero.preferences.statusBarIcon "Status bar icon:"> -<!ENTITY zotero.preferences.statusBarIcon.none "None"> -<!ENTITY zotero.preferences.fontSize "Font size:"> -<!ENTITY zotero.preferences.fontSize.small "Small"> -<!ENTITY zotero.preferences.fontSize.medium "Medium"> -<!ENTITY zotero.preferences.fontSize.large "Large"> +<!ENTITY zotero.preferences.settings "Ρυθμίσεις"> + +<!ENTITY zotero.preferences.prefpane.general "Γενικές"> + +<!ENTITY zotero.preferences.userInterface "Περιβάλλον χρήστη"> +<!ENTITY zotero.preferences.showIn "Φόρτωση του Zotero σε:"> +<!ENTITY zotero.preferences.showIn.browserPane "Πλαίσιο περιηγητή"> +<!ENTITY zotero.preferences.showIn.separateTab "Διαχωρισμός καρτέλας"> +<!ENTITY zotero.preferences.showIn.appTab "Καρτέλα εφαρμογών"> +<!ENTITY zotero.preferences.fontSize "Μέγεθος γραμματοσειράς:"> +<!ENTITY zotero.preferences.fontSize.small "Μικρό"> +<!ENTITY zotero.preferences.fontSize.medium "Μέσο"> +<!ENTITY zotero.preferences.fontSize.large "Μεγάλο"> <!ENTITY zotero.preferences.fontSize.xlarge "X-Large"> -<!ENTITY zotero.preferences.fontSize.notes "Note font size:"> - -<!ENTITY zotero.preferences.miscellaneous "Miscellaneous"> -<!ENTITY zotero.preferences.autoUpdate "Automatically check for updated translators and styles"> -<!ENTITY zotero.preferences.updateNow "Update now"> -<!ENTITY zotero.preferences.reportTranslationFailure "Report broken site translators"> -<!ENTITY zotero.preferences.zoteroDotOrgVersionHeader "Allow zotero.org to customize content based on current Zotero version"> -<!ENTITY zotero.preferences.zoteroDotOrgVersionHeader.tooltip "If enabled, the current Zotero version will be added to HTTP requests to zotero.org."> -<!ENTITY zotero.preferences.parseRISRefer "Use Zotero for downloaded BibTeX/RIS/Refer files"> -<!ENTITY zotero.preferences.automaticSnapshots "Automatically take snapshots when creating items from web pages"> -<!ENTITY zotero.preferences.downloadAssociatedFiles "Automatically attach associated PDFs and other files when saving items"> -<!ENTITY zotero.preferences.automaticTags "Automatically tag items with keywords and subject headings"> -<!ENTITY zotero.preferences.trashAutoEmptyDaysPre "Automatically remove items in the trash deleted more than"> -<!ENTITY zotero.preferences.trashAutoEmptyDaysPost "days ago"> - -<!ENTITY zotero.preferences.groups "Groups"> -<!ENTITY zotero.preferences.groups.whenCopyingInclude "When copying items between libraries, include:"> -<!ENTITY zotero.preferences.groups.childNotes "child notes"> -<!ENTITY zotero.preferences.groups.childFiles "child snapshots and imported files"> -<!ENTITY zotero.preferences.groups.childLinks "child links"> -<!ENTITY zotero.preferences.groups.tags "tags"> +<!ENTITY zotero.preferences.fontSize.notes "Μέγεθος γραμματοσειράς σημειώσεων:"> + +<!ENTITY zotero.preferences.miscellaneous "Διάφορα"> +<!ENTITY zotero.preferences.autoUpdate "Αυτόματος έλεγχος για ενημερωμένους μεταφραστές και στυλ"> +<!ENTITY zotero.preferences.updateNow "Ενημέρωση τώρα"> +<!ENTITY zotero.preferences.reportTranslationFailure "Αναφέρετε προβληματικούς μεταφραστές ιστοτόπου"> +<!ENTITY zotero.preferences.zoteroDotOrgVersionHeader "Να επιτρέπεται στο zotero.org να προσαρμόσει το περιεχόμενο, βάσει της τρέχουσας έκδοσης του Zotero"> +<!ENTITY zotero.preferences.zoteroDotOrgVersionHeader.tooltip "Αν ενεργοποιηθεί, η τρέχουσα έκδοση του Zotero θα συμπεριληφθεί στα αιτήματα HTTP προς το zotero.org."> +<!ENTITY zotero.preferences.parseRISRefer "Χρήση του Zotero για λήψη αρχείων Bib Tex/RIS/Refer"> +<!ENTITY zotero.preferences.automaticSnapshots "Αυτόματη λήψη φωτογραφικού στιγμιότυπου όταν δημιουργείτε στοιχεία από ιστοσελίδες"> +<!ENTITY zotero.preferences.downloadAssociatedFiles "Αυτόματη προσάρτηση των συνοδευτικών αρχείων PDF και άλλων όταν αποθηκεύετε στοιχεία"> +<!ENTITY zotero.preferences.automaticTags "Αυτόματη επισήμανση των στοιχείων με λέξεις κλειδιά και κεφαλίδες θέματος"> +<!ENTITY zotero.preferences.trashAutoEmptyDaysPre "Να απομακρύνονται αυτόματα από τον κάδο ανακύκλωσης στοιχεία που έχουν διαγραφεί για περισσότερο από"> +<!ENTITY zotero.preferences.trashAutoEmptyDaysPost "ημέρες πριν"> + +<!ENTITY zotero.preferences.groups "Ομάδες"> +<!ENTITY zotero.preferences.groups.whenCopyingInclude "Όταν αντιγράφονται στοιχεία μεταξύ βιβλιοθηκών, να συμπεριλαμβάνονται:"> +<!ENTITY zotero.preferences.groups.childNotes "θυγατρικές σημειώσεις"> +<!ENTITY zotero.preferences.groups.childFiles "θυγατρικά φωτογραφικά στιγμιότυπα και εισαγόμενα αρχεία"> +<!ENTITY zotero.preferences.groups.childLinks "θυγατρικοί σύνδεσμοι"> +<!ENTITY zotero.preferences.groups.tags "ετικέτες"> <!ENTITY zotero.preferences.openurl.caption "OpenURL"> -<!ENTITY zotero.preferences.openurl.search "Search for resolvers"> -<!ENTITY zotero.preferences.openurl.custom "Custom..."> -<!ENTITY zotero.preferences.openurl.server "Resolver:"> -<!ENTITY zotero.preferences.openurl.version "Version:"> +<!ENTITY zotero.preferences.openurl.search "Αναζήτηση διακομιστών resolver"> +<!ENTITY zotero.preferences.openurl.custom "Προσαρμογή..."> +<!ENTITY zotero.preferences.openurl.server "Διακομιστή resolver:"> +<!ENTITY zotero.preferences.openurl.version "Έκδοσης:"> <!ENTITY zotero.preferences.prefpane.sync "Sync"> -<!ENTITY zotero.preferences.sync.username "Username:"> -<!ENTITY zotero.preferences.sync.password "Password:"> -<!ENTITY zotero.preferences.sync.syncServer "Zotero Sync Server"> -<!ENTITY zotero.preferences.sync.createAccount "Create Account"> -<!ENTITY zotero.preferences.sync.lostPassword "Lost Password?"> -<!ENTITY zotero.preferences.sync.syncAutomatically "Sync automatically"> -<!ENTITY zotero.preferences.sync.syncFullTextContent "Sync full-text content"> -<!ENTITY zotero.preferences.sync.syncFullTextContent.desc "Zotero can sync the full-text content of files in your Zotero libraries with zotero.org and other linked devices, allowing you to easily search for your files wherever you are. The full-text content of your files will not be shared publicly."> -<!ENTITY zotero.preferences.sync.about "About Syncing"> -<!ENTITY zotero.preferences.sync.fileSyncing "File Syncing"> +<!ENTITY zotero.preferences.sync.username "Όνομα χρήστη:"> +<!ENTITY zotero.preferences.sync.password "Κωδικού:"> +<!ENTITY zotero.preferences.sync.syncServer "Διακομιστής συγχρονισμού Zotero"> +<!ENTITY zotero.preferences.sync.createAccount "Δημιουργία λογαριασμού"> +<!ENTITY zotero.preferences.sync.lostPassword "Χάσατε τον κωδικό;"> +<!ENTITY zotero.preferences.sync.syncAutomatically "Αυτόματος συγχρονισμός"> +<!ENTITY zotero.preferences.sync.syncFullTextContent "Συγχρονισμός περιεχομένου πλήρους κειμένου"> +<!ENTITY zotero.preferences.sync.syncFullTextContent.desc "Το Zotero μπορεί να συγχρονίσει με το zotero.org και άλλες συνδεδεμένες συσκευές, το πλήρους κειμένου περιεχόμενο των αρχείων μέσα στην βιβλιοθήκη σας Zotero, επιτρέποντας την εύκολη αναζήτηση των αρχείων σας οπουδήποτε κι αν είστε. Το περιεχόμενο πλήρους κειμένου των αρχείων σας δεν κοινοποιηθεί δημοσίως."> +<!ENTITY zotero.preferences.sync.about "Σχετικά με τον συγχρονισμό"> +<!ENTITY zotero.preferences.sync.fileSyncing "Συγχρονισμός αρχείου"> <!ENTITY zotero.preferences.sync.fileSyncing.url "URL:"> -<!ENTITY zotero.preferences.sync.fileSyncing.myLibrary "Sync attachment files in My Library using"> -<!ENTITY zotero.preferences.sync.fileSyncing.groups "Sync attachment files in group libraries using Zotero storage"> -<!ENTITY zotero.preferences.sync.fileSyncing.download "Download files"> -<!ENTITY zotero.preferences.sync.fileSyncing.download.atSyncTime "at sync time"> -<!ENTITY zotero.preferences.sync.fileSyncing.download.onDemand "as needed"> -<!ENTITY zotero.preferences.sync.fileSyncing.tos1 "By using Zotero storage, you agree to become bound by its"> -<!ENTITY zotero.preferences.sync.fileSyncing.tos2 "terms and conditions"> -<!ENTITY zotero.preferences.sync.reset.warning1 "The following operations are for use only in rare, specific situations and should not be used for general troubleshooting. In many cases, resetting will cause additional problems. See "> -<!ENTITY zotero.preferences.sync.reset.warning2 "Sync Reset Options"> -<!ENTITY zotero.preferences.sync.reset.warning3 " for more information."> -<!ENTITY zotero.preferences.sync.reset.fullSync "Full Sync with Zotero Server"> -<!ENTITY zotero.preferences.sync.reset.fullSync.desc "Merge local Zotero data with data from the sync server, ignoring sync history."> -<!ENTITY zotero.preferences.sync.reset.restoreFromServer "Restore from Zotero Server"> -<!ENTITY zotero.preferences.sync.reset.restoreFromServer.desc "Erase all local Zotero data and restore from the sync server."> -<!ENTITY zotero.preferences.sync.reset.restoreToServer "Restore to Zotero Server"> -<!ENTITY zotero.preferences.sync.reset.restoreToServer.desc "Erase all server data and overwrite with local Zotero data."> -<!ENTITY zotero.preferences.sync.reset.resetFileSyncHistory "Reset File Sync History"> -<!ENTITY zotero.preferences.sync.reset.resetFileSyncHistory.desc "Force checking of the storage server for all local attachment files."> -<!ENTITY zotero.preferences.sync.reset "Reset"> -<!ENTITY zotero.preferences.sync.reset.button "Reset..."> - - -<!ENTITY zotero.preferences.prefpane.search "Search"> -<!ENTITY zotero.preferences.search.fulltextCache "Full-Text Cache"> -<!ENTITY zotero.preferences.search.pdfIndexing "PDF Indexing"> -<!ENTITY zotero.preferences.search.indexStats "Index Statistics"> - -<!ENTITY zotero.preferences.search.indexStats.indexed "Indexed:"> -<!ENTITY zotero.preferences.search.indexStats.partial "Partial:"> -<!ENTITY zotero.preferences.search.indexStats.unindexed "Unindexed:"> -<!ENTITY zotero.preferences.search.indexStats.words "Words:"> - -<!ENTITY zotero.preferences.fulltext.textMaxLength "Maximum characters to index per file:"> -<!ENTITY zotero.preferences.fulltext.pdfMaxPages "Maximum pages to index per file:"> - -<!ENTITY zotero.preferences.prefpane.export "Export"> - -<!ENTITY zotero.preferences.citationOptions.caption "Citation Options"> -<!ENTITY zotero.preferences.export.citePaperJournalArticleURL "Include URLs of paper articles in references"> -<!ENTITY zotero.preferences.export.citePaperJournalArticleURL.description "When this option is disabled, Zotero includes URLs when citing journal, magazine, and newspaper articles only if the article does not have a page range specified."> - -<!ENTITY zotero.preferences.quickCopy.caption "Quick Copy"> -<!ENTITY zotero.preferences.quickCopy.defaultOutputFormat "Default Output Format:"> -<!ENTITY zotero.preferences.quickCopy.copyAsHTML "Copy as HTML"> -<!ENTITY zotero.preferences.quickCopy.macWarning "Note: Rich-text formatting will be lost on Mac OS X."> -<!ENTITY zotero.preferences.quickCopy.siteEditor.setings "Site-Specific Settings:"> -<!ENTITY zotero.preferences.quickCopy.siteEditor.domainPath "Domain/Path"> -<!ENTITY zotero.preferences.quickCopy.siteEditor.domainPath.example "(e.g. wikipedia.org)"> -<!ENTITY zotero.preferences.quickCopy.siteEditor.outputFormat "Output Format"> -<!ENTITY zotero.preferences.quickCopy.dragLimit "Disable Quick Copy when dragging more than"> - -<!ENTITY zotero.preferences.prefpane.cite "Cite"> -<!ENTITY zotero.preferences.cite.styles "Styles"> -<!ENTITY zotero.preferences.cite.wordProcessors "Word Processors"> -<!ENTITY zotero.preferences.cite.wordProcessors.noWordProcessorPluginsInstalled "No word processor plug-ins are currently installed."> -<!ENTITY zotero.preferences.cite.wordProcessors.getPlugins "Get word processor plug-ins..."> +<!ENTITY zotero.preferences.sync.fileSyncing.myLibrary "Συγχρονισμός προσαρτημένων αρχείων στην Βιβλιοθήκη μου, χρησιμοποιώντας"> +<!ENTITY zotero.preferences.sync.fileSyncing.groups "Συγχρονισμός προσαρτημένων αρχείων των ομαδικών βιβλιοθηκών χρησιμοποιώντας την αποθήκευση Zotero"> +<!ENTITY zotero.preferences.sync.fileSyncing.download "Λήψη αρχείων"> +<!ENTITY zotero.preferences.sync.fileSyncing.download.atSyncTime "την ώρα συγχρονισμού"> +<!ENTITY zotero.preferences.sync.fileSyncing.download.onDemand "εφόσον χρειάζεται"> +<!ENTITY zotero.preferences.sync.fileSyncing.tos1 "Χρησιμοποιώντας την αποθήκευση Zotero συμφωνείτε ότι δεσμεύεστε από τους"> +<!ENTITY zotero.preferences.sync.fileSyncing.tos2 "όρους και τις προϋποθέσεις"> +<!ENTITY zotero.preferences.sync.reset.warning1 "Οι λειτουργίες που ακολουθούν προορίζονται για χρήση μόνον σε σπάνιες, ειδικές συνθήκες και θα πρέπει να χρησιμοποιούνται για λόγους γενικής επίλυσης προβλημάτων. Σε πολλές περιπτώσεις η επαναφορά των ρυθμίσεων προκαλεί επιπρόσθετα προβλήματα. Δείτε"> +<!ENTITY zotero.preferences.sync.reset.warning2 "Συγχρονισμός ρυθμίσεων επαναφοράς"> +<!ENTITY zotero.preferences.sync.reset.warning3 "για περισσότερες πληροφορίες."> +<!ENTITY zotero.preferences.sync.reset.fullSync "Πλήρης συγχρονισμός με τους διακομιστές του Zotero"> +<!ENTITY zotero.preferences.sync.reset.fullSync.desc "Συνένωση των τοπικών δεδομένων Zotero με εκείνα του διακομιστή συγχρονισμού, αγνοώντας το ιστορικό συγχρονισμού."> +<!ENTITY zotero.preferences.sync.reset.restoreFromServer "Αποκατάσταση από τον διακομιστή του Zotero"> +<!ENTITY zotero.preferences.sync.reset.restoreFromServer.desc "Διαγραφή όλων των τοπικών δεδομένων Zotero και αποκατάστασή τους από τον διακομιστή συγχρονισμού."> +<!ENTITY zotero.preferences.sync.reset.restoreToServer "Αποκατάσταση στον διακομιστή Zotero"> +<!ENTITY zotero.preferences.sync.reset.restoreToServer.desc "Διαγραφή όλων των δεδομένων στον διακομιστή και αντικατάστασή τους με τα τοπικά δεδομένα Zotero."> +<!ENTITY zotero.preferences.sync.reset.resetFileSyncHistory "Μηδενισμός του ιστορικού συγχρονισμού αρχείων"> +<!ENTITY zotero.preferences.sync.reset.resetFileSyncHistory.desc "Έλεγχος του αποθηκευτικού διακομιστή για όλα τα τοπικά προσαρτημένα αρχεία."> +<!ENTITY zotero.preferences.sync.reset "Μηδενισμός/Επαναφορά"> +<!ENTITY zotero.preferences.sync.reset.button "Μηδενισμός..."> + + +<!ENTITY zotero.preferences.prefpane.search "Αναζήτηση"> +<!ENTITY zotero.preferences.search.fulltextCache "Προσωρινή μνήμη πλήρους κειμένου"> +<!ENTITY zotero.preferences.search.pdfIndexing "Καταλογοποίηση PDF"> +<!ENTITY zotero.preferences.search.indexStats "Καταλογοποίηση στατιστικών"> + +<!ENTITY zotero.preferences.search.indexStats.indexed "Έχουν καταλογοποιηθεί:"> +<!ENTITY zotero.preferences.search.indexStats.partial "Μερικά/Τμηματικά:"> +<!ENTITY zotero.preferences.search.indexStats.unindexed "Εκτός καταλογοποίησης:"> +<!ENTITY zotero.preferences.search.indexStats.words "Λέξεις:"> + +<!ENTITY zotero.preferences.fulltext.textMaxLength "Μέγιστος αριθμός χαρακτήρων καταλογοποίησης ανά αρχείο:"> +<!ENTITY zotero.preferences.fulltext.pdfMaxPages "Μέγιστος αριθμός σελίδων καταλογοποίησης ανά αρχείο: "> + +<!ENTITY zotero.preferences.prefpane.export "Εξαγωγή"> + +<!ENTITY zotero.preferences.citationOptions.caption "Επιλογές παραπομπών"> +<!ENTITY zotero.preferences.export.citePaperJournalArticleURL "Στις αναφορές να συμπεριλαμβάνονται τα URL έντυπων άρθρων"> +<!ENTITY zotero.preferences.export.citePaperJournalArticleURL.description "Όταν επιλέγεται αυτή η λειτουργία το Zotero συμπεριλαμβάνει τις διευθύνσεις URL κατά την παράθεση άρθρων περιοδικών και εφημερίδων, μόνο αν στα άρθρα δεν ορίζεται το εύρος των σελίδων."> + +<!ENTITY zotero.preferences.quickCopy.caption "Γρήγορη αντιγραφή"> +<!ENTITY zotero.preferences.quickCopy.defaultOutputFormat "Αρχική μορφή προϊόντος/εξόδου:"> +<!ENTITY zotero.preferences.quickCopy.copyAsHTML "Αντιγραφή ως HTML"> +<!ENTITY zotero.preferences.quickCopy.macWarning "Σημείωση: η μορφοποίηση εμπλουτισμένου κειμένου θα χαθεί στο Mac OS X."> +<!ENTITY zotero.preferences.quickCopy.siteEditor.setings "Ρυθμίσεις βάσει ιστοτόπου:"> +<!ENTITY zotero.preferences.quickCopy.siteEditor.domainPath "Περιοχή/Διαδρομή"> +<!ENTITY zotero.preferences.quickCopy.siteEditor.domainPath.example "(π.χ. wikipedia.org)"> +<!ENTITY zotero.preferences.quickCopy.siteEditor.outputFormat "Μορφή παραγόμενου αρχείου"> +<!ENTITY zotero.preferences.quickCopy.dragLimit "Απενεργοποίηση της Γρήγορης αντιγραφής όταν σύρονται περισσότερα από"> + +<!ENTITY zotero.preferences.prefpane.cite "Παράθεση/Παραπομπή"> +<!ENTITY zotero.preferences.cite.styles "Στυλ"> +<!ENTITY zotero.preferences.cite.wordProcessors "Επεξεργαστές κειμένου"> +<!ENTITY zotero.preferences.cite.wordProcessors.noWordProcessorPluginsInstalled "Προς το παρόν δεν υπάρχουν εγκατεστημένα πρόσθετα επεξεργαστή κειμένου."> +<!ENTITY zotero.preferences.cite.wordProcessors.getPlugins "Λήψη πρόσθετων επεξεργαστή κειμένου..."> <!ENTITY zotero.preferences.cite.wordProcessors.getPlugins.url "http://www.zotero.org/support/word_processor_plugin_installation_for_zotero_2.1"> -<!ENTITY zotero.preferences.cite.wordProcessors.useClassicAddCitationDialog "Use classic Add Citation dialog"> +<!ENTITY zotero.preferences.cite.wordProcessors.useClassicAddCitationDialog "Χρήση του κλασικού διαλόγου Προσθήκη παραπομπής"> -<!ENTITY zotero.preferences.cite.styles.styleManager "Style Manager"> -<!ENTITY zotero.preferences.cite.styles.styleManager.title "Title"> -<!ENTITY zotero.preferences.cite.styles.styleManager.updated "Updated"> +<!ENTITY zotero.preferences.cite.styles.styleManager "Διαχειριστής στυλ"> +<!ENTITY zotero.preferences.cite.styles.styleManager.title "Τίτλ"> +<!ENTITY zotero.preferences.cite.styles.styleManager.updated "Ενημερώθηκε"> <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> -<!ENTITY zotero.preferences.export.getAdditionalStyles "Get additional styles..."> - -<!ENTITY zotero.preferences.prefpane.keys "Shortcut Keys"> - -<!ENTITY zotero.preferences.keys.openZotero "Open/Close Zotero Pane"> -<!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> -<!ENTITY zotero.preferences.keys.toggleFullscreen "Toggle Fullscreen Mode"> -<!ENTITY zotero.preferences.keys.focusLibrariesPane "Focus Libraries Pane"> -<!ENTITY zotero.preferences.keys.quicksearch "Quick Search"> -<!ENTITY zotero.preferences.keys.newItem "Create a New Item"> -<!ENTITY zotero.preferences.keys.newNote "Create a New Note"> -<!ENTITY zotero.preferences.keys.toggleTagSelector "Toggle Tag Selector"> -<!ENTITY zotero.preferences.keys.copySelectedItemCitationsToClipboard "Copy Selected Item Citations to Clipboard"> -<!ENTITY zotero.preferences.keys.copySelectedItemsToClipboard "Copy Selected Items to Clipboard"> -<!ENTITY zotero.preferences.keys.importFromClipboard "Import from Clipboard"> -<!ENTITY zotero.preferences.keys.changesTakeEffect "Changes take effect in new windows only"> - -<!ENTITY zotero.preferences.prefpane.proxies "Proxies"> - -<!ENTITY zotero.preferences.proxies.proxyOptions "Proxy Options"> -<!ENTITY zotero.preferences.proxies.desc_before_link "Zotero will transparently redirect requests through saved proxies. See the"> -<!ENTITY zotero.preferences.proxies.desc_link "proxy documentation"> -<!ENTITY zotero.preferences.proxies.desc_after_link "for more information."> -<!ENTITY zotero.preferences.proxies.transparent "Transparently redirect requests through previously used proxies"> -<!ENTITY zotero.preferences.proxies.autoRecognize "Automatically recognize proxied resources"> -<!ENTITY zotero.preferences.proxies.disableByDomain "Disable proxy redirection when my domain name contains "> -<!ENTITY zotero.preferences.proxies.configured "Configured Proxies"> -<!ENTITY zotero.preferences.proxies.hostname "Hostname"> -<!ENTITY zotero.preferences.proxies.scheme "Scheme"> +<!ENTITY zotero.preferences.export.getAdditionalStyles "Λήψη επιπλέον στυλ..."> + +<!ENTITY zotero.preferences.keys.openZotero "Άνοιγμα/Κλείσιμο του πλαισίου Zotero"> +<!ENTITY zotero.preferences.keys.saveToZotero "Αποθήκευση στο Zotero (εικονίδιο γραμμής διεύθυνσης)"> +<!ENTITY zotero.preferences.keys.toggleFullscreen "Εναλλαγή σε λειτουργία πλήρους οθόνης"> +<!ENTITY zotero.preferences.keys.focusLibrariesPane "Εστίαση στο πλαίσιο Βιβλιοθηκών"> +<!ENTITY zotero.preferences.keys.quicksearch "Γρήγορη αναζήτηση"> +<!ENTITY zotero.preferences.keys.newItem "Δημιουργία Νέου στοιχείου"> +<!ENTITY zotero.preferences.keys.newNote "Δημιουργία Νέας σημείωσης"> +<!ENTITY zotero.preferences.keys.toggleTagSelector "Εναλλαγή Επιλογέα ετικετών"> +<!ENTITY zotero.preferences.keys.copySelectedItemCitationsToClipboard "Αντιγραφή των επιλεγμένων παραπομπών στοιχείου στην προσωρινή μνήμη"> +<!ENTITY zotero.preferences.keys.copySelectedItemsToClipboard "Αντιγραφή των επιλεγμένων στοιχείων στην προσωρινή μνήμη"> +<!ENTITY zotero.preferences.keys.importFromClipboard "Εισαγωγή από την προσωρινή μνήμη"> +<!ENTITY zotero.preferences.keys.changesTakeEffect "Οι αλλαγές εφαρμόζονται μόνον στα νέα παράθυρα"> + +<!ENTITY zotero.preferences.prefpane.proxies "Διαμεσολαβητές"> + +<!ENTITY zotero.preferences.proxies.proxyOptions "Επιλογές διαμεσολαβητή"> +<!ENTITY zotero.preferences.proxies.desc_before_link "Το Zotero θα ανακατευθύνει τα αιτήματα μέσω των αποθηκευμένων διαμεσολαβητών. Δείτε την"> +<!ENTITY zotero.preferences.proxies.desc_link "τεκμηρίωση διαμεσολαβητών"> +<!ENTITY zotero.preferences.proxies.desc_after_link "για περισσότερες πληροφορίες."> +<!ENTITY zotero.preferences.proxies.transparent "Ενεργοποίηση της ανακατεύθυνσης διαμεσολαβητή"> +<!ENTITY zotero.preferences.proxies.autoRecognize "Αυτόματη αναγνώριση διαμεσολαβημένων πόρων"> +<!ENTITY zotero.preferences.proxies.disableByDomain "Να απενεργοποιείται η ανακατεύθυνση διαμεσολαβητή όταν η περιοχή μου περιέχει"> +<!ENTITY zotero.preferences.proxies.configured "Προσαρμοσμένους διαμεσολαβητές"> +<!ENTITY zotero.preferences.proxies.hostname "Κεντρικό όνομα διακομιστή"> +<!ENTITY zotero.preferences.proxies.scheme "Σχήμα"> <!ENTITY zotero.preferences.proxies.multiSite "Multi-Site"> -<!ENTITY zotero.preferences.proxies.autoAssociate "Automatically associate new hosts"> -<!ENTITY zotero.preferences.proxies.variables "You may use the following variables in your proxy scheme:"> -<!ENTITY zotero.preferences.proxies.h_variable "&#37;h - The hostname of the proxied site (e.g., www.zotero.org)"> -<!ENTITY zotero.preferences.proxies.p_variable "&#37;p - The path of the proxied page excluding the leading slash (e.g., about/index.html)"> -<!ENTITY zotero.preferences.proxies.d_variable "&#37;d - The directory path (e.g., about/)"> -<!ENTITY zotero.preferences.proxies.f_variable "&#37;f - The filename (e.g., index.html)"> -<!ENTITY zotero.preferences.proxies.a_variable "&#37;a - Any string"> - -<!ENTITY zotero.preferences.prefpane.advanced "Advanced"> -<!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> - -<!ENTITY zotero.preferences.prefpane.locate "Locate"> -<!ENTITY zotero.preferences.locate.locateEngineManager "Article Lookup Engine Manager"> -<!ENTITY zotero.preferences.locate.description "Description"> -<!ENTITY zotero.preferences.locate.name "Name"> -<!ENTITY zotero.preferences.locate.locateEnginedescription "A Lookup Engine extends the capability of the Locate drop down in the Info pane. By enabling Lookup Engines in the list below they will be added to the drop down and can be used to locate resources from your library on the web."> -<!ENTITY zotero.preferences.locate.addDescription "To add a Lookup Engine that is not on the list, visit the desired search engine in your browser and select 'Add' from the Firefox Search Bar. When you reopen this preference pane you will have the option to enable the new Lookup Engine."> -<!ENTITY zotero.preferences.locate.restoreDefaults "Restore Defaults"> - -<!ENTITY zotero.preferences.charset "Character Encoding"> -<!ENTITY zotero.preferences.charset.importCharset "Import Character Encoding"> -<!ENTITY zotero.preferences.charset.displayExportOption "Display character encoding option on export"> - -<!ENTITY zotero.preferences.dataDir "Storage Location"> -<!ENTITY zotero.preferences.dataDir.useProfile "Use profile directory"> -<!ENTITY zotero.preferences.dataDir.custom "Custom:"> -<!ENTITY zotero.preferences.dataDir.choose "Choose..."> -<!ENTITY zotero.preferences.dataDir.reveal "Show Data Directory"> +<!ENTITY zotero.preferences.proxies.autoAssociate "Αυτόματη συσχέτιση νέων διακομιστών"> +<!ENTITY zotero.preferences.proxies.variables "Στο σχήμα διακομιστών σας, μπορείτε να χρησιμοποιείτε τις ακόλουθες μεταβλητές:"> +<!ENTITY zotero.preferences.proxies.h_variable "&#37;h - Το όνομα υπολογιστή για τον διαμεσολαβούμενο ιστότοπο (π.χ. www.zoter.org)"> +<!ENTITY zotero.preferences.proxies.p_variable "&#37;p - Η διαδρομή της διαμεσολαβούμενης σελίδας, χωρίς την πλάγια κάθετο στην αρχή (π.χ. about/index.html)"> +<!ENTITY zotero.preferences.proxies.d_variable "&#37;d - Η διαδρομή καταλόγου (π.χ. about/)"> +<!ENTITY zotero.preferences.proxies.f_variable "&#37;f - Το όνομα αρχείου (π.χ. index.html)"> +<!ENTITY zotero.preferences.proxies.a_variable "&#37;a - Οποιοδήποτε αλφαριθμητικό"> + +<!ENTITY zotero.preferences.prefpane.advanced "Προχωρημένα"> +<!ENTITY zotero.preferences.advanced.filesAndFolders "Αρχεία και Φάκελοι"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> + +<!ENTITY zotero.preferences.prefpane.locate "Εντοπισμός"> +<!ENTITY zotero.preferences.locate.locateEngineManager "Διαχειριστής Μηχανής Αναζήτησης Άρθρων"> +<!ENTITY zotero.preferences.locate.description "Περιγραφή"> +<!ENTITY zotero.preferences.locate.name "Όνομα"> +<!ENTITY zotero.preferences.locate.locateEnginedescription "Η Μηχανή Αναζήτησης επεκτείνει τις δυνατότητες της αναπτυσσόμενης λίστας Εντοπισμού, του πλαισίου Πληροφορίες. Ενεργοποιώντας τις Μηχανές Αναζήτησης στην λίστα που ακολουθεί, αυτές θα προστεθούν στην αναπτυσσόμενη λίστα και μπορούν να χρησιμοποιηθούν για τον εντοπισμό πόρων από την βιβλιοθήκη σας στο web."> +<!ENTITY zotero.preferences.locate.addDescription "Για να προσθέσετε μια Μηχανή Αναζήτησης που δεν υπάρχει στην λίστα, επισκεφθείτε την μηχανή αναζήτησης της αρεσκείας σας μέσα από τον περιηγητή σας και επιλέξτε &#34;Add&#34; μέσα από το μενού Εντοπισμού του Zotero."> +<!ENTITY zotero.preferences.locate.restoreDefaults "Επαναφορά αρχικών ρυθμίσεων"> + +<!ENTITY zotero.preferences.charset "Κωδικοποίηση χαρακτήρων"> +<!ENTITY zotero.preferences.charset.importCharset "Εισαγωγή κωδικοποίησης χαρακτήρων"> +<!ENTITY zotero.preferences.charset.displayExportOption "Εμφάνιση της επιλογής κωδικοποίησης χαρακτήρων κατά την εξαγωγή"> + +<!ENTITY zotero.preferences.dataDir "Θέση Καταλόγου δεδομένων"> +<!ENTITY zotero.preferences.dataDir.useProfile "Χρήση του καταλόγου προφίλ"> +<!ENTITY zotero.preferences.dataDir.custom "Προσαρμοσμένος:"> +<!ENTITY zotero.preferences.dataDir.choose "Επιλέξτε..."> +<!ENTITY zotero.preferences.dataDir.reveal "Εμφάνιση του Καταλόγου δεδομένων"> <!ENTITY zotero.preferences.attachmentBaseDir.caption "Linked Attachment Base Directory"> -<!ENTITY zotero.preferences.attachmentBaseDir.message "Zotero will use relative paths for linked file attachments within the base directory, allowing you to access files on different computers as long as the file structure within the base directory remains the same."> -<!ENTITY zotero.preferences.attachmentBaseDir.basePath "Base directory:"> -<!ENTITY zotero.preferences.attachmentBaseDir.selectBasePath "Choose…"> -<!ENTITY zotero.preferences.attachmentBaseDir.resetBasePath "Revert to Absolute Paths…"> - -<!ENTITY zotero.preferences.dbMaintenance "Database Maintenance"> -<!ENTITY zotero.preferences.dbMaintenance.integrityCheck "Check Database Integrity"> -<!ENTITY zotero.preferences.dbMaintenance.resetTranslatorsAndStyles "Reset Translators and Styles..."> -<!ENTITY zotero.preferences.dbMaintenance.resetTranslators "Reset Translators..."> -<!ENTITY zotero.preferences.dbMaintenance.resetStyles "Reset Styles..."> - -<!ENTITY zotero.preferences.debugOutputLogging "Debug Output Logging"> -<!ENTITY zotero.preferences.debugOutputLogging.message "Debug output can help Zotero developers diagnose problems in Zotero. Debug logging will slow down Zotero, so you should generally leave it disabled unless a Zotero developer requests debug output."> -<!ENTITY zotero.preferences.debugOutputLogging.linesLogged "lines logged"> -<!ENTITY zotero.preferences.debugOutputLogging.enableAfterRestart "Enable after restart"> -<!ENTITY zotero.preferences.debugOutputLogging.viewOutput "View Output"> -<!ENTITY zotero.preferences.debugOutputLogging.clearOutput "Clear Output"> -<!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Submit to Zotero Server"> - -<!ENTITY zotero.preferences.openAboutConfig "Open about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Open CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Open CSL Preview"> -<!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> +<!ENTITY zotero.preferences.attachmentBaseDir.message "Το Zotero θα χρησιμοποιήσει σχετικές διαδρομές για τα συνδεδεμένα προσαρτήματα αρχείων εντός του καταλόγου βάσης του, επιτρέποντας την πρόσβαση προς αρχείων σε διαφορετικούς υπολογιστές, εφόσον η δομή των αρχείων μέσα στον κατάλογο βάσης παραμένει η ίδια."> +<!ENTITY zotero.preferences.attachmentBaseDir.basePath "Κατάλογος βάσης:"> +<!ENTITY zotero.preferences.attachmentBaseDir.selectBasePath "Επιλέξτε..."> +<!ENTITY zotero.preferences.attachmentBaseDir.resetBasePath "Επαναφορά σε απόλυτες διαδρομές..."> + +<!ENTITY zotero.preferences.dbMaintenance "Συντήρηση βάσης δεδομένων"> +<!ENTITY zotero.preferences.dbMaintenance.integrityCheck "Έλεγχος της ακεραιότητας της βάσης δεδομένων"> +<!ENTITY zotero.preferences.dbMaintenance.resetTranslatorsAndStyles "Μηδενισμός/Επαναφορά μεταφραστών και στυλ..."> +<!ENTITY zotero.preferences.dbMaintenance.resetTranslators "Επαναφορά/Μηδενισμός μεταφραστών..."> +<!ENTITY zotero.preferences.dbMaintenance.resetStyles "Επαναφορά/Μηδενισμός στυλ..."> + +<!ENTITY zotero.preferences.debugOutputLogging "Καταγραφές αποσφαλμάτωσης αποτελεσμάτων"> +<!ENTITY zotero.preferences.debugOutputLogging.message "Η έξοδος ή αποτέλεσμα προς αποσφαλμάτωση μπορεί να βοηθήσει τους προγραμματιστές του Zotero να διαγιγνώσκουν προβλήματα. Οι καταγραφές αποσφαλμάτωσης θα επιβραδύνουν το Zotero, γι' αυτό εν γένει πρέπει να μην τις ενεργοποιείτε, εκτός κι αν κάποιος προγραμματιστής του Zotero ζητά εξόδους αποσφαλμάτωσης."> +<!ENTITY zotero.preferences.debugOutputLogging.linesLogged "καταγεγραμμένες γραμμές"> +<!ENTITY zotero.preferences.debugOutputLogging.enableAfterRestart "Ενεργοποίηση μετά από επανεκκίνηση"> +<!ENTITY zotero.preferences.debugOutputLogging.viewOutput "Προβολή εξόδου"> +<!ENTITY zotero.preferences.debugOutputLogging.clearOutput "Εκκαθάριση εξόδου"> +<!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Να υποβληθούν στον διακομιστή Zotero"> + +<!ENTITY zotero.preferences.openAboutConfig "Άνοιγμα about:config"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> +<!ENTITY zotero.preferences.openAboutMemory "Άνοιγμα about:memory"> diff --git a/chrome/locale/el-GR/zotero/searchbox.dtd b/chrome/locale/el-GR/zotero/searchbox.dtd @@ -1,6 +1,6 @@ <!ENTITY zotero.search.name "Όνομα:"> -<!ENTITY zotero.search.searchInLibrary "Search in library:"> +<!ENTITY zotero.search.searchInLibrary "Αναζήτηση στην βιβλιοθήκη:"> <!ENTITY zotero.search.joinMode.prefix "Ταίριασμα"> <!ENTITY zotero.search.joinMode.any "οποιαδήποτε"> @@ -13,7 +13,7 @@ <!ENTITY zotero.search.textModes.phrase "Φράση"> <!ENTITY zotero.search.textModes.phraseBinary "Φράση (συμπ. δυαδικά αρχεία)"> -<!ENTITY zotero.search.textModes.regexp "Regexp"> +<!ENTITY zotero.search.textModes.regexp "Κανονική έκφραση regexp"> <!ENTITY zotero.search.textModes.regexpCS "Regexp (διακριση πεζών-κεφαλαίων)"> <!ENTITY zotero.search.date.units.days "ημέρες"> diff --git a/chrome/locale/el-GR/zotero/standalone.dtd b/chrome/locale/el-GR/zotero/standalone.dtd @@ -1,101 +1,101 @@ -<!ENTITY preferencesCmdMac.label "Preferences…"> +<!ENTITY preferencesCmdMac.label "Προτιμήσεις..."> <!ENTITY preferencesCmdMac.commandkey ","> -<!ENTITY servicesMenuMac.label "Services"> -<!ENTITY hideThisAppCmdMac.label "Hide &brandShortName;"> +<!ENTITY servicesMenuMac.label "Υπηρεσίες"> +<!ENTITY hideThisAppCmdMac.label "Απόκρυψη "> <!ENTITY hideThisAppCmdMac.commandkey "H"> -<!ENTITY hideOtherAppsCmdMac.label "Hide Others"> -<!ENTITY hideOtherAppsCmdMac.commandkey "H"> -<!ENTITY showAllAppsCmdMac.label "Show All"> -<!ENTITY quitApplicationCmdMac.label "Quit Zotero"> +<!ENTITY hideOtherAppsCmdMac.label "Απόκρυψη άλλων"> +<!ENTITY hideOtherAppsCmdMac.commandkey "Η"> +<!ENTITY showAllAppsCmdMac.label "Εμφάνιση όλων"> +<!ENTITY quitApplicationCmdMac.label "Κλείσιμο Zotero"> <!ENTITY quitApplicationCmdMac.key "Q"> -<!ENTITY fileMenu.label "File"> +<!ENTITY fileMenu.label "Αρχείο"> <!ENTITY fileMenu.accesskey "F"> -<!ENTITY saveCmd.label "Save…"> +<!ENTITY saveCmd.label "Αποθήκευση..."> <!ENTITY saveCmd.key "S"> <!ENTITY saveCmd.accesskey "A"> -<!ENTITY pageSetupCmd.label "Page Setup…"> +<!ENTITY pageSetupCmd.label "Ρυθμίσεις σελίδας..."> <!ENTITY pageSetupCmd.accesskey "U"> -<!ENTITY printCmd.label "Print…"> +<!ENTITY printCmd.label "Εκτύπωση..."> <!ENTITY printCmd.key "P"> -<!ENTITY printCmd.accesskey "P"> -<!ENTITY closeCmd.label "Close"> +<!ENTITY printCmd.accesskey "Ρ"> +<!ENTITY closeCmd.label "Κλείσιμο"> <!ENTITY closeCmd.key "W"> <!ENTITY closeCmd.accesskey "C"> -<!ENTITY quitApplicationCmdWin.label "Exit"> +<!ENTITY quitApplicationCmdWin.label "Έξοδος"> <!ENTITY quitApplicationCmdWin.accesskey "x"> -<!ENTITY quitApplicationCmd.label "Quit"> +<!ENTITY quitApplicationCmd.label "Κλείσιμο"> <!ENTITY quitApplicationCmd.accesskey "Q"> -<!ENTITY editMenu.label "Edit"> -<!ENTITY editMenu.accesskey "E"> -<!ENTITY undoCmd.label "Undo"> -<!ENTITY undoCmd.key "Z"> +<!ENTITY editMenu.label "Επεξεργασία"> +<!ENTITY editMenu.accesskey "Ε"> +<!ENTITY undoCmd.label "Επαναφορά"> +<!ENTITY undoCmd.key "Ζ"> <!ENTITY undoCmd.accesskey "U"> -<!ENTITY redoCmd.label "Redo"> -<!ENTITY redoCmd.key "Y"> +<!ENTITY redoCmd.label "Επανάληψη"> +<!ENTITY redoCmd.key "Υ"> <!ENTITY redoCmd.accesskey "R"> -<!ENTITY cutCmd.label "Cut"> -<!ENTITY cutCmd.key "X"> +<!ENTITY cutCmd.label "Αποκοπή"> +<!ENTITY cutCmd.key "Χ"> <!ENTITY cutCmd.accesskey "t"> -<!ENTITY copyCmd.label "Copy"> +<!ENTITY copyCmd.label "Αντιγραφή"> <!ENTITY copyCmd.key "C"> <!ENTITY copyCmd.accesskey "C"> -<!ENTITY copyCitationCmd.label "Copy Citation"> -<!ENTITY copyBibliographyCmd.label "Copy Bibliography"> -<!ENTITY pasteCmd.label "Paste"> +<!ENTITY copyCitationCmd.label "Αντιγραφή παραπομπής/παράθεσης"> +<!ENTITY copyBibliographyCmd.label "Αντιγραφή βιβλιογραφίας"> +<!ENTITY pasteCmd.label "Επικόλληση"> <!ENTITY pasteCmd.key "V"> <!ENTITY pasteCmd.accesskey "P"> -<!ENTITY deleteCmd.label "Delete"> +<!ENTITY deleteCmd.label "Διαγραφή"> <!ENTITY deleteCmd.key "D"> <!ENTITY deleteCmd.accesskey "D"> -<!ENTITY selectAllCmd.label "Select All"> -<!ENTITY selectAllCmd.key "A"> -<!ENTITY selectAllCmd.accesskey "A"> -<!ENTITY preferencesCmd.label "Preferences"> -<!ENTITY preferencesCmd.accesskey "O"> -<!ENTITY preferencesCmdUnix.label "Preferences"> +<!ENTITY selectAllCmd.label "Επιλογή όλων"> +<!ENTITY selectAllCmd.key "Α"> +<!ENTITY selectAllCmd.accesskey "Α"> +<!ENTITY preferencesCmd.label "Προτιμήσεις"> +<!ENTITY preferencesCmd.accesskey "Ο"> +<!ENTITY preferencesCmdUnix.label "Προτιμήσεις"> <!ENTITY preferencesCmdUnix.accesskey "n"> -<!ENTITY findCmd.label "Find"> +<!ENTITY findCmd.label "Εύρεση"> <!ENTITY findCmd.accesskey "F"> <!ENTITY findCmd.commandkey "f"> -<!ENTITY bidiSwitchPageDirectionItem.label "Switch Page Direction"> +<!ENTITY bidiSwitchPageDirectionItem.label "Αλλαγή κατεύθυνσης σελίδας"> <!ENTITY bidiSwitchPageDirectionItem.accesskey "g"> -<!ENTITY bidiSwitchTextDirectionItem.label "Switch Text Direction"> +<!ENTITY bidiSwitchTextDirectionItem.label "Αλλαγή κατεύθυνσης κειμένου"> <!ENTITY bidiSwitchTextDirectionItem.accesskey "w"> <!ENTITY bidiSwitchTextDirectionItem.commandkey "X"> -<!ENTITY toolsMenu.label "Tools"> -<!ENTITY toolsMenu.accesskey "T"> -<!ENTITY addons.label "Add-ons"> +<!ENTITY toolsMenu.label "Εργαλεία"> +<!ENTITY toolsMenu.accesskey "Τ"> +<!ENTITY addons.label "Πρόσθετα"> <!ENTITY minimizeWindow.key "m"> -<!ENTITY minimizeWindow.label "Minimize"> -<!ENTITY bringAllToFront.label "Bring All to Front"> -<!ENTITY zoomWindow.label "Zoom"> -<!ENTITY windowMenu.label "Window"> +<!ENTITY minimizeWindow.label "Ελαχιστοποίηση"> +<!ENTITY bringAllToFront.label "Όλα στο προσκήνιο"> +<!ENTITY zoomWindow.label "Μεγέθυνση"> +<!ENTITY windowMenu.label "Παράθυρο"> -<!ENTITY helpMenu.label "Help"> -<!ENTITY helpMenu.accesskey "H"> +<!ENTITY helpMenu.label "Βοήθεια"> +<!ENTITY helpMenu.accesskey "Η"> -<!ENTITY helpMenuWin.label "Help"> -<!ENTITY helpMenuWin.accesskey "H"> +<!ENTITY helpMenuWin.label "Βοήθεια"> +<!ENTITY helpMenuWin.accesskey "Η"> <!ENTITY helpMac.commandkey "?"> -<!ENTITY aboutProduct.label "About &brandShortName;"> -<!ENTITY aboutProduct.accesskey "A"> -<!ENTITY productHelp.label "Support and Documentation"> +<!ENTITY aboutProduct.label "Σχετικά με "> +<!ENTITY aboutProduct.accesskey "Α"> +<!ENTITY productHelp.label "Υποστήριξη και Τεκμηρίωση"> <!ENTITY productHelp.accesskey "D"> -<!ENTITY helpTroubleshootingInfo.label "Troubleshooting Information"> -<!ENTITY helpTroubleshootingInfo.accesskey "T"> -<!ENTITY helpFeedbackPage.label "Submit Feedback…"> +<!ENTITY helpTroubleshootingInfo.label "Πληροφορίες για αντιμετώπιση προβλημάτων"> +<!ENTITY helpTroubleshootingInfo.accesskey "Τ"> +<!ENTITY helpFeedbackPage.label "Επικοινωνία..."> <!ENTITY helpFeedbackPage.accesskey "S"> -<!ENTITY helpReportErrors.label "Report Errors to Zotero…"> +<!ENTITY helpReportErrors.label "Αναφέρετε Σφάλματα στο Zotero..."> <!ENTITY helpReportErrors.accesskey "R"> -<!ENTITY helpCheckForUpdates.label "Check for Updates…"> +<!ENTITY helpCheckForUpdates.label "Έλεγχος για ενημερώσεις..."> <!ENTITY helpCheckForUpdates.accesskey "U"> diff --git a/chrome/locale/el-GR/zotero/timeline.properties b/chrome/locale/el-GR/zotero/timeline.properties @@ -1,21 +1,21 @@ -general.title=Zotero Timeline -general.filter=Filter: -general.highlight=Highlight: -general.clearAll=Clear All -general.jumpToYear=Jump to Year: -general.firstBand=First Band: -general.secondBand=Second Band: -general.thirdBand=Third Band: -general.dateType=Date Type: -general.timelineHeight=Timeline Height: -general.fitToScreen=Fit to Screen +general.title=Χρονοδιάγραμμα Zotero +general.filter=Φίλτρο: +general.highlight=Επισήμανση: +general.clearAll=Καθαρισμός όλων +general.jumpToYear=Μετάβαση στο έτος: +general.firstBand=Πρώτη μπάντα: +general.secondBand=Δεύτερη μπάντα: +general.thirdBand=Τρίτη μπάντα: +general.dateType=Τύπος ημερομηνίας: +general.timelineHeight=Ύψος χρονοδιαγράμματος: +general.fitToScreen=Ταίριασμα με την οθόνη -interval.day=Day -interval.month=Month -interval.year=Year -interval.decade=Decade -interval.century=Century -interval.millennium=Millennium +interval.day=Ημέρα +interval.month=Μήνας +interval.year=Έτος +interval.decade=Δεκαετία +interval.century=Αιών +interval.millennium=Χιλιετιρίδα -dateType.published=Date Published -dateType.modified=Date Modified +dateType.published=Ημερομηνία δημοσίευσης +dateType.modified=Ημερομηνία τροποποίησης diff --git a/chrome/locale/el-GR/zotero/zotero.dtd b/chrome/locale/el-GR/zotero/zotero.dtd @@ -1,275 +1,277 @@ -<!ENTITY zotero.general.optional "(Optional)"> -<!ENTITY zotero.general.note "Note:"> -<!ENTITY zotero.general.selectAll "Select All"> -<!ENTITY zotero.general.deselectAll "Deselect All"> -<!ENTITY zotero.general.edit "Edit"> -<!ENTITY zotero.general.delete "Delete"> -<!ENTITY zotero.general.ok "OK"> -<!ENTITY zotero.general.cancel "Cancel"> - -<!ENTITY zotero.errorReport.title "Zotero Error Report"> -<!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> -<!ENTITY zotero.errorReport.submissionInProgress "Please wait while the error report is submitted."> -<!ENTITY zotero.errorReport.submitted "Your error report has been submitted."> -<!ENTITY zotero.errorReport.reportID "Report ID:"> -<!ENTITY zotero.errorReport.postToForums "Please post a message to the Zotero forums (forums.zotero.org) with this Report ID, a description of the problem, and any steps necessary to reproduce it."> +<!ENTITY zotero.general.optional "(Προαιρετικό)"> +<!ENTITY zotero.general.note "Σημείωση:"> +<!ENTITY zotero.general.selectAll "Επιλογή όλων"> +<!ENTITY zotero.general.deselectAll "Αποεπιλογή όλων"> +<!ENTITY zotero.general.edit "Επεξεργασία"> +<!ENTITY zotero.general.delete "Διαγραφή"> +<!ENTITY zotero.general.ok "ΟΚ"> +<!ENTITY zotero.general.cancel "Ακύρωση"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> + +<!ENTITY zotero.errorReport.title "Αναφορά σφάλματος Zotero"> +<!ENTITY zotero.errorReport.unrelatedMessages "Πιθανόν να συμπεριληφθούν μηνύματα άσχετα με το Zotero."> +<!ENTITY zotero.errorReport.submissionInProgress "Περιμένετε μέχρι να υποβληθεί η αναφορά σφάλματος."> +<!ENTITY zotero.errorReport.submitted "Η αναφορά σας σφάλματος υποβλήθηκε."> +<!ENTITY zotero.errorReport.reportID "Ταυτότητα αναφοράς:"> +<!ENTITY zotero.errorReport.postToForums "Παρακαλώ, στείλτε ένα μήνυμα στο φόρουμ του Zotero (forums.zotero.org) με αυτή την Ταυτότητα Σφάλματος, μια περιγραφή του προβλήματος και τα απαραίτητα βήματα για την αναπαραγωγή του."> <!ENTITY zotero.errorReport.notReviewed "Error reports are generally not reviewed unless referred to in the forums."> -<!ENTITY zotero.upgrade.title "Zotero Upgrade Wizard"> -<!ENTITY zotero.upgrade.newVersionInstalled "You have installed a new version of Zotero."> -<!ENTITY zotero.upgrade.upgradeRequired "Your Zotero database must be upgraded to work with the new version."> -<!ENTITY zotero.upgrade.autoBackup "Your existing database will be backed up automatically before any changes are made."> -<!ENTITY zotero.upgrade.majorUpgrade "This is a major upgrade."> -<!ENTITY zotero.upgrade.majorUpgradeBeforeLink "Be sure you have reviewed the"> -<!ENTITY zotero.upgrade.majorUpgradeLink "upgrade instructions"> -<!ENTITY zotero.upgrade.majorUpgradeAfterLink "before continuing."> -<!ENTITY zotero.upgrade.upgradeInProgress "Please wait for the upgrade process to finish. This may take a few minutes."> -<!ENTITY zotero.upgrade.upgradeSucceeded "Your Zotero database has been successfully upgraded."> -<!ENTITY zotero.upgrade.changeLogBeforeLink "Please see"> -<!ENTITY zotero.upgrade.changeLogLink "the changelog"> -<!ENTITY zotero.upgrade.changeLogAfterLink "to find out what's new."> - -<!ENTITY zotero.contextMenu.addTextToCurrentNote "Add Selection to Zotero Note"> -<!ENTITY zotero.contextMenu.addTextToNewNote "Create Zotero Item and Note from Selection"> -<!ENTITY zotero.contextMenu.saveLinkAsItem "Save Link As Zotero Item"> -<!ENTITY zotero.contextMenu.saveImageAsItem "Save Image As Zotero Item"> - -<!ENTITY zotero.tabs.info.label "Info"> -<!ENTITY zotero.tabs.notes.label "Notes"> -<!ENTITY zotero.tabs.attachments.label "Attachments"> -<!ENTITY zotero.tabs.tags.label "Tags"> -<!ENTITY zotero.tabs.related.label "Related"> -<!ENTITY zotero.notes.separate "Edit in a separate window"> - -<!ENTITY zotero.toolbar.duplicate.label "Show Duplicates"> -<!ENTITY zotero.collections.showUnfiledItems "Show Unfiled Items"> - -<!ENTITY zotero.items.itemType "Item Type"> -<!ENTITY zotero.items.type_column "Item Type"> -<!ENTITY zotero.items.title_column "Title"> -<!ENTITY zotero.items.creator_column "Creator"> -<!ENTITY zotero.items.date_column "Date"> -<!ENTITY zotero.items.year_column "Year"> -<!ENTITY zotero.items.publisher_column "Publisher"> -<!ENTITY zotero.items.publication_column "Publication"> -<!ENTITY zotero.items.journalAbbr_column "Journal Abbr"> -<!ENTITY zotero.items.language_column "Language"> -<!ENTITY zotero.items.accessDate_column "Accessed"> -<!ENTITY zotero.items.libraryCatalog_column "Library Catalog"> -<!ENTITY zotero.items.callNumber_column "Call Number"> -<!ENTITY zotero.items.rights_column "Rights"> -<!ENTITY zotero.items.dateAdded_column "Date Added"> -<!ENTITY zotero.items.dateModified_column "Date Modified"> -<!ENTITY zotero.items.extra_column "Extra"> -<!ENTITY zotero.items.archive_column "Archive"> -<!ENTITY zotero.items.archiveLocation_column "Loc. in Archive"> -<!ENTITY zotero.items.place_column "Place"> -<!ENTITY zotero.items.volume_column "Volume"> -<!ENTITY zotero.items.edition_column "Edition"> -<!ENTITY zotero.items.pages_column "Pages"> -<!ENTITY zotero.items.issue_column "Issue"> -<!ENTITY zotero.items.series_column "Series"> -<!ENTITY zotero.items.seriesTitle_column "Series Title"> -<!ENTITY zotero.items.court_column "Court"> -<!ENTITY zotero.items.medium_column "Medium/Format"> -<!ENTITY zotero.items.genre_column "Genre"> -<!ENTITY zotero.items.system_column "System"> -<!ENTITY zotero.items.moreColumns.label "More Columns"> -<!ENTITY zotero.items.restoreColumnOrder.label "Restore Column Order"> - -<!ENTITY zotero.items.menu.showInLibrary "Show in Library"> -<!ENTITY zotero.items.menu.attach.note "Add Note"> -<!ENTITY zotero.items.menu.attach "Add Attachment"> -<!ENTITY zotero.items.menu.attach.snapshot "Attach Snapshot of Current Page"> -<!ENTITY zotero.items.menu.attach.link "Attach Link to Current Page"> -<!ENTITY zotero.items.menu.attach.link.uri "Attach Link to URI…"> +<!ENTITY zotero.upgrade.title "Μάγος Αναβάθμισης Zotero"> +<!ENTITY zotero.upgrade.newVersionInstalled "Εγκαταστήσατε μια νέα έκδοση του Zotero."> +<!ENTITY zotero.upgrade.upgradeRequired "Η βάση δεδομένων του Zotero πρέπει να αναβαθμιστεί ώστε να λειτουργεί με την νέα έκδοση."> +<!ENTITY zotero.upgrade.autoBackup "Θα δημιουργηθεί αυτόματα αντίγραφο ασφαλείας της υπάρχουσας βάσης δεδομένων σας, πριν γίνουν οι οποιεσδήποτε αλλαγές."> +<!ENTITY zotero.upgrade.majorUpgrade "Αυτή είναι μια κύρια αναβάθμιση."> +<!ENTITY zotero.upgrade.majorUpgradeBeforeLink "Βεβαιωθείτε ότι έχετε επανεξετάσει τις"> +<!ENTITY zotero.upgrade.majorUpgradeLink "οδηγίες αναβάθμισης"> +<!ENTITY zotero.upgrade.majorUpgradeAfterLink "πριν συνεχίσετε."> +<!ENTITY zotero.upgrade.upgradeInProgress "Παρακαλώ περιμένετε ώστε να ολοκληρωθεί η διαδικασία αναβάθμισης. Αυτό μπορεί να διαρκέσει μερικά λεπτά."> +<!ENTITY zotero.upgrade.upgradeSucceeded "Η βάση δεδομένων σας Zotero αναβαθμίστηκε επιτυχώς."> +<!ENTITY zotero.upgrade.changeLogBeforeLink "Παρακαλώ διαβάστε"> +<!ENTITY zotero.upgrade.changeLogLink "τον κατάλογο των αλλαγών (changelog)"> +<!ENTITY zotero.upgrade.changeLogAfterLink "για να δείτε τι νεότερο υπάρχει."> + +<!ENTITY zotero.contextMenu.addTextToCurrentNote "Προσθήκη επιλογής στις Σημειώσεις Zotero"> +<!ENTITY zotero.contextMenu.addTextToNewNote "Δημιουργία Στοιχείου Zotero και Σημειώσεων από Επιλογή"> +<!ENTITY zotero.contextMenu.saveLinkAsItem "Αποθήκευση Συνδέσμου ως Στοιχείο Zotero"> +<!ENTITY zotero.contextMenu.saveImageAsItem "Αποθήκευση Εικόνας ως Στοιχείο Zotero"> + +<!ENTITY zotero.tabs.info.label "Πληροφορίες"> +<!ENTITY zotero.tabs.notes.label "Σημειώσεις"> +<!ENTITY zotero.tabs.attachments.label "Προσαρτήματα"> +<!ENTITY zotero.tabs.tags.label "Ετικέτες"> +<!ENTITY zotero.tabs.related.label "Σχετίζεται με"> +<!ENTITY zotero.notes.separate "Επεξεργασία σε ξεχωριστό παράθυρο"> + +<!ENTITY zotero.toolbar.duplicate.label "Εμφάνιση διπλότυπων"> +<!ENTITY zotero.collections.showUnfiledItems "Εμφάνιση Αταξινόμητων στοιχείων"> + +<!ENTITY zotero.items.itemType "Τύπος στοιχείου"> +<!ENTITY zotero.items.type_column "Τύπος στοιχείου"> +<!ENTITY zotero.items.title_column "Τίτλος"> +<!ENTITY zotero.items.creator_column "Δημιουργός"> +<!ENTITY zotero.items.date_column "Ημερομηνία"> +<!ENTITY zotero.items.year_column "Έτος"> +<!ENTITY zotero.items.publisher_column "Εκδότης"> +<!ENTITY zotero.items.publication_column "Έκδοση"> +<!ENTITY zotero.items.journalAbbr_column "Συντομογραφία περιοδικού"> +<!ENTITY zotero.items.language_column "Γλώσσα"> +<!ENTITY zotero.items.accessDate_column "Πρόσβαση"> +<!ENTITY zotero.items.libraryCatalog_column "Κατάλογος βιβλιοθήκης"> +<!ENTITY zotero.items.callNumber_column "Τηλεφωνικός αριθμός"> +<!ENTITY zotero.items.rights_column "Δικαιώματα"> +<!ENTITY zotero.items.dateAdded_column "Ημερομηνία προσθήκης"> +<!ENTITY zotero.items.dateModified_column "Ημερομηνία τροποποίησης"> +<!ENTITY zotero.items.extra_column "Επιπλέον"> +<!ENTITY zotero.items.archive_column "Αρχείο"> +<!ENTITY zotero.items.archiveLocation_column "Θέση στο Αρχείο"> +<!ENTITY zotero.items.place_column "Τόπο"> +<!ENTITY zotero.items.volume_column "Τόμο"> +<!ENTITY zotero.items.edition_column "Έκδοση"> +<!ENTITY zotero.items.pages_column "Σελίδες"> +<!ENTITY zotero.items.issue_column "Τεύχος"> +<!ENTITY zotero.items.series_column "Σειρά"> +<!ENTITY zotero.items.seriesTitle_column "Τίτλος σειράς"> +<!ENTITY zotero.items.court_column "Αίθουσα"> +<!ENTITY zotero.items.medium_column "Μέσο/Μορφή"> +<!ENTITY zotero.items.genre_column "Είδος"> +<!ENTITY zotero.items.system_column "Σύστημα"> +<!ENTITY zotero.items.moreColumns.label "Περισσότερες στήλες"> +<!ENTITY zotero.items.restoreColumnOrder.label "Αποκατάσταση διάταξης στηλών"> + +<!ENTITY zotero.items.menu.showInLibrary "Εμφάνιση στην Βιβλιοθήκη"> +<!ENTITY zotero.items.menu.attach.note "Προσθήκη σημείωσης"> +<!ENTITY zotero.items.menu.attach "Προσθήκη προσαρτήματος"> +<!ENTITY zotero.items.menu.attach.snapshot "Προσάρτηση στιγμιότυπου της Τρέχουσας Σελίδας"> +<!ENTITY zotero.items.menu.attach.link "Προσάρτηση Συνδέσμου προς την Τρέχουσα Σελίδα"> +<!ENTITY zotero.items.menu.attach.link.uri "Προσάρτηση Συνδέσμου προς το URI..."> <!ENTITY zotero.items.menu.attach.file "Attach Stored Copy of File..."> <!ENTITY zotero.items.menu.attach.fileLink "Attach Link to File..."> -<!ENTITY zotero.items.menu.restoreToLibrary "Restore to Library"> -<!ENTITY zotero.items.menu.duplicateItem "Duplicate Item"> -<!ENTITY zotero.items.menu.mergeItems "Merge Items…"> +<!ENTITY zotero.items.menu.restoreToLibrary "Αποκατάσταση στην Βιβλιοθήκη"> +<!ENTITY zotero.items.menu.duplicateItem "Δημιουργία Διπλότυπου για το Στοιχείο"> +<!ENTITY zotero.items.menu.mergeItems "Συνένωση Στοιχείων..."> -<!ENTITY zotero.duplicatesMerge.versionSelect "Choose the version of the item to use as the master item:"> -<!ENTITY zotero.duplicatesMerge.fieldSelect "Select fields to keep from other versions of the item:"> +<!ENTITY zotero.duplicatesMerge.versionSelect "Επιλέξτε την έκδοση του Στοιχείου που θα χρησιμοποιηθεί ως κύριο στοιχείο:"> +<!ENTITY zotero.duplicatesMerge.fieldSelect "Επιλέξτε πεδία που θα διατηρηθούν από άλλες εκδόσεις του στοιχείου:"> -<!ENTITY zotero.toolbar.newItem.label "New Item"> -<!ENTITY zotero.toolbar.moreItemTypes.label "More"> -<!ENTITY zotero.toolbar.newItemFromPage.label "Create Web Page Item from Current Page"> -<!ENTITY zotero.toolbar.lookup.label "Add Item(s) by Identifier"> +<!ENTITY zotero.toolbar.newItem.label "Νέο στοιχείο"> +<!ENTITY zotero.toolbar.moreItemTypes.label "Περισσότερα"> +<!ENTITY zotero.toolbar.newItemFromPage.label "Δημιουργία Στοιχείου Ιστοσελίδας από την Τρέχουσα Σελίδα"> +<!ENTITY zotero.toolbar.lookup.label "Προσθήκη στοιχείου/ων μέσω Ταυτότητας"> <!ENTITY zotero.toolbar.removeItem.label "Remove Item..."> <!ENTITY zotero.toolbar.newCollection.label "New Collection..."> <!ENTITY zotero.toolbar.newGroup "New Group..."> <!ENTITY zotero.toolbar.newSubcollection.label "New Subcollection..."> <!ENTITY zotero.toolbar.newSavedSearch.label "New Saved Search..."> -<!ENTITY zotero.toolbar.emptyTrash.label "Empty Trash"> -<!ENTITY zotero.toolbar.tagSelector.label "Show/Hide Tag Selector"> -<!ENTITY zotero.toolbar.actions.label "Actions"> +<!ENTITY zotero.toolbar.emptyTrash.label "Εκκένωση κάδου απορριμάτων"> +<!ENTITY zotero.toolbar.tagSelector.label "Εμφάνιση/Απόκρυψη Επιλογέα ετικετών"> +<!ENTITY zotero.toolbar.actions.label "Ενέργειες"> <!ENTITY zotero.toolbar.import.label "Import..."> -<!ENTITY zotero.toolbar.importFromClipboard "Import from Clipboard"> +<!ENTITY zotero.toolbar.importFromClipboard "Εισαγωγή από την προσωρινή μνήμη"> <!ENTITY zotero.toolbar.export.label "Export Library..."> <!ENTITY zotero.toolbar.rtfScan.label "RTF Scan..."> -<!ENTITY zotero.toolbar.timeline.label "Create Timeline"> +<!ENTITY zotero.toolbar.timeline.label "Δημιουργία χρονοδιαγράμματος"> <!ENTITY zotero.toolbar.preferences.label "Preferences..."> -<!ENTITY zotero.toolbar.supportAndDocumentation "Support and Documentation"> -<!ENTITY zotero.toolbar.about.label "About Zotero"> -<!ENTITY zotero.toolbar.advancedSearch "Advanced Search"> -<!ENTITY zotero.toolbar.tab.tooltip "Toggle Tab Mode"> -<!ENTITY zotero.toolbar.openURL.label "Locate"> -<!ENTITY zotero.toolbar.openURL.tooltip "Find through your local library"> - -<!ENTITY zotero.item.add "Add"> -<!ENTITY zotero.item.attachment.file.show "Show File"> -<!ENTITY zotero.item.textTransform "Transform Text"> -<!ENTITY zotero.item.textTransform.titlecase "Title Case"> -<!ENTITY zotero.item.textTransform.sentencecase "Sentence case"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> - -<!ENTITY zotero.toolbar.newNote "New Note"> -<!ENTITY zotero.toolbar.note.standalone "New Standalone Note"> -<!ENTITY zotero.toolbar.note.child "Add Child Note"> +<!ENTITY zotero.toolbar.supportAndDocumentation "Υποστήριξη και Τεκμηρίωση"> +<!ENTITY zotero.toolbar.about.label "Σχετικά με το Zotero"> +<!ENTITY zotero.toolbar.advancedSearch "Προχωρημένη αναζήτηση"> +<!ENTITY zotero.toolbar.tab.tooltip "Εναλλαγή της λειτουργίας καρτέλας"> +<!ENTITY zotero.toolbar.openURL.label "Εντοπισμός"> +<!ENTITY zotero.toolbar.openURL.tooltip "Αναζήτηση μέσα από την τοπική βιβλιοθήκη σας"> + +<!ENTITY zotero.item.add "Προσθήκη"> +<!ENTITY zotero.item.attachment.file.show "Εμφάνιση αρχείου"> +<!ENTITY zotero.item.textTransform "Μετασχηματισμός κειμένου"> +<!ENTITY zotero.item.textTransform.titlecase "Μορφή γραμμάτων τίτλου"> +<!ENTITY zotero.item.textTransform.sentencecase "Μορφή γραμμάτων πρότασης"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> + +<!ENTITY zotero.toolbar.newNote "Νέα σημείωση"> +<!ENTITY zotero.toolbar.note.standalone "Νέα αυτόνομη σημείωση"> +<!ENTITY zotero.toolbar.note.child "Προσθήκη θυγατρικής σημείωσης"> <!ENTITY zotero.toolbar.lookup "Lookup by Identifier..."> <!ENTITY zotero.toolbar.attachment.linked "Link to File..."> <!ENTITY zotero.toolbar.attachment.add "Store Copy of File..."> -<!ENTITY zotero.toolbar.attachment.weblink "Save Link to Current Page"> -<!ENTITY zotero.toolbar.attachment.snapshot "Take Snapshot of Current Page"> +<!ENTITY zotero.toolbar.attachment.weblink "Αποθήκευση Συνδέσμου στην Τρέχουσα Σελίδα"> +<!ENTITY zotero.toolbar.attachment.snapshot "Λήψη Στιγμιότυπου της Τρέχουσας Σελίδας"> -<!ENTITY zotero.tagSelector.noTagsToDisplay "No tags to display"> -<!ENTITY zotero.tagSelector.filter "Filter:"> +<!ENTITY zotero.tagSelector.noTagsToDisplay "Δεν υπάρχουν ετικέτες προς εμφάνιση"> +<!ENTITY zotero.tagSelector.filter "Φίλτρο"> <!ENTITY zotero.tagSelector.showAutomatic "Show automatic"> <!ENTITY zotero.tagSelector.displayAllInLibrary "Display all tags in this library"> <!ENTITY zotero.tagSelector.selectVisible "Select visible"> <!ENTITY zotero.tagSelector.clearVisible "Deselect visible"> <!ENTITY zotero.tagSelector.clearAll "Deselect all"> -<!ENTITY zotero.tagSelector.assignColor "Assign Color…"> +<!ENTITY zotero.tagSelector.assignColor "Απόδοση χρώματος..."> <!ENTITY zotero.tagSelector.renameTag "Rename Tag..."> <!ENTITY zotero.tagSelector.deleteTag "Delete Tag..."> -<!ENTITY zotero.tagColorChooser.title "Choose a Tag Color and Position"> -<!ENTITY zotero.tagColorChooser.color "Color:"> -<!ENTITY zotero.tagColorChooser.position "Position:"> -<!ENTITY zotero.tagColorChooser.setColor "Set Color"> -<!ENTITY zotero.tagColorChooser.removeColor "Remove Color"> - -<!ENTITY zotero.lookup.description "Enter one or more ISBNs, DOIs, or PMIDs to look up in the box below."> -<!ENTITY zotero.lookup.button.search "Search"> - -<!ENTITY zotero.selectitems.title "Select Items"> -<!ENTITY zotero.selectitems.intro.label "Select which items you'd like to add to your library"> -<!ENTITY zotero.selectitems.cancel.label "Cancel"> -<!ENTITY zotero.selectitems.select.label "OK"> - -<!ENTITY zotero.bibliography.title "Create Citation/Bibliography"> -<!ENTITY zotero.bibliography.style.label "Citation Style:"> -<!ENTITY zotero.bibliography.outputMode "Output Mode:"> -<!ENTITY zotero.bibliography.bibliography "Bibliography"> -<!ENTITY zotero.bibliography.outputMethod "Output Method:"> -<!ENTITY zotero.bibliography.saveAsRTF.label "Save as RTF"> -<!ENTITY zotero.bibliography.saveAsHTML.label "Save as HTML"> -<!ENTITY zotero.bibliography.copyToClipboard.label "Copy to Clipboard"> -<!ENTITY zotero.bibliography.print.label "Print"> - -<!ENTITY zotero.integration.docPrefs.title "Document Preferences"> -<!ENTITY zotero.integration.addEditCitation.title "Add/Edit Citation"> -<!ENTITY zotero.integration.editBibliography.title "Edit Bibliography"> -<!ENTITY zotero.integration.quickFormatDialog.title "Quick Format Citation"> - -<!ENTITY zotero.progress.title "Progress"> +<!ENTITY zotero.tagColorChooser.title "Επιλέξτε χρώμα ετικέτας και θέση"> +<!ENTITY zotero.tagColorChooser.color "Χρώμα:"> +<!ENTITY zotero.tagColorChooser.position "Θέση:"> +<!ENTITY zotero.tagColorChooser.setColor "Καθορισμός χρώματος"> +<!ENTITY zotero.tagColorChooser.removeColor "Απομάκρυνση χρώματος"> + +<!ENTITY zotero.lookup.description "Εισάγετε στο παρακάτω πεδίο ένα ή περισσότερα ISBN, DOI ή PMID για αναζήτηση."> +<!ENTITY zotero.lookup.button.search "Αναζήτηση"> + +<!ENTITY zotero.selectitems.title "Επιλέξτε στοιχεία"> +<!ENTITY zotero.selectitems.intro.label "Επιλέξτε ποια στοιχεία θέλετε να προσθέσετε στην βιβλιοθήκη σας"> +<!ENTITY zotero.selectitems.cancel.label "Άκυρο"> +<!ENTITY zotero.selectitems.select.label "ΟΚ"> + +<!ENTITY zotero.bibliography.title "Δημιουργία Παραπομπής/Βιβλιογραφίας"> +<!ENTITY zotero.bibliography.style.label "Στυλ παραπομπής:"> +<!ENTITY zotero.bibliography.outputMode "Λειτουργία αποτελέσματος:"> +<!ENTITY zotero.bibliography.bibliography "Βιβλιογραφία"> +<!ENTITY zotero.bibliography.outputMethod "Μέθοδος αποτελέσματος:"> +<!ENTITY zotero.bibliography.saveAsRTF.label "Αποθήκευση ως RTF"> +<!ENTITY zotero.bibliography.saveAsHTML.label "Αποθήκευση ως HTML"> +<!ENTITY zotero.bibliography.copyToClipboard.label "Αντιγραφή στο Προχειρο"> +<!ENTITY zotero.bibliography.print.label "Εκτύπωση"> + +<!ENTITY zotero.integration.docPrefs.title "Προτιμήσεις εγγράφου"> +<!ENTITY zotero.integration.addEditCitation.title "Προσθήκη/Επεξεργασία Παραπομπής"> +<!ENTITY zotero.integration.editBibliography.title "Επεξεργασία Βιβλιογραφίας"> +<!ENTITY zotero.integration.quickFormatDialog.title "Παραπομπή γρήγορης μορφής"> + +<!ENTITY zotero.progress.title "Πρόοδος"> <!ENTITY zotero.exportOptions.title "Export..."> -<!ENTITY zotero.exportOptions.format.label "Format:"> -<!ENTITY zotero.exportOptions.translatorOptions.label "Translator Options"> - -<!ENTITY zotero.charset.label "Character Encoding"> -<!ENTITY zotero.moreEncodings.label "More Encodings"> - -<!ENTITY zotero.citation.keepSorted.label "Keep Sources Sorted"> - -<!ENTITY zotero.citation.page "Page"> -<!ENTITY zotero.citation.paragraph "Paragraph"> -<!ENTITY zotero.citation.line "Line"> -<!ENTITY zotero.citation.suppressAuthor.label "Suppress Author"> -<!ENTITY zotero.citation.prefix.label "Prefix:"> -<!ENTITY zotero.citation.suffix.label "Suffix:"> -<!ENTITY zotero.citation.editorWarning.label "Warning: If you edit a citation in the editor it will no longer update to reflect changes in your database or the citation style."> - -<!ENTITY zotero.richText.italic.label "Italic"> -<!ENTITY zotero.richText.bold.label "Bold"> -<!ENTITY zotero.richText.underline.label "Underline"> -<!ENTITY zotero.richText.superscript.label "Superscript"> -<!ENTITY zotero.richText.subscript.label "Subscript"> - -<!ENTITY zotero.annotate.toolbar.add.label "Add Annotation"> -<!ENTITY zotero.annotate.toolbar.collapse.label "Collapse All Annotations"> -<!ENTITY zotero.annotate.toolbar.expand.label "Expand All Annotations"> -<!ENTITY zotero.annotate.toolbar.highlight.label "Highlight Text"> +<!ENTITY zotero.exportOptions.format.label "Μορφή:"> +<!ENTITY zotero.exportOptions.translatorOptions.label "Επιλογές μεταφραστή"> + +<!ENTITY zotero.charset.label "Κωδικοποίηση χαρακτήρων"> +<!ENTITY zotero.moreEncodings.label "Περισσότερες κωδικοποιησεις"> + +<!ENTITY zotero.citation.keepSorted.label "Διατήρηση της ταξινόμησης των πηγών"> + +<!ENTITY zotero.citation.page "Σελίδα"> +<!ENTITY zotero.citation.paragraph "Παράγραφος"> +<!ENTITY zotero.citation.line "Γραμμή"> +<!ENTITY zotero.citation.suppressAuthor.label "Σύμπτυξη συγγραφέα"> +<!ENTITY zotero.citation.prefix.label "Πρόθεμα:"> +<!ENTITY zotero.citation.suffix.label "Επίθημα:"> +<!ENTITY zotero.citation.editorWarning.label "Προειδοποίηση: Αν επεξεργαστείτε κάποια παραπομπή με το επεξεργαστή, δεν θα ενημερωθεί ώστε να αντανακλά τις αλλαγές μέσα στην βάση δεδομένων σας ή στο στυλ των παραπομπών."> + +<!ENTITY zotero.richText.italic.label "Πλάγια"> +<!ENTITY zotero.richText.bold.label "Έντονα"> +<!ENTITY zotero.richText.underline.label "Υπογραμμισμένα"> +<!ENTITY zotero.richText.superscript.label "Εκθέτης"> +<!ENTITY zotero.richText.subscript.label "Δείκτης"> + +<!ENTITY zotero.annotate.toolbar.add.label "Προσθήκη σχολίων"> +<!ENTITY zotero.annotate.toolbar.collapse.label "Σύμπτυξη όλων των σχολιασμών"> +<!ENTITY zotero.annotate.toolbar.expand.label "Ανάπτυξη όλων των σχολιασμών"> +<!ENTITY zotero.annotate.toolbar.highlight.label "Υπογράμμιση κειμένου"> <!ENTITY zotero.annotate.toolbar.unhighlight.label "Unhighlight Text"> -<!ENTITY zotero.integration.prefs.displayAs.label "Display Citations As:"> -<!ENTITY zotero.integration.prefs.footnotes.label "Footnotes"> -<!ENTITY zotero.integration.prefs.endnotes.label "Endnotes"> +<!ENTITY zotero.integration.prefs.displayAs.label "Προβολή παραπομπών ως:"> +<!ENTITY zotero.integration.prefs.footnotes.label "Σημειώσεις υποσέλιδου"> +<!ENTITY zotero.integration.prefs.endnotes.label "Σημειώσεις τέλους"> -<!ENTITY zotero.integration.prefs.formatUsing.label "Format Using:"> -<!ENTITY zotero.integration.prefs.bookmarks.label "Bookmarks"> +<!ENTITY zotero.integration.prefs.formatUsing.label "Χρήση μορφής:"> +<!ENTITY zotero.integration.prefs.bookmarks.label "Σελιδοδείκτες"> <!ENTITY zotero.integration.prefs.bookmarks.caption "Bookmarks are preserved across Microsoft Word and OpenOffice, but may be accidentally modified."> -<!ENTITY zotero.integration.prefs.automaticJournalAbbeviations.label "Automatically abbreviate journal titles"> -<!ENTITY zotero.integration.prefs.automaticJournalAbbeviations.caption "MEDLINE journal abbreviations will be automatically generated using journal titles. The “Journal Abbr” field will be ignored."> +<!ENTITY zotero.integration.prefs.automaticJournalAbbeviations.label "Αυτόματη συντομογράφηση τίτλων περιοδικών"> +<!ENTITY zotero.integration.prefs.automaticJournalAbbeviations.caption "Οι συντομογραφίες MEDLINE των περιοδικών θα δημιουργούνται αυτόματα, χρησιμοποιώντας τους τίτλους των περιοδικών. Το πεδίο «Συντομογραφίες περιοδικών» θα αγνοείται."> -<!ENTITY zotero.integration.prefs.storeReferences.label "Store references in document"> -<!ENTITY zotero.integration.prefs.storeReferences.caption "Storing references in your document slightly increases file size, but will allow you to share your document with others without using a Zotero group. Zotero 3.0 or later is required to update documents created with this option."> +<!ENTITY zotero.integration.prefs.storeReferences.label "Αποθήκευση αναφορών σε έγγραφο"> +<!ENTITY zotero.integration.prefs.storeReferences.caption "Η αποθήκευση των αναφορών σε έγγραφο αυξάνει ελαφρώς το μέγεθος του αρχείου, αλλά επιτρέπει τον διαμοιρασμό του εγγράφου σας με άλλους, χρησιμοποιώντας κάποια ομάδα Zotero. Για την αναβάθμιση εγγράφων που δημιουργήθηκαν με την λειτουργία αυτή απαιτείται Zotero 3.0 ή μεταγενέστερο."> -<!ENTITY zotero.integration.showEditor.label "Show Editor"> -<!ENTITY zotero.integration.classicView.label "Classic View"> +<!ENTITY zotero.integration.showEditor.label "Εμφάνιση επεξεργαστή"> +<!ENTITY zotero.integration.classicView.label "Κλασική προβολή"> -<!ENTITY zotero.integration.references.label "References in Bibliography"> +<!ENTITY zotero.integration.references.label "Αναφορές μέσα στη Βιβλιογραφία"> -<!ENTITY zotero.sync.button "Sync with Zotero Server"> -<!ENTITY zotero.sync.error "Sync Error"> -<!ENTITY zotero.sync.storage.progress "Progress:"> -<!ENTITY zotero.sync.storage.downloads "Downloads:"> -<!ENTITY zotero.sync.storage.uploads "Uploads:"> +<!ENTITY zotero.sync.button "Συγχρονισμός με τον διακομιστή του Zotero"> +<!ENTITY zotero.sync.error "Σφάλμα συγχρονισμού"> +<!ENTITY zotero.sync.storage.progress "Πρόοδος:"> +<!ENTITY zotero.sync.storage.downloads "Λήψεις:"> +<!ENTITY zotero.sync.storage.uploads "Μεταφορτώσεις:"> -<!ENTITY zotero.sync.longTagFixer.followingTagTooLong "The following tag in your Zotero library is too long to sync to the server:"> -<!ENTITY zotero.sync.longTagFixer.syncedTagSizeLimit "Synced tags must be shorter than 256 characters."> -<!ENTITY zotero.sync.longTagFixer.splitEditDelete "You can either split the tag into multiple tags, edit the tag manually to shorten it, or delete it."> -<!ENTITY zotero.sync.longTagFixer.split "Split"> -<!ENTITY zotero.sync.longTagFixer.splitAtThe "Split at the"> -<!ENTITY zotero.sync.longTagFixer.character "character"> -<!ENTITY zotero.sync.longTagFixer.characters "characters"> -<!ENTITY zotero.sync.longTagFixer.uncheckedTagsNotSaved "Unchecked tags will not be saved."> -<!ENTITY zotero.sync.longTagFixer.tagWillBeDeleted "The tag will be deleted from all items."> +<!ENTITY zotero.sync.longTagFixer.followingTagTooLong "Η ακόλουθη ετικέτα στην βιβλιοθήκη σας Zotero είναι πολύ μεγάλη για να συγχρονιστεί με τον διακομιστή:"> +<!ENTITY zotero.sync.longTagFixer.syncedTagSizeLimit "Οι συγχρονιζόμενες ετικέτες πρέπει να είναι μικρότερες των 256 χαρακτήρων."> +<!ENTITY zotero.sync.longTagFixer.splitEditDelete "Μπορείτε είτε να διαιρέσετε την ετικέτα σε πολλαπλές ετικέτες, να επεξεργαστείτε χειροκίνητα την ετικέτα ώστε να την μικρύνετε ή να την διαγράψετε."> +<!ENTITY zotero.sync.longTagFixer.split "Διαίρεση"> +<!ENTITY zotero.sync.longTagFixer.splitAtThe "Διαίρεση στον"> +<!ENTITY zotero.sync.longTagFixer.character "χαρακτήρα"> +<!ENTITY zotero.sync.longTagFixer.characters "χαρακτήρες"> +<!ENTITY zotero.sync.longTagFixer.uncheckedTagsNotSaved "Οι μη επιλεγμένες ετικέτες δεν θα αποθηκευθούν."> +<!ENTITY zotero.sync.longTagFixer.tagWillBeDeleted "Η ετικέτα θα διαγραφεί από όλα τα στοιχεία."> -<!ENTITY zotero.merge.title "Conflict Resolution"> +<!ENTITY zotero.merge.title "Επίλυση διενέξεων"> <!ENTITY zotero.merge.of "of"> -<!ENTITY zotero.merge.deleted "Deleted"> +<!ENTITY zotero.merge.deleted "Διαγραμμένων"> -<!ENTITY zotero.proxy.recognized.title "Proxy Recognized"> -<!ENTITY zotero.proxy.recognized.warning "Only add proxies linked from your library, school, or corporate website"> -<!ENTITY zotero.proxy.recognized.warning.secondary "Adding other proxies allows malicious sites to masquerade as sites you trust."> -<!ENTITY zotero.proxy.recognized.disable.label "Do not automatically redirect requests through previously recognized proxies"> -<!ENTITY zotero.proxy.recognized.ignore.label "Ignore"> +<!ENTITY zotero.proxy.recognized.title "Διαμεσολαβητές που αναγνωρίστηκαν"> +<!ENTITY zotero.proxy.recognized.warning "Προσθήκη μόνον διαμεσολαβητών που συνδέονται με την βιβλιοθήκη σας, το σχολείο ή εταιρικό ιστότοπο."> +<!ENTITY zotero.proxy.recognized.warning.secondary "Η προσθήκη άλλων διαμεσολαβητών επιτρέπει σε βλαπτικούς ιστότοπους να μεταμφιέζονται σε ιστότοπους που εμπιστεύεστε."> +<!ENTITY zotero.proxy.recognized.disable.label "Να μην γίνεται αυτόματη ανακατεύθυνση των αιτήσεων μέσω προηγουμένως αναγνωρισμένων διαμεσολαβητών."> +<!ENTITY zotero.proxy.recognized.ignore.label "Αγνόηση"> <!ENTITY zotero.recognizePDF.recognizing.label "Retrieving Metadata..."> -<!ENTITY zotero.recognizePDF.cancel.label "Cancel"> -<!ENTITY zotero.recognizePDF.pdfName.label "PDF Name"> -<!ENTITY zotero.recognizePDF.itemName.label "Item Name"> - -<!ENTITY zotero.rtfScan.title "RTF Scan"> -<!ENTITY zotero.rtfScan.cancel.label "Cancel"> -<!ENTITY zotero.rtfScan.citation.label "Citation"> -<!ENTITY zotero.rtfScan.itemName.label "Item Name"> -<!ENTITY zotero.rtfScan.unmappedCitations.label "Unmapped Citations"> -<!ENTITY zotero.rtfScan.ambiguousCitations.label "Ambiguous Citations"> -<!ENTITY zotero.rtfScan.mappedCitations.label "Mapped Citations"> -<!ENTITY zotero.rtfScan.introPage.label "Introduction"> +<!ENTITY zotero.recognizePDF.cancel.label "Ακύρωση"> +<!ENTITY zotero.recognizePDF.pdfName.label "Όνομα PDF"> +<!ENTITY zotero.recognizePDF.itemName.label "Όνομα στοιχείου"> + +<!ENTITY zotero.rtfScan.title "Σάρωση RTF"> +<!ENTITY zotero.rtfScan.cancel.label "Ακύρωση"> +<!ENTITY zotero.rtfScan.citation.label "Παραπομπή"> +<!ENTITY zotero.rtfScan.itemName.label "Όνομα στοιχείου"> +<!ENTITY zotero.rtfScan.unmappedCitations.label "Αχαρτογράφητες παραπομπές"> +<!ENTITY zotero.rtfScan.ambiguousCitations.label "Ασαφής παραπομπή"> +<!ENTITY zotero.rtfScan.mappedCitations.label "Χαρτογραφημένες παραπομπές"> +<!ENTITY zotero.rtfScan.introPage.label "Εισαγωγή"> <!ENTITY zotero.rtfScan.introPage.description "Zotero can automatically extract and reformat citations and insert a bibliography into RTF files. To get started, choose an RTF file below."> -<!ENTITY zotero.rtfScan.introPage.description2 "To get started, select an RTF input file and an output file below:"> -<!ENTITY zotero.rtfScan.scanPage.label "Scanning for Citations"> -<!ENTITY zotero.rtfScan.scanPage.description "Zotero is scanning your document for citations. Please be patient."> -<!ENTITY zotero.rtfScan.citationsPage.label "Verify Cited Items"> -<!ENTITY zotero.rtfScan.citationsPage.description "Please review the list of recognized citations below to ensure that Zotero has selected the corresponding items correctly. Any unmapped or ambiguous citations must be resolved before proceeding to the next step."> +<!ENTITY zotero.rtfScan.introPage.description2 "Για να ξεκινήσετε, πιο κάτω επιλέξτε ένα αρχείο εισόδου RTF και ένα αρχείο εξόδου:"> +<!ENTITY zotero.rtfScan.scanPage.label "Σάρωση για παραπομπές"> +<!ENTITY zotero.rtfScan.scanPage.description "Το Zotero σαρώνει τα έγγραφά σας για παραπομπές. Παρακαλώ περιμένετε."> +<!ENTITY zotero.rtfScan.citationsPage.label "Εξακρίβωση παρατιθέμενων στοιχείων"> +<!ENTITY zotero.rtfScan.citationsPage.description "Παρακαλώ, εξετάστε τον κατάλογο των αναγνωρισμένων παραπομπών που ακολουθεί για να βεβαιωθείτε ότι το Zotero έχει επιλέξει τα αντίστοιχα στοιχεία σωστά. Κάθε αχαρτογράφητη ή ασαφής παραπομπή πρέπει να αντιμετωπιστεί πριν προχωρήσετε στο επόμενο βήμα."> <!ENTITY zotero.rtfScan.stylePage.label "Document Formatting"> <!ENTITY zotero.rtfScan.formatPage.label "Formatting Citations"> <!ENTITY zotero.rtfScan.formatPage.description "Zotero is processing and formatting your RTF file. Please be patient."> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/el-GR/zotero/zotero.properties b/chrome/locale/el-GR/zotero/zotero.properties @@ -1,50 +1,51 @@ -extensions.zotero@chnm.gmu.edu.description=The Next-Generation Research Tool +extensions.zotero@chnm.gmu.edu.description=Εργαλείο έρευνας νέας γενεάς -general.success=Success -general.error=Error -general.warning=Warning -general.dontShowWarningAgain=Don't show this warning again. -general.browserIsOffline=%S is currently in offline mode. +general.success=Επιτυχία +general.error=Σφάλμα +general.warning=Προειδοποίηση +general.dontShowWarningAgain=Να μην εμφανιστεί ξανά η προειδοποίηση αυτή. +general.browserIsOffline=Ο %S αυτή τη στιγμή είναι εκτός σύνδεσης. general.locate=Locate... -general.restartRequired=Restart Required -general.restartRequiredForChange=%S must be restarted for the change to take effect. +general.restartRequired=Απαιτείται επανεκκίνηση +general.restartRequiredForChange=%S πρέπει να επανεκκινήσει για να εφαρμοσθούν οι αλλαγές. general.restartRequiredForChanges=%S must be restarted for the changes to take effect. -general.restartNow=Restart now -general.restartLater=Restart later +general.restartNow=Επανεκκίνηση τώρα +general.restartLater=Επανεκκίνηση αργότερα general.restartApp=Restart %S general.quitApp=Quit %S -general.errorHasOccurred=An error has occurred. -general.unknownErrorOccurred=An unknown error occurred. +general.errorHasOccurred=Παρουσιάστηκε κάποιο σφάλμα. +general.unknownErrorOccurred=Παρουσιάστηκε άγνωστο σφάλμα. general.invalidResponseServer=Invalid response from server. general.tryAgainLater=Please try again in a few minutes. general.serverError=The server returned an error. Please try again. general.restartFirefox=Please restart Firefox. general.restartFirefoxAndTryAgain=Please restart Firefox and try again. -general.checkForUpdate=Check for Update -general.actionCannotBeUndone=This action cannot be undone. -general.install=Install -general.updateAvailable=Update Available +general.checkForUpdate=Ελέγξτε για ενημερώσεις +general.actionCannotBeUndone=Η ενέργεια αυτή δεν μπορεί να αναστραφεί. +general.install=Εγκατάσταση +general.updateAvailable=Διαθέσιμη ενημέρωση general.noUpdatesFound=No Updates Found general.isUpToDate=%S is up to date. -general.upgrade=Upgrade -general.yes=Yes -general.no=No +general.upgrade=Αναβάθμιση +general.yes=Ναι +general.no=Όχι general.notNow=Not Now -general.passed=Passed -general.failed=Failed -general.and=and +general.passed=Εγκρίνεται +general.failed=Απέτυχε +general.and=και general.etAl=et al. -general.accessDenied=Access Denied -general.permissionDenied=Permission Denied -general.character.singular=character -general.character.plural=characters -general.create=Create +general.accessDenied=Άρνηση πρόσβασης +general.permissionDenied=Άρνηση άδειας +general.character.singular=χαρακτήρας +general.character.plural=χαρακτήρες +general.create=Δημιουργία general.delete=Delete general.moreInformation=More Information -general.seeForMoreInformation=See %S for more information. -general.enable=Enable -general.disable=Disable -general.remove=Remove +general.seeForMoreInformation=Για περισσότερες πληροφορίες δείτε %S. +general.open=Open %S +general.enable=Ενεργοποίηση +general.disable=Απενεργοποίηση +general.remove=Απομάκρυνση general.reset=Reset general.hide=Hide general.quit=Quit @@ -55,9 +56,9 @@ general.openPreferences=Open Preferences general.keys.ctrlShift=Ctrl+Shift+ general.keys.cmdShift=Cmd+Shift+ -general.operationInProgress=A Zotero operation is currently in progress. -general.operationInProgress.waitUntilFinished=Please wait until it has finished. -general.operationInProgress.waitUntilFinishedAndTryAgain=Please wait until it has finished and try again. +general.operationInProgress=Αυτή τη στιγμή εκτελείται κάποια λειτουργία Zotero. +general.operationInProgress.waitUntilFinished=Παρακαλώ περιμένετε έως ότου ολοκληρωθεί. +general.operationInProgress.waitUntilFinishedAndTryAgain=Παρακαλώ περιμένετε έως ότου ολοκληρωθεί και προσπαθήστε ξανά. punctuation.openingQMark=" punctuation.closingQMark=" @@ -65,28 +66,28 @@ punctuation.colon=: punctuation.ellipsis=… install.quickStartGuide=Quick Start Guide -install.quickStartGuide.message.welcome=Welcome to Zotero! -install.quickStartGuide.message.view=View the Quick Start Guide to learn how to begin collecting, managing, citing, and sharing your research sources. -install.quickStartGuide.message.thanks=Thanks for installing Zotero. - -upgrade.failed.title=Upgrade Failed -upgrade.failed=Upgrading of the Zotero database failed: -upgrade.advanceMessage=Press %S to upgrade now. -upgrade.dbUpdateRequired=The Zotero database must be updated. -upgrade.integrityCheckFailed=Your Zotero database must be repaired before the upgrade can continue. -upgrade.loadDBRepairTool=Load Database Repair Tool +install.quickStartGuide.message.welcome=Καλώς ήλθατε στο Zotero! +install.quickStartGuide.message.view=Δείτε τον Οδηγό Γρήγορης Εκκίνησης για να μάθετε τρόπους συλλογής, διαχείρισης, παραπομπής και διαμοιρασμού των κοινόχρηστων πηγών σας. +install.quickStartGuide.message.thanks=Ευχαριστούμε που εγκαταστήσατε το Zotero: + +upgrade.failed.title=Η αναβάθμιση απέτυχε +upgrade.failed=Η αναβάθμιση της βάσης δεδομένων του Zotero απέτυχε +upgrade.advanceMessage=Πατήστε %S για να αναβαθμίσετε τώρα. +upgrade.dbUpdateRequired=Η βάση δεδομένων του Zotero πρέπει να αναβαθμιστεί. +upgrade.integrityCheckFailed=Η βάση δεδομένων του Zotero πρέπει να επισκευασθεί πριν προχωρήσει η αναβάθμιση. +upgrade.loadDBRepairTool=Φόρτωση Εργαλείου Επισκευής Βάσης Δεδομένων upgrade.couldNotMigrate=Zotero could not migrate all necessary files.\nPlease close any open attachment files and restart Firefox to try the upgrade again. -upgrade.couldNotMigrate.restart=If you continue to receive this message, restart your computer. +upgrade.couldNotMigrate.restart=Αν συνεχίσετε να λαμβάνεται το μήνυμα αυτό, επανεκκινήστε τον υπολογιστή σας. errorReport.reportError=Report Error... errorReport.reportErrors=Report Errors... -errorReport.reportInstructions=You can report this error by selecting "%S" from the Actions (gear) menu. +errorReport.reportInstructions=Μπορείτε να αναφέρετε το σφάλμα αυτό επιλέγοντας "%S" από το μενού Ενέργειες (γρανάζι). errorReport.followingReportWillBeSubmitted=The following report will be submitted: errorReport.noErrorsLogged=No errors have been logged since %S started. -errorReport.advanceMessage=Press %S to send the report to the Zotero developers. -errorReport.stepsToReproduce=Steps to Reproduce: -errorReport.expectedResult=Expected result: -errorReport.actualResult=Actual result: +errorReport.advanceMessage=Πατήστε %S για να στείλετε την αναφορά σφάλματος προς τους προγραμματιστές του Zotero. +errorReport.stepsToReproduce=Βήματα για την Αναπαραγωγή: +errorReport.expectedResult=Αναμενόμενα αποτελέσματα: +errorReport.actualResult=Πραγματικά αποτελέσματα: errorReport.noNetworkConnection=No network connection errorReport.invalidResponseRepository=Invalid response from repository errorReport.repoCannotBeContacted=Repository cannot be contacted @@ -104,8 +105,8 @@ attachmentBasePath.clearBasePath.existingAttachments.singular=One existing attac attachmentBasePath.clearBasePath.existingAttachments.plural=%S existing attachments within the old base directory will be converted to use absolute paths. attachmentBasePath.clearBasePath.button=Clear Base Directory Setting -dataDir.notFound=The Zotero data directory could not be found. -dataDir.previousDir=Previous directory: +dataDir.notFound=Δεν βρέθηκε ο κατάλογος δεδομένων Zotero. +dataDir.previousDir=Προηγούμενος κατάλογος: dataDir.useProfileDir=Use %S profile directory dataDir.selectDir=Select a Zotero data directory dataDir.selectedDirNonEmpty.title=Directory Not Empty @@ -203,6 +204,9 @@ pane.items.trash.multiple=Are you sure you want to move the selected items to th pane.items.delete.title=Delete pane.items.delete=Are you sure you want to delete the selected item? pane.items.delete.multiple=Are you sure you want to delete the selected items? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Remove Item from Collection pane.items.menu.remove.multiple=Remove Items from Collection pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Create Parent Item pane.items.menu.createParent.multiple=Create Parent Items pane.items.menu.renameAttachments=Rename File from Parent Metadata pane.items.menu.renameAttachments.multiple=Rename Files from Parent Metadata +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Letter to %S pane.items.letter.twoParticipants=Letter to %S and %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/en-US/zotero/csledit.dtd b/chrome/locale/en-US/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/en-US/zotero/cslpreview.dtd b/chrome/locale/en-US/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/en-US/zotero/preferences.dtd b/chrome/locale/en-US/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Browser pane"> <!ENTITY zotero.preferences.showIn.separateTab "Separate tab"> <!ENTITY zotero.preferences.showIn.appTab "App tab"> -<!ENTITY zotero.preferences.statusBarIcon "Status bar icon:"> -<!ENTITY zotero.preferences.statusBarIcon.none "None"> <!ENTITY zotero.preferences.fontSize "Font size:"> <!ENTITY zotero.preferences.fontSize.small "Small"> <!ENTITY zotero.preferences.fontSize.medium "Medium"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Get additional styles..."> -<!ENTITY zotero.preferences.prefpane.keys "Shortcuts"> - <!ENTITY zotero.preferences.keys.openZotero "Open/Close Zotero Pane"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Toggle Fullscreen Mode"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Advanced"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Locate"> <!ENTITY zotero.preferences.locate.locateEngineManager "Article Lookup Engine Manager"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Submit to Zotero Server"> <!ENTITY zotero.preferences.openAboutConfig "Open about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Open CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Open CSL Preview"> -<!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> -\ No newline at end of file +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> +<!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/en-US/zotero/zotero.dtd b/chrome/locale/en-US/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Delete"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transform Text"> <!ENTITY zotero.item.textTransform.titlecase "Title Case"> <!ENTITY zotero.item.textTransform.sentencecase "Sentence case"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "New Note"> <!ENTITY zotero.toolbar.note.standalone "New Standalone Note"> @@ -289,5 +291,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/en-US/zotero/zotero.properties b/chrome/locale/en-US/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create = Create general.delete = Delete general.moreInformation = More Information general.seeForMoreInformation = See %S for more information. +general.open = Open %S general.enable = Enable general.disable = Disable general.remove = Remove @@ -206,8 +207,11 @@ pane.items.trash.multiple = Are you sure you want to move the selected items to pane.items.delete.title = Delete pane.items.delete = Are you sure you want to delete the selected item? pane.items.delete.multiple = Are you sure you want to delete the selected items? -pane.items.menu.remove = Remove Item from Collection -pane.items.menu.remove.multiple = Remove Items from Collection +pane.items.remove.title = Remove from Collection +pane.items.remove = Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple = Are you sure you want to remove the selected items from this collection? +pane.items.menu.remove = Remove Item from Collection… +pane.items.menu.remove.multiple = Remove Items from Collection… pane.items.menu.moveToTrash = Move Item to Trash… pane.items.menu.moveToTrash.multiple = Move Items to Trash… pane.items.menu.export = Export Item… @@ -224,6 +228,7 @@ pane.items.menu.createParent = Create Parent Item pane.items.menu.createParent.multiple = Create Parent Items pane.items.menu.renameAttachments = Rename File from Parent Metadata pane.items.menu.renameAttachments.multiple = Rename Files from Parent Metadata +pane.items.showItemInLibrary = Show Item in Library pane.items.letter.oneParticipant = Letter to %S pane.items.letter.twoParticipants = Letter to %S and %S @@ -725,7 +730,7 @@ integration.missingItem.multiple = Item %1$S in the highlighted citation no lon integration.missingItem.description = Clicking "No" will delete the field codes for citations containing this item, preserving the citation text but deleting it from your bibliography. integration.removeCodesWarning = Removing field codes will prevent Zotero from updating citations and bibliographies in this document. Are you sure you want to continue? integration.upgradeWarning = Your document must be permanently upgraded in order to work with Zotero 2.1 or later. It is recommended that you make a backup before proceeding. Are you sure you want to continue? -integration.error.newerDocumentVersion = Your document was created with a newer version of Zotero (%1$S) than the currently installed version (%1$S). Please upgrade Zotero before editing this document. +integration.error.newerDocumentVersion = Your document was created with a newer version of Zotero (%1$S) than the currently installed version (%2$S). Please upgrade Zotero before editing this document. integration.corruptField = The Zotero field code corresponding to this citation, which tells Zotero which item in your library this citation represents, has been corrupted. Would you like to reselect the item? integration.corruptField.description = Clicking "No" will delete the field codes for citations containing this item, preserving the citation text but potentially deleting it from your bibliography. integration.corruptBibliography = The Zotero field code for your bibliography is corrupted. Should Zotero clear this field code and generate a new bibliography? @@ -971,3 +976,12 @@ firstRunGuidance.quickFormat = Type a title or author to search for a reference. firstRunGuidance.quickFormatMac = Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-\u2193 to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new = Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade = The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography = Bibliography +styles.editor.save = Save Citation Style +styles.editor.warning.noItems = No items selected in Zotero. +styles.editor.warning.parseError = Error parsing style: +styles.editor.warning.renderError = Error generating citations and bibliography: +styles.editor.output.individualCitations = Individual Citations +styles.editor.output.singleCitation = Single Citation (with position "first") +styles.preview.instructions = Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/es-ES/zotero/csledit.dtd b/chrome/locale/es-ES/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/es-ES/zotero/cslpreview.dtd b/chrome/locale/es-ES/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/es-ES/zotero/preferences.dtd b/chrome/locale/es-ES/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Panel de navegador"> <!ENTITY zotero.preferences.showIn.separateTab "Pestaña de separación"> <!ENTITY zotero.preferences.showIn.appTab "Pestaña de aplicación"> -<!ENTITY zotero.preferences.statusBarIcon "Icono en la barra de estado:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Nada"> <!ENTITY zotero.preferences.fontSize "Tamaño de letra:"> <!ENTITY zotero.preferences.fontSize.small "Pequeña"> <!ENTITY zotero.preferences.fontSize.medium "Mediana"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Obtener estilos adicionales..."> -<!ENTITY zotero.preferences.prefpane.keys "Atajos de teclado"> - <!ENTITY zotero.preferences.keys.openZotero "Abrir/cerrar el panel de Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Guardar en Zotero (ícono de la barra de direcciones)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Conmutar el modo de pantalla completa"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Avanzadas"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Archivos y carpetas"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Localizar"> <!ENTITY zotero.preferences.locate.locateEngineManager "Administrador de motor de búsqueda de artículo"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Enviar al servidor Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Abrir about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Abrir editor CSL"> -<!ENTITY zotero.preferences.openCSLPreview "Abrir prevista CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Abrir editor de estilo"> +<!ENTITY zotero.preferences.openCSLPreview "Abrir previsualizador de estilo"> <!ENTITY zotero.preferences.openAboutMemory "Abrir about:memory"> diff --git a/chrome/locale/es-ES/zotero/zotero.dtd b/chrome/locale/es-ES/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Borrar"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancelar"> +<!ENTITY zotero.general.refresh "Actualizar"> +<!ENTITY zotero.general.saveAs "Guardar como…"> <!ENTITY zotero.errorReport.title "Informe de errores de Zotero"> <!ENTITY zotero.errorReport.unrelatedMessages "Esto puede incluir mensajes no relacionados con Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transformar texto"> <!ENTITY zotero.item.textTransform.titlecase "Capitalización De Título"> <!ENTITY zotero.item.textTransform.sentencecase "Capitalización de oración"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Intercambiar nombre/apellidos"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Intercambiar Nombre/Apellido"> <!ENTITY zotero.toolbar.newNote "Nueva nota"> <!ENTITY zotero.toolbar.note.standalone "Nueva nota independiente"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Adjuntar enlace a URI"> <!ENTITY zotero.attachLink.label.link "Enlace:"> <!ENTITY zotero.attachLink.label.title "Título:"> - - diff --git a/chrome/locale/es-ES/zotero/zotero.properties b/chrome/locale/es-ES/zotero/zotero.properties @@ -6,7 +6,7 @@ general.warning=Aviso general.dontShowWarningAgain=No mostrar más este aviso. general.browserIsOffline=%S está en modo desconectado. general.locate=Encontrar... -general.restartRequired=Hace falta reiniciar +general.restartRequired=Se necesita reiniciar general.restartRequiredForChange=%S debe reiniciarse para que se realice el cambio. general.restartRequiredForChanges=%S debe reiniciarse para que se realicen los cambios. general.restartNow=Reiniciar ahora @@ -42,6 +42,7 @@ general.create=Crear general.delete=Borrar general.moreInformation=Más información general.seeForMoreInformation=Mira en %S para más información +general.open=Open %S general.enable=Activar general.disable=Desactivar general.remove=Eliminar @@ -86,7 +87,7 @@ errorReport.noErrorsLogged=Ningún error se ha registrado desde que %S se inici errorReport.advanceMessage=Pulse %S para enviar el informe a los desarrolladores de Zotero. errorReport.stepsToReproduce=Pasos para reproducirlo: errorReport.expectedResult=Resultado esperado: -errorReport.actualResult=Resultado real: +errorReport.actualResult=Resultado actual: errorReport.noNetworkConnection=Sin conexión a la red errorReport.invalidResponseRepository=Respuesta inválida del repositorio errorReport.repoCannotBeContacted=No se ha podido contactar con el repositorio @@ -203,6 +204,9 @@ pane.items.trash.multiple=¿Seguro que quieres enviar los ítems a la papelera? pane.items.delete.title=Borrar pane.items.delete=¿Seguro que quieres borrar el ítem asociado? pane.items.delete.multiple=¿Seguro que quieres borrar los ítems seleccionados? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Eliminar el ítem seleccionado pane.items.menu.remove.multiple=Eliminar los ítems seleccionados pane.items.menu.moveToTrash=Mover ítem a la papelera... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Crear ítem contenedor a partir del seleccionado pane.items.menu.createParent.multiple=Crear ítems contenedores a partir de los seleccionados pane.items.menu.renameAttachments=Poner nombre al fichero a partir de los metadatos del contenedor pane.items.menu.renameAttachments.multiple=Poner nombre a los ficheros a partir de los metadatos del contenedor +pane.items.showItemInLibrary=Mostrar elemento en la Biblioteca pane.items.letter.oneParticipant=Carta a %S pane.items.letter.twoParticipants=Carta a %S y %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Escribe el título o el autor para buscar una refer firstRunGuidance.quickFormatMac=Escribe el título o el autor para buscar una referencia. \n\nDespués de que hayas hecho tu selección, haz clic en la burbuja o pulsa Cmd-\u2193 para agregar números de página, prefijos o sufijos. También puedes incluir un número de página junto con tus términos de búsqueda para añadirlo directamente.\n\nPuedes editar citas directamente en el documento del procesador de textos. firstRunGuidance.toolbarButton.new=Clic aquí para abrir Zotero o utilice el atajo de teclado %S firstRunGuidance.toolbarButton.upgrade=El ícono Zotero ahora se encuentra en la barra de Firefox. Clic en el ícono para abrir Zotero, o use el atajo de teclado %S. + +styles.bibliography=Bibliografí­a +styles.editor.save=Guardar estilo de cita +styles.editor.warning.noItems=Sin elementos seleccionados en Zotero. +styles.editor.warning.parseError=Error analizado estilo: +styles.editor.warning.renderError=Error generando citas y bibliografía: +styles.editor.output.individualCitations=Citas individuales +styles.editor.output.singleCitation=Unica cita (con posición "primera") +styles.preview.instructions=Seleccionar uno o más elementos en Zotero y presione el botón "Actualizar" para ver como estos artículos son visualizados por los estilos de citas CSL. diff --git a/chrome/locale/et-EE/zotero/csledit.dtd b/chrome/locale/et-EE/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/et-EE/zotero/cslpreview.dtd b/chrome/locale/et-EE/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/et-EE/zotero/preferences.dtd b/chrome/locale/et-EE/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Brauseri paanil"> <!ENTITY zotero.preferences.showIn.separateTab "Eraldi"> <!ENTITY zotero.preferences.showIn.appTab "Rakenduse tab"> -<!ENTITY zotero.preferences.statusBarIcon "Staatusriba ikoon:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Puudub"> <!ENTITY zotero.preferences.fontSize "Fondi suurus:"> <!ENTITY zotero.preferences.fontSize.small "Väike"> <!ENTITY zotero.preferences.fontSize.medium "Keskmine"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Veel stiile..."> -<!ENTITY zotero.preferences.prefpane.keys "Kiirvaliku klahvid"> - <!ENTITY zotero.preferences.keys.openZotero "Avada/Sulgeda Zotero aken"> <!ENTITY zotero.preferences.keys.saveToZotero "Salvestada Zoterosse (aadressiriba ikoon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Täisekraan režiim"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Täpsemalt"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Failid ja kataloogid"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Otsing"> <!ENTITY zotero.preferences.locate.locateEngineManager "Artikli otsingumootori haldaja"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Saata Zotero serverisse"> <!ENTITY zotero.preferences.openAboutConfig "Avada about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Avada CSL redaktor"> -<!ENTITY zotero.preferences.openCSLPreview "Avada CSL eelvaade"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Avada about:memory"> diff --git a/chrome/locale/et-EE/zotero/zotero.dtd b/chrome/locale/et-EE/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Kustutada"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Teksti muutmine"> <!ENTITY zotero.item.textTransform.titlecase "Suurteks Algustähtedeks"> <!ENTITY zotero.item.textTransform.sentencecase "Lause tõst"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Uus märkus"> <!ENTITY zotero.toolbar.note.standalone "Uus sõltumatu märkus"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/et-EE/zotero/zotero.properties b/chrome/locale/et-EE/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Luua general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=Edasise info tarbeks vaadake %S. +general.open=Open %S general.enable=Lubada general.disable=Keelata general.remove=Eemaldada @@ -203,6 +204,9 @@ pane.items.trash.multiple=Olete kindel, et soovite valitud kirjed Prahi hulka li pane.items.delete.title=Kustutada pane.items.delete=Olete kindel, et soovite valitud kirje kustutada? pane.items.delete.multiple=Olete kindel, et soovite valitud kirjed kustutada? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Valitud kirje kustutamine pane.items.menu.remove.multiple=Valitud kirjete kustutamine pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Luua ülemkirje valitud kirjest pane.items.menu.createParent.multiple=Luua ülemkirjed valitud kirjetest pane.items.menu.renameAttachments=Nimetada fail ülemkirje metadata alusel ümber pane.items.menu.renameAttachments.multiple=Nimetada failid ülemkirjete metadata alusel ümber +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Kiri %S-le pane.items.letter.twoParticipants=Kiri %S ja %S-le @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Viite otsimiseks kirjutage pealkiri või autor.\n\n firstRunGuidance.quickFormatMac=Viite otsimiseks kirjutage pealkiri või autor.\n\nKui olete valiku teinud, siis leheküljenumbrite, prefiksite või sufiksite lisamiseks klikkige viite kastikesele või vajutage Cmd-\u2193. Leheküljenumbri võite sisestada ka kohe kastikese sisse.\n\nSamas võite viiteid toimetada ka tekstiredaktoris. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/eu-ES/zotero/csledit.dtd b/chrome/locale/eu-ES/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/eu-ES/zotero/cslpreview.dtd b/chrome/locale/eu-ES/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/eu-ES/zotero/preferences.dtd b/chrome/locale/eu-ES/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Browser pane"> <!ENTITY zotero.preferences.showIn.separateTab "Separate tab"> <!ENTITY zotero.preferences.showIn.appTab "App tab"> -<!ENTITY zotero.preferences.statusBarIcon "Status bar Ikurra:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Kendu"> <!ENTITY zotero.preferences.fontSize "Font neurria:"> <!ENTITY zotero.preferences.fontSize.small "txikia"> <!ENTITY zotero.preferences.fontSize.medium "erdia"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Estilo gehialgo instalatu..."> -<!ENTITY zotero.preferences.prefpane.keys "Teklatu-komandoak"> - <!ENTITY zotero.preferences.keys.openZotero "Ireki/Itxi Zotero panela"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Pantaila osoa bai/ez"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Advanced"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Locate"> <!ENTITY zotero.preferences.locate.locateEngineManager "Article Lookup Engine Manager"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Bidali Zotero zerbitzarira"> <!ENTITY zotero.preferences.openAboutConfig "Open about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Open CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Open CSL Preview"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/eu-ES/zotero/zotero.dtd b/chrome/locale/eu-ES/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Ezabatu"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Testua bihurtu"> <!ENTITY zotero.item.textTransform.titlecase "letra larria"> <!ENTITY zotero.item.textTransform.sentencecase "Sentence case"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "New Note"> <!ENTITY zotero.toolbar.note.standalone "Ohar solte berria..."> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/eu-ES/zotero/zotero.properties b/chrome/locale/eu-ES/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Sortu general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=%S-en informazio gehiago duzu. +general.open=Open %S general.enable=Gaitu general.disable=Ezgaitu general.remove=Remove @@ -203,6 +204,9 @@ pane.items.trash.multiple=Hautatutako itemak zaborrera bota? pane.items.delete.title=Ezabatu pane.items.delete=Hautatutako itema ezabatu? pane.items.delete.multiple=Hautatutako itemak ezabatu? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Hautatutako itema bildumatik kendu pane.items.menu.remove.multiple=Hautatutako itemak bildumatik kendu pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Hautatutako itemari item gurasoa sortu pane.items.menu.createParent.multiple=Hautatutako itemeei item gurasoa sortu pane.items.menu.renameAttachments=Aldatu izena gurasoren datuen arabera pane.items.menu.renameAttachments.multiple=Aldatu izenak gurasoen datuen arabera +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Gutuna %S-(r)i pane.items.letter.twoParticipants=Gutuna %S eta %S-(r)i @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/fa/zotero/about.dtd b/chrome/locale/fa/zotero/about.dtd @@ -1,6 +1,6 @@ <!ENTITY zotero.version "نگارش"> <!ENTITY zotero.createdby "محصولی از:"> -<!ENTITY zotero.director "Director:"> +<!ENTITY zotero.director "مدیر"> <!ENTITY zotero.directors "مدیران:"> <!ENTITY zotero.developers "توسعه‌دهندگان:"> <!ENTITY zotero.alumni "فارغ‌التحصیلان:"> @@ -9,5 +9,5 @@ <!ENTITY zotero.executiveProducer "مدیر اجرایی:"> <!ENTITY zotero.thanks "تشکر ویژه از:"> <!ENTITY zotero.about.close "بستن"> -<!ENTITY zotero.moreCreditsAndAcknowledgements "More Credits &amp; Acknowledgements"> -<!ENTITY zotero.citationProcessing "Citation &amp; Bibliography Processing"> +<!ENTITY zotero.moreCreditsAndAcknowledgements "سایر همکاران و سپاسگزاری"> +<!ENTITY zotero.citationProcessing "پردازش استناد و کتابنامه"> diff --git a/chrome/locale/fa/zotero/csledit.dtd b/chrome/locale/fa/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/fa/zotero/cslpreview.dtd b/chrome/locale/fa/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/fa/zotero/preferences.dtd b/chrome/locale/fa/zotero/preferences.dtd @@ -3,7 +3,7 @@ <!ENTITY zotero.preferences.default "پیش‌فرض:"> <!ENTITY zotero.preferences.items "آیتم‌"> <!ENTITY zotero.preferences.period "."> -<!ENTITY zotero.preferences.settings "Settings"> +<!ENTITY zotero.preferences.settings "تنظیمات"> <!ENTITY zotero.preferences.prefpane.general "عمومی"> @@ -12,22 +12,20 @@ <!ENTITY zotero.preferences.showIn.browserPane "قاب مرورگر"> <!ENTITY zotero.preferences.showIn.separateTab "برگه جداگانه"> <!ENTITY zotero.preferences.showIn.appTab "App tab"> -<!ENTITY zotero.preferences.statusBarIcon "نشانه زوترو:"> -<!ENTITY zotero.preferences.statusBarIcon.none "هیچ‌کدام"> <!ENTITY zotero.preferences.fontSize "اندازه قلم:"> <!ENTITY zotero.preferences.fontSize.small "کوچک"> <!ENTITY zotero.preferences.fontSize.medium "متوسط"> <!ENTITY zotero.preferences.fontSize.large "بزرگ"> -<!ENTITY zotero.preferences.fontSize.xlarge "X-Large"> +<!ENTITY zotero.preferences.fontSize.xlarge "خیلی بزرگ"> <!ENTITY zotero.preferences.fontSize.notes "اندازه قلم یادداشت:"> <!ENTITY zotero.preferences.miscellaneous "متفرقه"> -<!ENTITY zotero.preferences.autoUpdate "Automatically check for updated translators and styles"> +<!ENTITY zotero.preferences.autoUpdate "بررسی خودکار برای به‌روزرسانی مترجم‌ها و شیوه‌ها"> <!ENTITY zotero.preferences.updateNow "روزآمدسازی هم‌اکنون انجام شود"> <!ENTITY zotero.preferences.reportTranslationFailure "گزارش مترجم‌های مشکل‌دار"> <!ENTITY zotero.preferences.zoteroDotOrgVersionHeader "اجازه به zotero.org برای تنظیم محتوا با توجه به نگارش زوترو"> <!ENTITY zotero.preferences.zoteroDotOrgVersionHeader.tooltip "در صورت انتخاب این گزینه، نگارش زوترو در درخواست‌های HTTP به zotero.org گنجانده می‌شود."> -<!ENTITY zotero.preferences.parseRISRefer "Use Zotero for downloaded BibTeX/RIS/Refer files"> +<!ENTITY zotero.preferences.parseRISRefer "استفاده از زوترو برای پرونده‌های BibTeX/RIS/Refer بارگیری شده"> <!ENTITY zotero.preferences.automaticSnapshots "ساخت خودکار «تصویر لحظه‌ای» در زمان ذخیره صفحات وب"> <!ENTITY zotero.preferences.downloadAssociatedFiles "پیوست خودکار پی‌دی‌اف‌ها و سایر پرونده‌های وابسته در زمان ذخیره آیتم‌ها"> <!ENTITY zotero.preferences.automaticTags "برچسب زدن خودکار به آیتم‌ها با استفاده از کلمات کلیدی و موضوع‌ها"> @@ -39,9 +37,9 @@ <!ENTITY zotero.preferences.groups.childNotes "یادداشت‌های وابسته"> <!ENTITY zotero.preferences.groups.childFiles "تصاویر لحظه‌ای و پرونده‌های درون‌برد شده"> <!ENTITY zotero.preferences.groups.childLinks "پیوندهای وابسته"> -<!ENTITY zotero.preferences.groups.tags "tags"> +<!ENTITY zotero.preferences.groups.tags "برچسب‌ها"> -<!ENTITY zotero.preferences.openurl.caption "OpenURL"> +<!ENTITY zotero.preferences.openurl.caption "متد OpenURL"> <!ENTITY zotero.preferences.openurl.search "گشتن به دنبال تشخیص‌دهنده‌ها (resolvers)"> <!ENTITY zotero.preferences.openurl.custom "دلخواه..."> @@ -55,21 +53,21 @@ <!ENTITY zotero.preferences.sync.createAccount "ساخت حساب کاربری"> <!ENTITY zotero.preferences.sync.lostPassword "گذرواژه را فراموش کرده‌اید؟"> <!ENTITY zotero.preferences.sync.syncAutomatically "همزمان‌‌سازی خودکار"> -<!ENTITY zotero.preferences.sync.syncFullTextContent "Sync full-text content"> -<!ENTITY zotero.preferences.sync.syncFullTextContent.desc "Zotero can sync the full-text content of files in your Zotero libraries with zotero.org and other linked devices, allowing you to easily search for your files wherever you are. The full-text content of your files will not be shared publicly."> +<!ENTITY zotero.preferences.sync.syncFullTextContent "همگام‌سازی محتوای تمام متن"> +<!ENTITY zotero.preferences.sync.syncFullTextContent.desc "زوترو می‌تواند محتوای تمام‌متن کتابخانه‌های شما را با zotero.org و سایر دستگاه‌های مرتبط شما همگام‌ کند. این امر به شما اجازه می‌دهد تا به‌راحتی و در هرمکانی که حضور دارید، پرونده‌های خود را جستجو کنید. محتوای تمام‌متن پرونده‌های شما به‌صورت عمومی به‌اشتراک گذاشته نمی‌شود."> <!ENTITY zotero.preferences.sync.about "درباره همزمان‌‌سازی"> <!ENTITY zotero.preferences.sync.fileSyncing "همزمان‌‌سازی پرونده‌ها"> <!ENTITY zotero.preferences.sync.fileSyncing.url "آدرس:"> <!ENTITY zotero.preferences.sync.fileSyncing.myLibrary "همزمان‌‌سازی پرونده‌های پیوست در کتابخانه با استفاده از "> <!ENTITY zotero.preferences.sync.fileSyncing.groups "همزمان‌‌سازی پرونده‌های پیوست در کتابخانه‌های گروهی با استفاده از سامانه ذخیره زوترو (Zotero storage)"> -<!ENTITY zotero.preferences.sync.fileSyncing.download "Download files"> -<!ENTITY zotero.preferences.sync.fileSyncing.download.atSyncTime "at sync time"> -<!ENTITY zotero.preferences.sync.fileSyncing.download.onDemand "as needed"> +<!ENTITY zotero.preferences.sync.fileSyncing.download "بارگیری پرونده‌ها"> +<!ENTITY zotero.preferences.sync.fileSyncing.download.atSyncTime "در زمان همگام‌سازی"> +<!ENTITY zotero.preferences.sync.fileSyncing.download.onDemand "در صورت نیاز"> <!ENTITY zotero.preferences.sync.fileSyncing.tos1 "با استفاده از سامانه ذخیره زوترو (Zotero storage) می‌پذیرید که تابع"> <!ENTITY zotero.preferences.sync.fileSyncing.tos2 "شرایط و قوانین آن باشید "> <!ENTITY zotero.preferences.sync.reset.warning1 "The following operations are for use only in rare, specific situations and should not be used for general troubleshooting. In many cases, resetting will cause additional problems. See "> <!ENTITY zotero.preferences.sync.reset.warning2 "Sync Reset Options"> -<!ENTITY zotero.preferences.sync.reset.warning3 " for more information."> +<!ENTITY zotero.preferences.sync.reset.warning3 "جهت کسب اطلاعات بیشتر"> <!ENTITY zotero.preferences.sync.reset.fullSync "همزمان‌‌سازی کامل با کارگزار زوترو"> <!ENTITY zotero.preferences.sync.reset.fullSync.desc "تلفیق اطلاعات محلی زوترو با اطلاعات کارگزار همزمان‌‌سازی و نادیده گرفتن تاریخچه همزمان‌‌سازی."> <!ENTITY zotero.preferences.sync.reset.restoreFromServer "بازیابی از کارگزار زوترو"> @@ -78,7 +76,7 @@ <!ENTITY zotero.preferences.sync.reset.restoreToServer.desc "پاک کردن همه اطلاعات و رونویسی با اطلاعات محلی زوترو"> <!ENTITY zotero.preferences.sync.reset.resetFileSyncHistory "پاک کردن تاریخچه همزمان‌‌سازی پرونده‌ها"> <!ENTITY zotero.preferences.sync.reset.resetFileSyncHistory.desc "Force checking of the storage server for all local attachment files."> -<!ENTITY zotero.preferences.sync.reset "Reset"> +<!ENTITY zotero.preferences.sync.reset "تنظیم مجدد"> <!ENTITY zotero.preferences.sync.reset.button "بازنشانی..."> @@ -117,7 +115,7 @@ <!ENTITY zotero.preferences.cite.wordProcessors.noWordProcessorPluginsInstalled "هیچ افزونه‌ای برای ارتباط با واژه‌پردازها نصب نشده است."> <!ENTITY zotero.preferences.cite.wordProcessors.getPlugins "دریافت افزونه واژه‌پرداز..."> <!ENTITY zotero.preferences.cite.wordProcessors.getPlugins.url "http://www.zotero.org/support/word_processor_plugin_installation_for_zotero_2.1"> -<!ENTITY zotero.preferences.cite.wordProcessors.useClassicAddCitationDialog "Use classic Add Citation dialog"> +<!ENTITY zotero.preferences.cite.wordProcessors.useClassicAddCitationDialog "استفاده از پنجره استناد‌کننده کلاسیک"> <!ENTITY zotero.preferences.cite.styles.styleManager "مدیریت شیوه‌ها"> <!ENTITY zotero.preferences.cite.styles.styleManager.title "عنوان"> @@ -125,15 +123,13 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "دریافت شیوه‌های بیشتر..."> -<!ENTITY zotero.preferences.prefpane.keys "کلیدهای میان‌بر"> - <!ENTITY zotero.preferences.keys.openZotero "باز کردن/بستن قاب زوترو"> -<!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> +<!ENTITY zotero.preferences.keys.saveToZotero "ذخیره در زوترو ( نماد نوار آدرس)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "فعال/غیرفعال کردن حالت تمام‌صفحه"> -<!ENTITY zotero.preferences.keys.focusLibrariesPane "Focus Libraries Pane"> +<!ENTITY zotero.preferences.keys.focusLibrariesPane "تمرکز بر قاب کتابخانه"> <!ENTITY zotero.preferences.keys.quicksearch "جستجوی سریع"> -<!ENTITY zotero.preferences.keys.newItem "Create a New Item"> -<!ENTITY zotero.preferences.keys.newNote "Create a New Note"> +<!ENTITY zotero.preferences.keys.newItem "ایجاد آیتم جدید"> +<!ENTITY zotero.preferences.keys.newNote "ایجاد یادداشت جدید"> <!ENTITY zotero.preferences.keys.toggleTagSelector "روشن/خاموش کردن انتخاب برچسب"> <!ENTITY zotero.preferences.keys.copySelectedItemCitationsToClipboard "رونوشت یادکرد آیتم‌های انتخاب شده به حافظه موقت"> <!ENTITY zotero.preferences.keys.copySelectedItemsToClipboard "رونوشت آیتم‌های انتخاب شده به حافظه موقت"> @@ -163,7 +159,8 @@ <!ENTITY zotero.preferences.proxies.a_variable "&#37;a - هر نوع رشته"> <!ENTITY zotero.preferences.prefpane.advanced "پیشرفته"> -<!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.filesAndFolders "پرونده‌ها و پوشه‌ها"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "مکان‌یابی"> <!ENTITY zotero.preferences.locate.locateEngineManager "سامان‌دهی مکان‌یاب مقالات"> @@ -183,11 +180,11 @@ <!ENTITY zotero.preferences.dataDir.choose "انتخاب..."> <!ENTITY zotero.preferences.dataDir.reveal "نمایش محل ذخیره اطلاعات"> -<!ENTITY zotero.preferences.attachmentBaseDir.caption "Linked Attachment Base Directory"> +<!ENTITY zotero.preferences.attachmentBaseDir.caption "پیوند پوشه پایۀ پیوست"> <!ENTITY zotero.preferences.attachmentBaseDir.message "Zotero will use relative paths for linked file attachments within the base directory, allowing you to access files on different computers as long as the file structure within the base directory remains the same."> -<!ENTITY zotero.preferences.attachmentBaseDir.basePath "Base directory:"> -<!ENTITY zotero.preferences.attachmentBaseDir.selectBasePath "Choose…"> -<!ENTITY zotero.preferences.attachmentBaseDir.resetBasePath "Revert to Absolute Paths…"> +<!ENTITY zotero.preferences.attachmentBaseDir.basePath "پوشه پایه"> +<!ENTITY zotero.preferences.attachmentBaseDir.selectBasePath "انتخاب..."> +<!ENTITY zotero.preferences.attachmentBaseDir.resetBasePath "بازگشت به مسیر‌های مطلق"> <!ENTITY zotero.preferences.dbMaintenance "رسیدگی به دادگان"> <!ENTITY zotero.preferences.dbMaintenance.integrityCheck "بررسی یکپارچگی دادگان"> @@ -203,7 +200,7 @@ <!ENTITY zotero.preferences.debugOutputLogging.clearOutput "پاک کردن خروجی"> <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "ارسال به کارگزار زوترو"> -<!ENTITY zotero.preferences.openAboutConfig "Open about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Open CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Open CSL Preview"> -<!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> +<!ENTITY zotero.preferences.openAboutConfig "بازکردن about:config"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> +<!ENTITY zotero.preferences.openAboutMemory "بازکردن about:memory"> diff --git a/chrome/locale/fa/zotero/searchbox.dtd b/chrome/locale/fa/zotero/searchbox.dtd @@ -1,6 +1,6 @@ <!ENTITY zotero.search.name "نام:"> -<!ENTITY zotero.search.searchInLibrary "Search in library:"> +<!ENTITY zotero.search.searchInLibrary "جستجو در کتابخانه:"> <!ENTITY zotero.search.joinMode.prefix "مطابقت با"> <!ENTITY zotero.search.joinMode.any "حداقل یکی از"> @@ -13,7 +13,7 @@ <!ENTITY zotero.search.textModes.phrase "عبارت"> <!ENTITY zotero.search.textModes.phraseBinary "عبارت (شامل پرونده‌های دودویی)‏"> -<!ENTITY zotero.search.textModes.regexp "Regexp"> +<!ENTITY zotero.search.textModes.regexp "عبارت با قاعده (Regexp)"> <!ENTITY zotero.search.textModes.regexpCS "Regexp (حساس به حروف کوچک و بزرگ)"> <!ENTITY zotero.search.date.units.days "روز"> diff --git a/chrome/locale/fa/zotero/standalone.dtd b/chrome/locale/fa/zotero/standalone.dtd @@ -1,35 +1,35 @@ -<!ENTITY preferencesCmdMac.label "Preferences…"> +<!ENTITY preferencesCmdMac.label "تنظیمات"> <!ENTITY preferencesCmdMac.commandkey ","> <!ENTITY servicesMenuMac.label "Services"> <!ENTITY hideThisAppCmdMac.label "Hide &brandShortName;"> <!ENTITY hideThisAppCmdMac.commandkey "H"> <!ENTITY hideOtherAppsCmdMac.label "Hide Others"> <!ENTITY hideOtherAppsCmdMac.commandkey "H"> -<!ENTITY showAllAppsCmdMac.label "Show All"> +<!ENTITY showAllAppsCmdMac.label "نمایش همه"> <!ENTITY quitApplicationCmdMac.label "Quit Zotero"> <!ENTITY quitApplicationCmdMac.key "Q"> -<!ENTITY fileMenu.label "File"> +<!ENTITY fileMenu.label "پرونده"> <!ENTITY fileMenu.accesskey "F"> -<!ENTITY saveCmd.label "Save…"> +<!ENTITY saveCmd.label "ذخیره..."> <!ENTITY saveCmd.key "S"> -<!ENTITY saveCmd.accesskey "A"> +<!ENTITY saveCmd.accesskey "S"> <!ENTITY pageSetupCmd.label "Page Setup…"> <!ENTITY pageSetupCmd.accesskey "U"> -<!ENTITY printCmd.label "Print…"> +<!ENTITY printCmd.label "پرینت"> <!ENTITY printCmd.key "P"> <!ENTITY printCmd.accesskey "P"> -<!ENTITY closeCmd.label "Close"> +<!ENTITY closeCmd.label "بستن"> <!ENTITY closeCmd.key "W"> <!ENTITY closeCmd.accesskey "C"> -<!ENTITY quitApplicationCmdWin.label "Exit"> +<!ENTITY quitApplicationCmdWin.label "خروج"> <!ENTITY quitApplicationCmdWin.accesskey "x"> -<!ENTITY quitApplicationCmd.label "Quit"> +<!ENTITY quitApplicationCmd.label "خروج"> <!ENTITY quitApplicationCmd.accesskey "Q"> -<!ENTITY editMenu.label "Edit"> +<!ENTITY editMenu.label "ویرایش"> <!ENTITY editMenu.accesskey "E"> <!ENTITY undoCmd.label "Undo"> <!ENTITY undoCmd.key "Z"> @@ -40,7 +40,7 @@ <!ENTITY cutCmd.label "Cut"> <!ENTITY cutCmd.key "X"> <!ENTITY cutCmd.accesskey "t"> -<!ENTITY copyCmd.label "Copy"> +<!ENTITY copyCmd.label "کپی"> <!ENTITY copyCmd.key "C"> <!ENTITY copyCmd.accesskey "C"> <!ENTITY copyCitationCmd.label "Copy Citation"> @@ -48,17 +48,17 @@ <!ENTITY pasteCmd.label "Paste"> <!ENTITY pasteCmd.key "V"> <!ENTITY pasteCmd.accesskey "P"> -<!ENTITY deleteCmd.label "Delete"> +<!ENTITY deleteCmd.label "حذف"> <!ENTITY deleteCmd.key "D"> <!ENTITY deleteCmd.accesskey "D"> -<!ENTITY selectAllCmd.label "Select All"> +<!ENTITY selectAllCmd.label "انتخاب همه"> <!ENTITY selectAllCmd.key "A"> <!ENTITY selectAllCmd.accesskey "A"> -<!ENTITY preferencesCmd.label "Preferences"> +<!ENTITY preferencesCmd.label "تنظیمات"> <!ENTITY preferencesCmd.accesskey "O"> -<!ENTITY preferencesCmdUnix.label "Preferences"> +<!ENTITY preferencesCmdUnix.label "تنظیمات"> <!ENTITY preferencesCmdUnix.accesskey "n"> -<!ENTITY findCmd.label "Find"> +<!ENTITY findCmd.label "یافتن"> <!ENTITY findCmd.accesskey "F"> <!ENTITY findCmd.commandkey "f"> <!ENTITY bidiSwitchPageDirectionItem.label "Switch Page Direction"> @@ -68,34 +68,34 @@ <!ENTITY bidiSwitchTextDirectionItem.commandkey "X"> -<!ENTITY toolsMenu.label "Tools"> +<!ENTITY toolsMenu.label "ابزارها"> <!ENTITY toolsMenu.accesskey "T"> -<!ENTITY addons.label "Add-ons"> +<!ENTITY addons.label "افزودنی‌ها"> <!ENTITY minimizeWindow.key "m"> -<!ENTITY minimizeWindow.label "Minimize"> +<!ENTITY minimizeWindow.label "کوچک‌ کردن"> <!ENTITY bringAllToFront.label "Bring All to Front"> -<!ENTITY zoomWindow.label "Zoom"> -<!ENTITY windowMenu.label "Window"> +<!ENTITY zoomWindow.label "بزرگنمایی"> +<!ENTITY windowMenu.label "پنجره"> -<!ENTITY helpMenu.label "Help"> +<!ENTITY helpMenu.label "راهنما"> <!ENTITY helpMenu.accesskey "H"> -<!ENTITY helpMenuWin.label "Help"> +<!ENTITY helpMenuWin.label "راهنما"> <!ENTITY helpMenuWin.accesskey "H"> -<!ENTITY helpMac.commandkey "?"> -<!ENTITY aboutProduct.label "About &brandShortName;"> +<!ENTITY helpMac.commandkey "؟"> +<!ENTITY aboutProduct.label "درباره زوترو"> <!ENTITY aboutProduct.accesskey "A"> <!ENTITY productHelp.label "Support and Documentation"> <!ENTITY productHelp.accesskey "D"> -<!ENTITY helpTroubleshootingInfo.label "Troubleshooting Information"> +<!ENTITY helpTroubleshootingInfo.label "اطلاعات عیب‌یابی"> <!ENTITY helpTroubleshootingInfo.accesskey "T"> -<!ENTITY helpFeedbackPage.label "Submit Feedback…"> +<!ENTITY helpFeedbackPage.label "ارسال بازخورد..."> <!ENTITY helpFeedbackPage.accesskey "S"> -<!ENTITY helpReportErrors.label "Report Errors to Zotero…"> +<!ENTITY helpReportErrors.label "گزارش خطاها به زوترو"> <!ENTITY helpReportErrors.accesskey "R"> -<!ENTITY helpCheckForUpdates.label "Check for Updates…"> +<!ENTITY helpCheckForUpdates.label "بررسی بروزرسانی..."> <!ENTITY helpCheckForUpdates.accesskey "U"> diff --git a/chrome/locale/fa/zotero/zotero.dtd b/chrome/locale/fa/zotero/zotero.dtd @@ -4,18 +4,20 @@ <!ENTITY zotero.general.deselectAll "انتخاب هیچ‌کدام"> <!ENTITY zotero.general.edit "ویرایش"> <!ENTITY zotero.general.delete "حذف"> -<!ENTITY zotero.general.ok "OK"> -<!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.ok "تایید"> +<!ENTITY zotero.general.cancel "انصراف"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> -<!ENTITY zotero.errorReport.title "Zotero Error Report"> -<!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> +<!ENTITY zotero.errorReport.title "گزارش خطا در زوترو"> +<!ENTITY zotero.errorReport.unrelatedMessages "این ممکن است شامل پیام‌هایی غیرمرتبط با زوترو باشد."> <!ENTITY zotero.errorReport.submissionInProgress "لطفا تا پایان ارسال گزارش خطا، صبر کنید."> <!ENTITY zotero.errorReport.submitted "گزارش خطا ارسال شد."> <!ENTITY zotero.errorReport.reportID "شناسه گزارش:"> <!ENTITY zotero.errorReport.postToForums "لطفا یک پیام به انجمن گفتگوی زوترو به آدرس forums.zotero.org بفرستید که شامل شناسه گزارش، شرحی از مشکل و مراحل لازم برای تولید مجدد آن باشد."> <!ENTITY zotero.errorReport.notReviewed "برای بررسی گزارش خطا، حتما باید آن را به انجمن گفتگو ارجاع دهید. در غیر این صورت گزارش بررسی نخواهد شد."> -<!ENTITY zotero.upgrade.title "Zotero Upgrade Wizard"> +<!ENTITY zotero.upgrade.title "ارتقای جادویی زوترو"> <!ENTITY zotero.upgrade.newVersionInstalled "شما نسخه جدیدی از زوترو را نصب کرده‌اید."> <!ENTITY zotero.upgrade.upgradeRequired "برای کار کردن با نسخه جدید، بانک اطلاعات زوترو باید ارتقا یابد."> <!ENTITY zotero.upgrade.autoBackup "از بانک اطلاعات موجود، پیش از انجام هر تغییری، به صورت خودکار نسخه پشتیبان تهیه خواهد شد."> @@ -45,7 +47,7 @@ <!ENTITY zotero.collections.showUnfiledItems "نمایش آیتم‌های دسته‌بندی نشده"> <!ENTITY zotero.items.itemType "نوع آیتم"> -<!ENTITY zotero.items.type_column "Item Type"> +<!ENTITY zotero.items.type_column "نوع آیتم"> <!ENTITY zotero.items.title_column "عنوان‌"> <!ENTITY zotero.items.creator_column "پدیدآورنده"> <!ENTITY zotero.items.date_column "تاریخ"> @@ -60,38 +62,38 @@ <!ENTITY zotero.items.rights_column "حقوق"> <!ENTITY zotero.items.dateAdded_column "تاریخ افزودن"> <!ENTITY zotero.items.dateModified_column "تاریخ تغییر"> -<!ENTITY zotero.items.extra_column "Extra"> -<!ENTITY zotero.items.archive_column "Archive"> +<!ENTITY zotero.items.extra_column "اضافی"> +<!ENTITY zotero.items.archive_column "بایگانی"> <!ENTITY zotero.items.archiveLocation_column "Loc. in Archive"> -<!ENTITY zotero.items.place_column "Place"> -<!ENTITY zotero.items.volume_column "Volume"> -<!ENTITY zotero.items.edition_column "Edition"> -<!ENTITY zotero.items.pages_column "Pages"> -<!ENTITY zotero.items.issue_column "Issue"> -<!ENTITY zotero.items.series_column "Series"> -<!ENTITY zotero.items.seriesTitle_column "Series Title"> -<!ENTITY zotero.items.court_column "Court"> -<!ENTITY zotero.items.medium_column "Medium/Format"> -<!ENTITY zotero.items.genre_column "Genre"> -<!ENTITY zotero.items.system_column "System"> -<!ENTITY zotero.items.moreColumns.label "More Columns"> -<!ENTITY zotero.items.restoreColumnOrder.label "Restore Column Order"> +<!ENTITY zotero.items.place_column "مکان"> +<!ENTITY zotero.items.volume_column "جلد"> +<!ENTITY zotero.items.edition_column "ویرایش"> +<!ENTITY zotero.items.pages_column "صفحات"> +<!ENTITY zotero.items.issue_column "شماره"> +<!ENTITY zotero.items.series_column "سری"> +<!ENTITY zotero.items.seriesTitle_column "عنوان سری"> +<!ENTITY zotero.items.court_column "دادگاه"> +<!ENTITY zotero.items.medium_column "رسانه / قالب"> +<!ENTITY zotero.items.genre_column "ژانر"> +<!ENTITY zotero.items.system_column "سیستم"> +<!ENTITY zotero.items.moreColumns.label "ستون‌های بیشتر"> +<!ENTITY zotero.items.restoreColumnOrder.label "بازیابی نظم ستون"> <!ENTITY zotero.items.menu.showInLibrary "نمایش در کتابخانه"> <!ENTITY zotero.items.menu.attach.note "افزودن یادداشت"> <!ENTITY zotero.items.menu.attach "افزودن پیوست"> <!ENTITY zotero.items.menu.attach.snapshot "پیوست کردن تصویر لحظه‌ای این صفحه"> <!ENTITY zotero.items.menu.attach.link "پیوست کردن پیوند به این صفحه"> -<!ENTITY zotero.items.menu.attach.link.uri "Attach Link to URI…"> +<!ENTITY zotero.items.menu.attach.link.uri "پیوست پیوند به URI"> <!ENTITY zotero.items.menu.attach.file "پیوست کردن رونوشت پرونده..."> <!ENTITY zotero.items.menu.attach.fileLink "پیوست کردن پیوند به پرونده..."> -<!ENTITY zotero.items.menu.restoreToLibrary "Restore to Library"> +<!ENTITY zotero.items.menu.restoreToLibrary "بازگرداندن به کتابخانه"> <!ENTITY zotero.items.menu.duplicateItem "ساخت رونوشت از این آیتم"> -<!ENTITY zotero.items.menu.mergeItems "Merge Items…"> +<!ENTITY zotero.items.menu.mergeItems "ادغام آیتم‌ها"> -<!ENTITY zotero.duplicatesMerge.versionSelect "Choose the version of the item to use as the master item:"> -<!ENTITY zotero.duplicatesMerge.fieldSelect "Select fields to keep from other versions of the item:"> +<!ENTITY zotero.duplicatesMerge.versionSelect "آن نسخه از آیتمی را که می‌خواهید به عنوان آیتم اصلی استفاده شود، انتخاب کنید."> +<!ENTITY zotero.duplicatesMerge.fieldSelect "مواردی را که می‌خواهید از سایر نسخه‌ها نگه داشته شوند، انتخاب کنید."> <!ENTITY zotero.toolbar.newItem.label "آیتم‌ جدید"> <!ENTITY zotero.toolbar.moreItemTypes.label "بیشتر"> @@ -123,11 +125,11 @@ <!ENTITY zotero.item.textTransform "تبدیل متن"> <!ENTITY zotero.item.textTransform.titlecase "حروف اول بزرگ"> <!ENTITY zotero.item.textTransform.sentencecase "Sentence case"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> -<!ENTITY zotero.toolbar.newNote "New Note"> +<!ENTITY zotero.toolbar.newNote "یادداشت جدید"> <!ENTITY zotero.toolbar.note.standalone "یادداشت مستقل جدید"> -<!ENTITY zotero.toolbar.note.child "Add Child Note"> +<!ENTITY zotero.toolbar.note.child "افزودن یادداشت‌ وابسته"> <!ENTITY zotero.toolbar.lookup "جستجو با شاخص..."> <!ENTITY zotero.toolbar.attachment.linked "پیوند به پرونده..."> <!ENTITY zotero.toolbar.attachment.add "ذخیره رونوشت از پرونده..."> @@ -141,18 +143,18 @@ <!ENTITY zotero.tagSelector.selectVisible "انتخاب برچسب‌های پیدا"> <!ENTITY zotero.tagSelector.clearVisible "عدم انتخاب برچسب‌های پیدا"> <!ENTITY zotero.tagSelector.clearAll "انتخاب هیچ‌کدام"> -<!ENTITY zotero.tagSelector.assignColor "Assign Color…"> +<!ENTITY zotero.tagSelector.assignColor "اختصاص رنگ..."> <!ENTITY zotero.tagSelector.renameTag "تغییر نام برچسب..."> <!ENTITY zotero.tagSelector.deleteTag "حذف برچسب..."> -<!ENTITY zotero.tagColorChooser.title "Choose a Tag Color and Position"> -<!ENTITY zotero.tagColorChooser.color "Color:"> -<!ENTITY zotero.tagColorChooser.position "Position:"> -<!ENTITY zotero.tagColorChooser.setColor "Set Color"> -<!ENTITY zotero.tagColorChooser.removeColor "Remove Color"> +<!ENTITY zotero.tagColorChooser.title "انتخاب رنگ و موقعیت برچسب"> +<!ENTITY zotero.tagColorChooser.color "رنگ:"> +<!ENTITY zotero.tagColorChooser.position "موقعیت:"> +<!ENTITY zotero.tagColorChooser.setColor "تنظیم رنگ"> +<!ENTITY zotero.tagColorChooser.removeColor "حذف رنگ"> <!ENTITY zotero.lookup.description "شابک،‏ DOI یا PMID را برای جستجو در کادر زیر وارد کنید."> -<!ENTITY zotero.lookup.button.search "Search"> +<!ENTITY zotero.lookup.button.search "جستجو"> <!ENTITY zotero.selectitems.title "انتخاب آیتم‌‌ها"> <!ENTITY zotero.selectitems.intro.label "آیتم‌‌های مورد نظر را برای افزودن به کتابخانه انتخاب کنید"> @@ -161,9 +163,9 @@ <!ENTITY zotero.bibliography.title "ساخت کتابنامه"> <!ENTITY zotero.bibliography.style.label "شیوه‌نامه"> -<!ENTITY zotero.bibliography.outputMode "Output Mode:"> -<!ENTITY zotero.bibliography.bibliography "Bibliography"> -<!ENTITY zotero.bibliography.outputMethod "Output Method:"> +<!ENTITY zotero.bibliography.outputMode "حالت خروجی:"> +<!ENTITY zotero.bibliography.bibliography "کتابنامه"> +<!ENTITY zotero.bibliography.outputMethod "روش خروجی:"> <!ENTITY zotero.bibliography.saveAsRTF.label "ذخیره به صورت RTF"> <!ENTITY zotero.bibliography.saveAsHTML.label "ذخیره به صورت HTML"> <!ENTITY zotero.bibliography.copyToClipboard.label "رونوشت به حافظه"> @@ -220,8 +222,8 @@ <!ENTITY zotero.integration.prefs.storeReferences.label "Store references in document"> <!ENTITY zotero.integration.prefs.storeReferences.caption "Storing references in your document slightly increases file size, but will allow you to share your document with others without using a Zotero group. Zotero 3.0 or later is required to update documents created with this option."> -<!ENTITY zotero.integration.showEditor.label "Show Editor"> -<!ENTITY zotero.integration.classicView.label "Classic View"> +<!ENTITY zotero.integration.showEditor.label "نمایش ویرایشگر"> +<!ENTITY zotero.integration.classicView.label "نمایش کلاسیک"> <!ENTITY zotero.integration.references.label "مرجع‌های کتابنامه‌‌"> @@ -243,7 +245,7 @@ <!ENTITY zotero.merge.title "Conflict Resolution"> <!ENTITY zotero.merge.of "of"> -<!ENTITY zotero.merge.deleted "Deleted"> +<!ENTITY zotero.merge.deleted "حذف‌شده"> <!ENTITY zotero.proxy.recognized.title "پیشکار شناسایی شد"> <!ENTITY zotero.proxy.recognized.warning "فقط پیشکار‌های مرتبط با کتابخانه، شرکت یا دانشگاه خود را بیفزایید."> @@ -285,8 +287,6 @@ <!ENTITY zotero.downloadManager.saveToLibrary.description "Attachments cannot be saved to the currently selected library. This item will be saved to your library instead."> <!ENTITY zotero.downloadManager.noPDFTools.description "To use this feature, you must first install the PDF tools in the Search pane of the Zotero preferences."> -<!ENTITY zotero.attachLink.title "Attach Link to URI"> -<!ENTITY zotero.attachLink.label.link "Link:"> -<!ENTITY zotero.attachLink.label.title "Title:"> - - +<!ENTITY zotero.attachLink.title "پیوست کردن پیوند به URI"> +<!ENTITY zotero.attachLink.label.link "پیوند:"> +<!ENTITY zotero.attachLink.label.title "عنوان:"> diff --git a/chrome/locale/fa/zotero/zotero.properties b/chrome/locale/fa/zotero/zotero.properties @@ -20,16 +20,16 @@ general.tryAgainLater=Please try again in a few minutes. general.serverError=The server returned an error. Please try again. general.restartFirefox=لطفا فایرفاکس را دوباره راه‌اندازی کنید. general.restartFirefoxAndTryAgain=لطفا فایرفاکس را مجددا راه‌اندازی و دوباره تلاش کنید. -general.checkForUpdate=Check for Update +general.checkForUpdate=بررسی به روزرسانی general.actionCannotBeUndone=این عمل قابل بازگشت نیست. general.install=نصب general.updateAvailable=روزآمد موجود است -general.noUpdatesFound=No Updates Found -general.isUpToDate=%S is up to date. +general.noUpdatesFound=به‌روزرسانی یافته نشد +general.isUpToDate=%S به‌روز است. general.upgrade=ارتقا general.yes=بله general.no=خیر -general.notNow=Not Now +general.notNow=الآن نه general.passed=قبول شد general.failed=رد شد general.and=و @@ -39,19 +39,20 @@ general.permissionDenied=اجازه داده نشد general.character.singular=نویسه general.character.plural=نویسه‌ها general.create=ساختن -general.delete=Delete -general.moreInformation=More Information +general.delete=حذف +general.moreInformation=اطلاعات بیشتر general.seeForMoreInformation=برای اطلاعات بیشتر %S را ببینید +general.open=Open %S general.enable=فعال general.disable=غیرفعال general.remove=حذف -general.reset=Reset -general.hide=Hide +general.reset=تنظیم مجدد +general.hide=پنهان‌کردن general.quit=Quit general.useDefault=Use Default general.openDocumentation=Open Documentation general.numMore=%S more… -general.openPreferences=Open Preferences +general.openPreferences=بازکردن تنظیمات general.keys.ctrlShift=Ctrl+Shift+ general.keys.cmdShift=Cmd+Shift+ @@ -62,7 +63,7 @@ general.operationInProgress.waitUntilFinishedAndTryAgain=لطفا تا اتما punctuation.openingQMark=" punctuation.closingQMark=" punctuation.colon=: -punctuation.ellipsis=… +punctuation.ellipsis=... install.quickStartGuide=راهنمای سریع زوترو install.quickStartGuide.message.welcome=به زوترو خوش آمدید! @@ -87,7 +88,7 @@ errorReport.advanceMessage=Press %S to send the report to the Zotero developers. errorReport.stepsToReproduce=گام‌های مورد نیاز برای تولید دوباره: errorReport.expectedResult=نتیجه مورد انتظار: errorReport.actualResult=نتیجه واقعی: -errorReport.noNetworkConnection=No network connection +errorReport.noNetworkConnection=اتصال به شبکه مقدور نیست errorReport.invalidResponseRepository=Invalid response from repository errorReport.repoCannotBeContacted=Repository cannot be contacted @@ -146,13 +147,13 @@ date.relative.daysAgo.multiple=%S روز پیش date.relative.yearsAgo.one=یک سال پیش date.relative.yearsAgo.multiple=%S سال پیش -pane.collections.delete.title=Delete Collection +pane.collections.delete.title=حذف مجموعه pane.collections.delete=آیا واقعا می‌خواهید مجموعه انتخاب شده پاک شود؟ pane.collections.delete.keepItems=Items within this collection will not be deleted. -pane.collections.deleteWithItems.title=Delete Collection and Items +pane.collections.deleteWithItems.title=حذف مجموعه و آیتم‌های آن pane.collections.deleteWithItems=Are you sure you want to delete the selected collection and move all items within it to the Trash? -pane.collections.deleteSearch.title=Delete Search +pane.collections.deleteSearch.title=حذف جستجو pane.collections.deleteSearch=آیا واقعا می‌خواهید جستجوی انتخاب شده پاک شود؟ pane.collections.emptyTrash=آیا واقعا می‌خواهید آیتم‌های موجود در سطل بازیافت به طور دائمی حذف شوند؟ pane.collections.newCollection=مجموعه جدید @@ -169,9 +170,9 @@ pane.collections.duplicate=Duplicate Items pane.collections.menu.rename.collection=تغییر نام مجموعه... pane.collections.menu.edit.savedSearch=ویرایش جستجوی ذخیره شده -pane.collections.menu.delete.collection=Delete Collection… -pane.collections.menu.delete.collectionAndItems=Delete Collection and Items… -pane.collections.menu.delete.savedSearch=Delete Saved Search… +pane.collections.menu.delete.collection=حذف مجموعه +pane.collections.menu.delete.collectionAndItems=حذف مجموعه و آیتم‌های آن... +pane.collections.menu.delete.savedSearch=حذف جستجوی ذخیره‌شده... pane.collections.menu.export.collection=صدور مجموعه... pane.collections.menu.export.savedSearch=صدور جستجوی ذخیره شده... pane.collections.menu.createBib.collection=ساخت کتابنامه از مجموعه... @@ -193,7 +194,7 @@ tagColorChooser.numberKeyInstructions=You can add this tag to selected items by tagColorChooser.maxTags=Up to %S tags in each library can have colors assigned. pane.items.loading=بار کردن لیست آیتم‌ها... -pane.items.columnChooser.moreColumns=More Columns +pane.items.columnChooser.moreColumns=ستون‌های بیشتر pane.items.columnChooser.secondarySort=Secondary Sort (%S) pane.items.attach.link.uri.unrecognized=Zotero did not recognize the URI you entered. Please check the address and try again. pane.items.attach.link.uri.file=To attach a link to a file, please use “%S”. @@ -203,10 +204,13 @@ pane.items.trash.multiple=آیتم‌‌های انتخاب شده به سطل pane.items.delete.title=حذف pane.items.delete=آیتم‌ انتخاب شده حذف شود؟ pane.items.delete.multiple=آیتم‌‌های انتخاب شده حذف شوند؟ +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=حذف این آیتم از مجموعه pane.items.menu.remove.multiple=حذف آیتم‌‌های انتخاب شده -pane.items.menu.moveToTrash=Move Item to Trash… -pane.items.menu.moveToTrash.multiple=Move Items to Trash… +pane.items.menu.moveToTrash=انتقال به سطل بازیافت... +pane.items.menu.moveToTrash.multiple=انتقال به سطل بازیافت... pane.items.menu.export=صدور این آیتم... pane.items.menu.export.multiple=صدور آیتم‌‌های انتخاب شده... pane.items.menu.createBib=ساخت کتابنامه از این آیتم... @@ -221,6 +225,7 @@ pane.items.menu.createParent=ساخت آیتم‌ مادر از این آیتم pane.items.menu.createParent.multiple=ساخت آیتم‌های مادر از آیتم‌های انتخاب شده pane.items.menu.renameAttachments=تغییر نام پرونده با توجه به فراداده‌های مادر pane.items.menu.renameAttachments.multiple=تغییر نام پرونده‌ها با توجه به فراداده‌های مادر +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=نامه به %S pane.items.letter.twoParticipants=نامه به %S و %S @@ -237,7 +242,7 @@ pane.item.unselected.zero=No items in this view pane.item.unselected.singular=%S item in this view pane.item.unselected.plural=%S items in this view -pane.item.duplicates.selectToMerge=Select items to merge +pane.item.duplicates.selectToMerge=انتخاب آیتم‌‌ها جهت ادغام pane.item.duplicates.mergeItems=Merge %S items pane.item.duplicates.writeAccessRequired=Library write access is required to merge items. pane.item.duplicates.onlyTopLevel=Only top-level full items can be merged. @@ -348,7 +353,7 @@ itemFields.archiveLocation=محل در آرشیو itemFields.distributor=‌توزیع‌کننده itemFields.extra=اطلاعات اضافه itemFields.journalAbbreviation=نام مختصر مجله -itemFields.DOI=DOI +itemFields.DOI=شناسه DOI itemFields.accessDate=تاریخ دسترسی itemFields.seriesTitle=عنوان مجموعه itemFields.seriesText=متن مجموعه @@ -660,7 +665,7 @@ citation.singleSource=یک مرجع ... citation.showEditor=نمایش ویرایشگر... citation.hideEditor=نهفتن ویرایشگر ... citation.citations=Citations -citation.notes=Notes +citation.notes=یادداشت‌ها report.title.default=گزارش زوترو report.parentItem=آیتم‌ مادر: @@ -761,7 +766,7 @@ sync.error.passwordNotSet=گذرواژه تنظیم نشده است sync.error.invalidLogin=گذرواژه یا نام کاربری درست نیست. sync.error.invalidLogin.text=The Zotero sync server did not accept your username and password.\n\nPlease check that you have entered your zotero.org login information correctly in the Zotero sync preferences. sync.error.enterPassword=لطفا یک گذرواژه وارد کنید. -sync.error.loginManagerInaccessible=Zotero cannot access your login information. +sync.error.loginManagerInaccessible=زوترو نمی‌تواند به اطلاعات لازم برای ورود به وب‌گاه دسترسی پیدا کند. sync.error.checkMasterPassword=If you are using a master password in %S, make sure you have entered it successfully. sync.error.corruptedLoginManager=This could also be due to a corrupted %1$S login manager database. To check, close %1$S, remove signons.sqlite from your %1$S profile directory, and re-enter your Zotero login information in the Sync pane of the Zotero preferences. sync.error.loginManagerCorrupted1=Zotero cannot access your login information, possibly due to a corrupted %S login manager database. @@ -902,7 +907,7 @@ recognizePDF.noMatches=No matching references found recognizePDF.fileNotFound=File not found recognizePDF.limit=Google Scholar query limit reached. Try again later. recognizePDF.error=An unexpected error occurred. -recognizePDF.stopped=Cancelled +recognizePDF.stopped=لغو شده recognizePDF.complete.label=Metadata Retrieval Complete recognizePDF.cancelled.label=Metadata Retrieval Cancelled recognizePDF.close.label=بستن @@ -920,9 +925,9 @@ rtfScan.scannedFileSuffix=(پیمایش شد) file.accessError.theFile=The file '%S' file.accessError.aFile=A file file.accessError.cannotBe=cannot be -file.accessError.created=created -file.accessError.updated=updated -file.accessError.deleted=deleted +file.accessError.created=ایجاد شده +file.accessError.updated=به روز شده +file.accessError.deleted=حذف‌شده file.accessError.message.windows=Check that the file is not currently in use, that its permissions allow write access, and that it has a valid filename. file.accessError.message.other=Check that the file is not currently in use and that its permissions allow write access. file.accessError.restart=Restarting your computer or disabling security software may also help. @@ -951,11 +956,11 @@ locate.libraryLookup.tooltip=جستجوی این آیتم با استفاده ا locate.manageLocateEngines=سامان‌دهی موتورهای جستجو... standalone.corruptInstallation=Your Zotero Standalone installation appears to be corrupted due to a failed auto-update. While Zotero may continue to function, to avoid potential bugs, please download the latest version of Zotero Standalone from http://zotero.org/support/standalone as soon as possible. -standalone.addonInstallationFailed.title=Add-on Installation Failed +standalone.addonInstallationFailed.title=افزونه نصب نشد standalone.addonInstallationFailed.body=The add-on "%S" could not be installed. It may be incompatible with this version of Zotero Standalone. standalone.rootWarning=You appear to be running Zotero Standalone as root. This is insecure and may prevent Zotero from functioning when launched from your user account.\n\nIf you wish to install an automatic update, modify the Zotero program directory to be writeable by your user account. -standalone.rootWarning.exit=Exit -standalone.rootWarning.continue=Continue +standalone.rootWarning.exit=خروج +standalone.rootWarning.continue=ادامه standalone.updateMessage=A recommended update is available, but you do not have permission to install it. To update automatically, modify the Zotero program directory to be writeable by your user account. connector.error.title=Zotero Connector Error @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/fi-FI/zotero/csledit.dtd b/chrome/locale/fi-FI/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/fi-FI/zotero/cslpreview.dtd b/chrome/locale/fi-FI/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/fi-FI/zotero/preferences.dtd b/chrome/locale/fi-FI/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Selainikkuna"> <!ENTITY zotero.preferences.showIn.separateTab "Erillinen välilehti"> <!ENTITY zotero.preferences.showIn.appTab "Sovellusvälilehti"> -<!ENTITY zotero.preferences.statusBarIcon "Tilarivin kuvake:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Ei mitään"> <!ENTITY zotero.preferences.fontSize "Kirjasinkoko:"> <!ENTITY zotero.preferences.fontSize.small "Pieni"> <!ENTITY zotero.preferences.fontSize.medium "Keskikokoinen"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Hanki lisää tyylejä..."> -<!ENTITY zotero.preferences.prefpane.keys "Shortcut Keys"> - <!ENTITY zotero.preferences.keys.openZotero "Avaa/sulje Zotero-ikkuna"> <!ENTITY zotero.preferences.keys.saveToZotero "Tallenna Zoteroon (osoitepalkin kuvake)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Koko ruudun tila"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Lisäasetukset"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Tiedostot ja kansiot"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Paikanna"> <!ENTITY zotero.preferences.locate.locateEngineManager "Artikkelihakumoottorin hallinta"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Lähetä Zotero-palvelimelle"> <!ENTITY zotero.preferences.openAboutConfig "Avaa about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Avaa CSL-muokkain"> -<!ENTITY zotero.preferences.openCSLPreview "Avaa CSL-esikatselu"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Avaa about:memory"> diff --git a/chrome/locale/fi-FI/zotero/zotero.dtd b/chrome/locale/fi-FI/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Poista"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Peruuta"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zoteron virheraportti"> <!ENTITY zotero.errorReport.unrelatedMessages "Mukana saattaa olla Zoteroon liittymättömiä viestejä."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Muunna teksti"> <!ENTITY zotero.item.textTransform.titlecase "Otsikon aakkoslaji"> <!ENTITY zotero.item.textTransform.sentencecase "Lauseenkaltainen"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Vaihda etu- ja sukunimi"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Uusi muistiinpano"> <!ENTITY zotero.toolbar.note.standalone "Uusi itsenäinen muistiinpano"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/fi-FI/zotero/zotero.properties b/chrome/locale/fi-FI/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Luo general.delete=Poista general.moreInformation=Lisätietoja general.seeForMoreInformation=Katso %S, jos haluat tietää lisää. +general.open=Open %S general.enable=Laita päälle general.disable=Ota pois päältä general.remove=Poista @@ -203,6 +204,9 @@ pane.items.trash.multiple=Haluatko varmasti siirtää valitut nimikkeet roskakor pane.items.delete.title=Poista pane.items.delete=Haluatko varmasti poistaa valitun kohteen? pane.items.delete.multiple=Haluatko varmasti poistaa valitut kohteet? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Poista valittu kohde pane.items.menu.remove.multiple=Poista valitut kohteet pane.items.menu.moveToTrash=Siirrä nimike roskakoriin... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Luo valitulle nimikkeelle ylänimike pane.items.menu.createParent.multiple=Luo valituille nimikkeille ylänimike pane.items.menu.renameAttachments=Muuta tiedoston nimi ylänimikkeen metatiedoista pane.items.menu.renameAttachments.multiple=Muuta tiedostojen nimet ylänimikkeen metatiedoista +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Kirje henkilölle %S pane.items.letter.twoParticipants=Kirje henkilöille %S ja %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Kirjoita otsikko tai tekijä etsiäksesi viitettä. firstRunGuidance.quickFormatMac=Kirjoita otsikko tai tekijä etsiäksesi viitettä.\n\nKun olet tehnyt valinnan, klikkaa kuplaa tai paina Ctrl-\u2193 lisätäksesi sivunumerot sekä etu- ja jälkiliitteet. Voit myös sisällyttää sivunumeron hakutermien mukana lisätäksesi sen suoraan.\n\nVoit muokata sitaatteja suoraan tekstinkäsittelyohjelman asiakirjassa. firstRunGuidance.toolbarButton.new=Paina tästä avataksesi Zoteron, tai käyttää %S-näppäinoikotietä. firstRunGuidance.toolbarButton.upgrade=Zoteron kuvake on nyt Firefoxin työkalurivillä. Paina kuvaketta avataksesi Zoteron, tai käytä %S-näppäinoikotietä. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/fr-FR/zotero/csledit.dtd b/chrome/locale/fr-FR/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/fr-FR/zotero/cslpreview.dtd b/chrome/locale/fr-FR/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/fr-FR/zotero/preferences.dtd b/chrome/locale/fr-FR/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "un panneau du navigateur"> <!ENTITY zotero.preferences.showIn.separateTab "un onglet séparé"> <!ENTITY zotero.preferences.showIn.appTab "un onglet applicatif"> -<!ENTITY zotero.preferences.statusBarIcon "Icône dans la barre d'état :"> -<!ENTITY zotero.preferences.statusBarIcon.none "Aucune"> <!ENTITY zotero.preferences.fontSize "Taille des caractères :"> <!ENTITY zotero.preferences.fontSize.small "Petite"> <!ENTITY zotero.preferences.fontSize.medium "Moyenne"> @@ -125,18 +123,16 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Obtenir des styles supplémentaires…"> -<!ENTITY zotero.preferences.prefpane.keys "Raccourcis"> - -<!ENTITY zotero.preferences.keys.openZotero "Ouvrir/fermer le panneau Zotero"> +<!ENTITY zotero.preferences.keys.openZotero "Ouvrir / Fermer le panneau Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Enregistrer dans Zotero (icône de la barre d'adresse)"> -<!ENTITY zotero.preferences.keys.toggleFullscreen "Bascule du mode plein écran"> -<!ENTITY zotero.preferences.keys.focusLibrariesPane "Bascule vers le panneau Ma Bibliothèque"> +<!ENTITY zotero.preferences.keys.toggleFullscreen "Activer / Désactiver le mode plein écran"> +<!ENTITY zotero.preferences.keys.focusLibrariesPane "Placer le curseur dans le volet de gauche (bibliothèques)"> <!ENTITY zotero.preferences.keys.quicksearch "Recherche rapide"> <!ENTITY zotero.preferences.keys.newItem "Créer un nouveau document"> <!ENTITY zotero.preferences.keys.newNote "Créer une nouvelle note"> -<!ENTITY zotero.preferences.keys.toggleTagSelector "Bascule du sélecteur de marqueurs"> -<!ENTITY zotero.preferences.keys.copySelectedItemCitationsToClipboard "Copier les citations du document sélectionné dans le presse-papiers"> -<!ENTITY zotero.preferences.keys.copySelectedItemsToClipboard "Copier les documents sélectionnés dans le presse-papiers"> +<!ENTITY zotero.preferences.keys.toggleTagSelector "Afficher / Cacher le sélecteur de marqueurs"> +<!ENTITY zotero.preferences.keys.copySelectedItemCitationsToClipboard "Copier dans le presse-papiers les documents sélectionnés, comme des citations"> +<!ENTITY zotero.preferences.keys.copySelectedItemsToClipboard "Copier dans le presse-papiers les documents sélectionnés, comme une bibliographie"> <!ENTITY zotero.preferences.keys.importFromClipboard "Importer du presse-papiers"> <!ENTITY zotero.preferences.keys.changesTakeEffect "Les modifications ne prennent effet que dans les nouvelles fenêtres."> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Avancées"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Fichiers et dossiers"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Localiser"> <!ENTITY zotero.preferences.locate.locateEngineManager "Gestion des moteurs de recherche d'articles"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Transmettre au serveur de Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Ouvrir about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Ouvrir CSL Editor (test des styles installés)"> -<!ENTITY zotero.preferences.openCSLPreview "Ouvrir CSL Preview (aperçu des styles installés)"> +<!ENTITY zotero.preferences.openCSLEdit "Ouvrir l'Éditeur de style"> +<!ENTITY zotero.preferences.openCSLPreview "Ouvrir l'Aperçu des styles"> <!ENTITY zotero.preferences.openAboutMemory "Ouvrir about:memory"> diff --git a/chrome/locale/fr-FR/zotero/standalone.dtd b/chrome/locale/fr-FR/zotero/standalone.dtd @@ -87,7 +87,7 @@ <!ENTITY helpMenuWin.label "?"> <!ENTITY helpMenuWin.accesskey "?"> <!ENTITY helpMac.commandkey "?"> -<!ENTITY aboutProduct.label "À propos &brandShortName;"> +<!ENTITY aboutProduct.label "À propos de &brandShortName;"> <!ENTITY aboutProduct.accesskey "p"> <!ENTITY productHelp.label "Assistance et documentation"> <!ENTITY productHelp.accesskey "A"> diff --git a/chrome/locale/fr-FR/zotero/zotero.dtd b/chrome/locale/fr-FR/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Supprimer"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Annuler"> +<!ENTITY zotero.general.refresh "Actualiser"> +<!ENTITY zotero.general.saveAs "Enregistrer sous…"> <!ENTITY zotero.errorReport.title "Rapport d'erreur Zotero"> <!ENTITY zotero.errorReport.unrelatedMessages "Il peut y avoir des messages sans lien avec Zotero."> @@ -103,7 +105,7 @@ <!ENTITY zotero.toolbar.newSubcollection.label "Nouvelle sous-collection…"> <!ENTITY zotero.toolbar.newSavedSearch.label "Nouvelle recherche enregistrée…"> <!ENTITY zotero.toolbar.emptyTrash.label "Vider la corbeille"> -<!ENTITY zotero.toolbar.tagSelector.label "Montrer/cacher le sélecteur de marqueurs"> +<!ENTITY zotero.toolbar.tagSelector.label "Afficher / Cacher le sélecteur de marqueurs"> <!ENTITY zotero.toolbar.actions.label "Actions"> <!ENTITY zotero.toolbar.import.label "Importer…"> <!ENTITY zotero.toolbar.importFromClipboard "Importer depuis le presse-papiers"> @@ -114,7 +116,7 @@ <!ENTITY zotero.toolbar.supportAndDocumentation "Assistance et documentation"> <!ENTITY zotero.toolbar.about.label "À propos de Zotero"> <!ENTITY zotero.toolbar.advancedSearch "Recherche avancée"> -<!ENTITY zotero.toolbar.tab.tooltip "Bascule du mode onglet"> +<!ENTITY zotero.toolbar.tab.tooltip "Activer / Désactiver le mode onglet"> <!ENTITY zotero.toolbar.openURL.label "Localiser"> <!ENTITY zotero.toolbar.openURL.tooltip "Chercher dans votre bibliothèque locale"> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transformer le texte"> <!ENTITY zotero.item.textTransform.titlecase "Initiales En Majuscules"> <!ENTITY zotero.item.textTransform.sentencecase "Lettre capitale en début de phrase"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Inverser les prénom/nom"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Inverser prénom/nom"> <!ENTITY zotero.toolbar.newNote "Nouvelle note"> <!ENTITY zotero.toolbar.note.standalone "Nouvelle note indépendante"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Joindre un lien vers un URI"> <!ENTITY zotero.attachLink.label.link "Lien :"> <!ENTITY zotero.attachLink.label.title "Titre :"> - - diff --git a/chrome/locale/fr-FR/zotero/zotero.properties b/chrome/locale/fr-FR/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Créer general.delete=Supprimer general.moreInformation=Plus d'informations general.seeForMoreInformation=Consultez %S pour plus d'information. +general.open=Open %S general.enable=Activer general.disable=Désactiver general.remove=Supprimer @@ -203,6 +204,9 @@ pane.items.trash.multiple=Voulez-vous vraiment mettre les documents sélectionn pane.items.delete.title=Supprimer pane.items.delete=Voulez-vous vraiment supprimer le document sélectionné ? pane.items.delete.multiple=Voulez-vous vraiment supprimer les documents sélectionnés ? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Retirer le document de la collection pane.items.menu.remove.multiple=Retirer les documents de la collection pane.items.menu.moveToTrash=Mettre le document à la corbeille… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Créer un document parent pane.items.menu.createParent.multiple=Créer des documents parents pane.items.menu.renameAttachments=Renommer le fichier à partir des métadonnées du parent pane.items.menu.renameAttachments.multiple=Renommer les fichiers à partir des métadonnées du parent +pane.items.showItemInLibrary=Afficher le document dans la bibliothèque pane.items.letter.oneParticipant=Lettre à %S pane.items.letter.twoParticipants=Lettre à %S et %S @@ -558,8 +563,8 @@ zotero.preferences.search.pdf.toolsDownloadError=Une erreur est survenue en essa zotero.preferences.search.pdf.tryAgainOrViewManualInstructions=Veuillez réessayer plus tard, ou consultez la documentation pour les instructions d'installation manuelle. zotero.preferences.export.quickCopy.bibStyles=Styles bibliographiques zotero.preferences.export.quickCopy.exportFormats=Formats d'exportation -zotero.preferences.export.quickCopy.instructions=La copie rapide vous permet de copier les références sélectionnées vers le presse-papiers en appuyant sur %S ou en glissant-déposant les références dans une zone de texte (d'une page Web ou d'un traitement de texte). -zotero.preferences.export.quickCopy.citationInstructions=En choisissant, ci-dessous, un style bibliographique comme format de sortie par défaut, les références copiées pourront aussi être mises en forme comme une citation dans le texte : grâce au raccourci clavier %S ou en maintenant la touche Majuscule enfoncée pendant que vous glissez-déposez les références. +zotero.preferences.export.quickCopy.instructions=La copie rapide permet de copier vers le presse-papiers les documents sélectionnés, soit comme une *bibliographie* conforme à un Style bibliographique retenu ci-dessous, soit au Format d'exportation retenu ci-dessous. Il suffit d'appuyer sur %S ou de glisser-déposer les documents dans une zone de texte. +zotero.preferences.export.quickCopy.citationInstructions=Pour copier les documents sélectionnés comme des *citations* (ou des notes de bas de page) d'un texte, appuyez sur %S ou appuyez sur la touche Majuscule tout en glissant-déposant les documents. (Vérifiez que le Format de sortie par défaut est un Style bibliographique). zotero.preferences.styles.addStyle=Ajouter un style zotero.preferences.advanced.resetTranslatorsAndStyles=Réinitialiser les convertisseurs et les styles @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Tapez son titre ou son auteur pour rechercher une r firstRunGuidance.quickFormatMac=Tapez son titre ou son auteur pour rechercher une référence.\n\nAprès l'avoir sélectionnée, cliquez sur la bulle ou appuyer sur Cmd-\u2193 pour ajouter les numéros des pages, un préfixe ou un suffixe. Vous pouvez aussi inclure un numéro de page en même temps que vos termes de recherche afin de l'ajouter directement.\n\nVous pouvez modifier les citations directement dans le document du traitement de texte. firstRunGuidance.toolbarButton.new=Cliquez ici pour ouvrir Zotero, ou utilisez le raccourci clavier %S. firstRunGuidance.toolbarButton.upgrade=L'icône Zotero est désormais dans la barre d'outils Firefox. Cliquez sur l'icône pour ouvrir Zotero, ou utilisez le raccourci clavier %S. + +styles.bibliography=Bibliographie +styles.editor.save=Enregistrer le style de citation +styles.editor.warning.noItems=Aucun document sélectionné dans Zotero. +styles.editor.warning.parseError=Erreur dans la syntaxe du style : +styles.editor.warning.renderError=Erreur lors de la création des citations et de la bibliographie : +styles.editor.output.individualCitations=Citation(s) individuelle(s) +styles.editor.output.singleCitation=Citation unique (en position "first") +styles.preview.instructions=Sélectionnez un ou plusieurs documents dans Zotero et cliquez sur le bouton "Actualiser" pour voir comment ces documents sont mis en forme avec les styles de citation CSL installés. diff --git a/chrome/locale/gl-ES/zotero/csledit.dtd b/chrome/locale/gl-ES/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/gl-ES/zotero/cslpreview.dtd b/chrome/locale/gl-ES/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/gl-ES/zotero/preferences.dtd b/chrome/locale/gl-ES/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Panel do navegador"> <!ENTITY zotero.preferences.showIn.separateTab "Lapela propia"> <!ENTITY zotero.preferences.showIn.appTab "Lapela de aplicativos"> -<!ENTITY zotero.preferences.statusBarIcon "Icona da barra de estado:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Ningún"> <!ENTITY zotero.preferences.fontSize "Tamaño da tipografía:"> <!ENTITY zotero.preferences.fontSize.small "Pequena"> <!ENTITY zotero.preferences.fontSize.medium "Mediana"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Obter máis estilos..."> -<!ENTITY zotero.preferences.prefpane.keys "Atallos de teclado"> - <!ENTITY zotero.preferences.keys.openZotero "Abrir/Pechar o panel de Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Gardar en Zotero (icona na barra de direccións)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Cambiar ao modo de pantalla completa"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Avanzado"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Ficheiros e cartafoles"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Localizador"> <!ENTITY zotero.preferences.locate.locateEngineManager "Xestor do motor de busca de artigos"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Enviar ao servidor de Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Abrir about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Abrir o editor CSL"> -<!ENTITY zotero.preferences.openCSLPreview "Abrir a previsualización de CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Abrir about:memory"> diff --git a/chrome/locale/gl-ES/zotero/zotero.dtd b/chrome/locale/gl-ES/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Borrar"> <!ENTITY zotero.general.ok "Aceptar"> <!ENTITY zotero.general.cancel "Cancelar"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Informe de erros de Zotero"> <!ENTITY zotero.errorReport.unrelatedMessages "Isto pode conter mensaxes que non estean relacionadas con Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transformar o texto"> <!ENTITY zotero.item.textTransform.titlecase "Maiúsculas comezando cada palabra"> <!ENTITY zotero.item.textTransform.sentencecase "Maiúsculas comezando cada oración"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Cambiar nome/apelidos"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Nota nova"> <!ENTITY zotero.toolbar.note.standalone "Nova nota independente"> @@ -285,8 +287,6 @@ <!ENTITY zotero.downloadManager.saveToLibrary.description "Os anexos non se poden gardar na librería que se escolleu. En vez de alí, ese documento gardarase na súa biblioteca."> <!ENTITY zotero.downloadManager.noPDFTools.description "Para empregar esta característica ten que instalar primeiro as ferramentas de PDF dende as preferencias de Zotero."> -<!ENTITY zotero.attachLink.title "Attach Link to URI"> -<!ENTITY zotero.attachLink.label.link "Link:"> -<!ENTITY zotero.attachLink.label.title "Title:"> - - +<!ENTITY zotero.attachLink.title "Engadirlle unha ligazón á URI:"> +<!ENTITY zotero.attachLink.label.link "Ligazón:"> +<!ENTITY zotero.attachLink.label.title "Título:"> diff --git a/chrome/locale/gl-ES/zotero/zotero.properties b/chrome/locale/gl-ES/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Crear general.delete=Eliminar general.moreInformation=Máis información general.seeForMoreInformation=Vexa %S para máis información. +general.open=Open %S general.enable=Activar general.disable=Desactivar general.remove=Remove @@ -195,14 +196,17 @@ tagColorChooser.maxTags=Só ata %S etiquetas de cada biblioteca poden ter cores pane.items.loading=Cargando a lista de elementos ... pane.items.columnChooser.moreColumns=Máis columnas pane.items.columnChooser.secondarySort=Modo de aliñamento (%S) -pane.items.attach.link.uri.unrecognized=Zotero did not recognize the URI you entered. Please check the address and try again. -pane.items.attach.link.uri.file=To attach a link to a file, please use “%S”. +pane.items.attach.link.uri.unrecognized=Zotero non recoñeceu a URI que se introduciou. Comprobe que o enderezo estea ben e probe de novo. +pane.items.attach.link.uri.file=Para engadirlle unha ligazón a un ficheiro, empregue «%S» pane.items.trash.title=Mover ao lixo pane.items.trash=Seguro que quere mover o elemento seleccionado ao lixo? pane.items.trash.multiple=Seguro que quere mover os elementos seleccionados ao lixo? pane.items.delete.title=Eliminar pane.items.delete=Seguro que quere eliminar o elemento seleccionado? pane.items.delete.multiple=Seguro que quere eliminar os elementos seleccionados? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Eliminar o elemento seleccionado pane.items.menu.remove.multiple=Eliminar os elementos seleccionados pane.items.menu.moveToTrash=Mover os elementos ao lixo... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Crear un elemento pai do elemento seleccionado pane.items.menu.createParent.multiple=Crear un elementos pai dos elementos seleccionados pane.items.menu.renameAttachments=Renomear o ficheiro dos metadatos parentais pane.items.menu.renameAttachments.multiple=Cambiar os nomes dos ficheiros dos metadatos parentais +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Carta a %S pane.items.letter.twoParticipants=Carta a %S e %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Teclee un título ou autor para buscar unha referen firstRunGuidance.quickFormatMac=Teclee un título de autor para facer unha busca dunha referencia.\n\nDespois de ter feito a selección prema na burbulla ou prema Cmd-\↓ para engadir os números de páxina, prefixos ou sufixos. Igualmente, pode incluír un número de páxina co seus termos de busca empregados e engadilo directamente.\n\nPode ademais editar citas directamente desde o procesador de documentos de textos. firstRunGuidance.toolbarButton.new=Para abrir Zotero preme aquí ou usa o atallo de teclado %S firstRunGuidance.toolbarButton.upgrade=A icona de Zotero pódese atopar na barra de ferramentas do Firefox. Preme na icona de Zotero para abrilo ou usa o atallo de teclado %S. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/he-IL/zotero/csledit.dtd b/chrome/locale/he-IL/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/he-IL/zotero/cslpreview.dtd b/chrome/locale/he-IL/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/he-IL/zotero/preferences.dtd b/chrome/locale/he-IL/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Browser pane"> <!ENTITY zotero.preferences.showIn.separateTab "לשונית נפרדת"> <!ENTITY zotero.preferences.showIn.appTab "App tab"> -<!ENTITY zotero.preferences.statusBarIcon "Status bar icon:"> -<!ENTITY zotero.preferences.statusBarIcon.none "None"> <!ENTITY zotero.preferences.fontSize ":גודל גופן"> <!ENTITY zotero.preferences.fontSize.small "קטן"> <!ENTITY zotero.preferences.fontSize.medium "בינוני"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Get additional styles..."> -<!ENTITY zotero.preferences.prefpane.keys "Shortcut Keys"> - <!ENTITY zotero.preferences.keys.openZotero "פתח/סגור חלונות Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Toggle Fullscreen Mode"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "מתקדם"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Locate"> <!ENTITY zotero.preferences.locate.locateEngineManager "Article Lookup Engine Manager"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Submit to Zotero Server"> <!ENTITY zotero.preferences.openAboutConfig "Open about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Open CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Open CSL Preview"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/he-IL/zotero/zotero.dtd b/chrome/locale/he-IL/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "מחק"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transform Text"> <!ENTITY zotero.item.textTransform.titlecase "Title Case"> <!ENTITY zotero.item.textTransform.sentencecase "Sentence case"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "פתק חדש"> <!ENTITY zotero.toolbar.note.standalone "New Standalone Note"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/he-IL/zotero/zotero.properties b/chrome/locale/he-IL/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=צור general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=See %S for more information. +general.open=Open %S general.enable=Enable general.disable=Disable general.remove=הסר @@ -203,6 +204,9 @@ pane.items.trash.multiple=Are you sure you want to move the selected items to th pane.items.delete.title=מחק pane.items.delete=Are you sure you want to delete the selected item? pane.items.delete.multiple=האם אתה רוצה למחוק את הפריטים הנבחרים? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=הסר פריטים נבחרים pane.items.menu.remove.multiple=הסר פריטים נבחרים pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Create Parent Item pane.items.menu.createParent.multiple=Create Parent Items pane.items.menu.renameAttachments=Rename File from Parent Metadata pane.items.menu.renameAttachments.multiple=Rename Files from Parent Metadata +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Letter to %S pane.items.letter.twoParticipants=Letter to %S and %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/hr-HR/zotero/csledit.dtd b/chrome/locale/hr-HR/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/hr-HR/zotero/cslpreview.dtd b/chrome/locale/hr-HR/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/hr-HR/zotero/preferences.dtd b/chrome/locale/hr-HR/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Browser pane"> <!ENTITY zotero.preferences.showIn.separateTab "Separate tab"> <!ENTITY zotero.preferences.showIn.appTab "App tab"> -<!ENTITY zotero.preferences.statusBarIcon "Status bar icon:"> -<!ENTITY zotero.preferences.statusBarIcon.none "None"> <!ENTITY zotero.preferences.fontSize "Font size:"> <!ENTITY zotero.preferences.fontSize.small "Small"> <!ENTITY zotero.preferences.fontSize.medium "Medium"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Get additional styles..."> -<!ENTITY zotero.preferences.prefpane.keys "Shortcut Keys"> - <!ENTITY zotero.preferences.keys.openZotero "Open/Close Zotero Pane"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Toggle Fullscreen Mode"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Advanced"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Locate"> <!ENTITY zotero.preferences.locate.locateEngineManager "Article Lookup Engine Manager"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Submit to Zotero Server"> <!ENTITY zotero.preferences.openAboutConfig "Open about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Open CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Open CSL Preview"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/hr-HR/zotero/zotero.dtd b/chrome/locale/hr-HR/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Delete"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transform Text"> <!ENTITY zotero.item.textTransform.titlecase "Title Case"> <!ENTITY zotero.item.textTransform.sentencecase "Sentence case"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "New Note"> <!ENTITY zotero.toolbar.note.standalone "New Standalone Note"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/hr-HR/zotero/zotero.properties b/chrome/locale/hr-HR/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Create general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=See %S for more information. +general.open=Open %S general.enable=Enable general.disable=Disable general.remove=Remove @@ -203,6 +204,9 @@ pane.items.trash.multiple=Are you sure you want to move the selected items to th pane.items.delete.title=Delete pane.items.delete=Are you sure you want to delete the selected item? pane.items.delete.multiple=Are you sure you want to delete the selected items? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Remove Item from Collection pane.items.menu.remove.multiple=Remove Items from Collection pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Create Parent Item pane.items.menu.createParent.multiple=Create Parent Items pane.items.menu.renameAttachments=Rename File from Parent Metadata pane.items.menu.renameAttachments.multiple=Rename Files from Parent Metadata +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Letter to %S pane.items.letter.twoParticipants=Letter to %S and %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/hu-HU/zotero/csledit.dtd b/chrome/locale/hu-HU/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/hu-HU/zotero/cslpreview.dtd b/chrome/locale/hu-HU/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/hu-HU/zotero/preferences.dtd b/chrome/locale/hu-HU/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Böngésző ablak"> <!ENTITY zotero.preferences.showIn.separateTab "Új lap"> <!ENTITY zotero.preferences.showIn.appTab "Lap rögzítése"> -<!ENTITY zotero.preferences.statusBarIcon "Ikon az állapotsorban:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Egyik sem"> <!ENTITY zotero.preferences.fontSize "Betűméret"> <!ENTITY zotero.preferences.fontSize.small "Kicsi"> <!ENTITY zotero.preferences.fontSize.medium "Közepes"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "További stílusok telepítése..."> -<!ENTITY zotero.preferences.prefpane.keys "Billentyűparancsok"> - <!ENTITY zotero.preferences.keys.openZotero "Zotero megnyitása/bezárása"> <!ENTITY zotero.preferences.keys.saveToZotero "Mentés Zotero-ba (adress bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Teljesképernyős üzemmód"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Haladó"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Fájlok és mappák"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Elhelyezni"> <!ENTITY zotero.preferences.locate.locateEngineManager "Article Lookup Engine Manager"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Elküldés a Zotero szervernek"> <!ENTITY zotero.preferences.openAboutConfig "Az about:config megnyitása"> -<!ENTITY zotero.preferences.openCSLEdit "CSL Szerkesztő megnyitása"> -<!ENTITY zotero.preferences.openCSLPreview "CSL előnézet megnyitása"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Az about:memory megnyitása"> diff --git a/chrome/locale/hu-HU/zotero/zotero.dtd b/chrome/locale/hu-HU/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Törlés"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Mégse"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero hibajelentés"> <!ENTITY zotero.errorReport.unrelatedMessages "Tartalmazhat a Zotero-tól független üzeneteket."> @@ -70,7 +72,7 @@ <!ENTITY zotero.items.issue_column "Szám"> <!ENTITY zotero.items.series_column "Sorozat"> <!ENTITY zotero.items.seriesTitle_column "Sorozat címe"> -<!ENTITY zotero.items.court_column "Court"> +<!ENTITY zotero.items.court_column "Bíróság"> <!ENTITY zotero.items.medium_column "Közepes/Formátum"> <!ENTITY zotero.items.genre_column "Műfaj"> <!ENTITY zotero.items.system_column "Rendszer"> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Szöveg átalakítása"> <!ENTITY zotero.item.textTransform.titlecase "Szókezdő"> <!ENTITY zotero.item.textTransform.sentencecase "Mondatkezdő"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Keresztnév/vezetéknév felcserélése"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Új jegyzet"> <!ENTITY zotero.toolbar.note.standalone "Új önálló jegyzet"> @@ -191,7 +193,7 @@ <!ENTITY zotero.citation.suppressAuthor.label "Szerző figyelmen kívül hagyása"> <!ENTITY zotero.citation.prefix.label "Előtag:"> <!ENTITY zotero.citation.suffix.label "Utótag:"> -<!ENTITY zotero.citation.editorWarning.label "Warning: If you edit a citation in the editor it will no longer update to reflect changes in your database or the citation style."> +<!ENTITY zotero.citation.editorWarning.label "Figyelmeztetés: Ha a szerkesztőben szerkeszt egy hivatkozást, akkor nem fog frissülni és nem fogja megjeleníteni az adatbázis vagy a hivatkozási stílus változásait."> <!ENTITY zotero.richText.italic.label "Dőlt"> <!ENTITY zotero.richText.bold.label "Félkövér"> @@ -218,7 +220,7 @@ <!ENTITY zotero.integration.prefs.automaticJournalAbbeviations.caption "MEDLINE journal abbreviations will be automatically generated using journal titles. The “Journal Abbr” field will be ignored."> <!ENTITY zotero.integration.prefs.storeReferences.label "A dokumentum tárolt hivatkozásai"> -<!ENTITY zotero.integration.prefs.storeReferences.caption "Storing references in your document slightly increases file size, but will allow you to share your document with others without using a Zotero group. Zotero 3.0 or later is required to update documents created with this option."> +<!ENTITY zotero.integration.prefs.storeReferences.caption "A hivatkozások tárolása a dokumentumban növeli a fájl méretét, de lehetővé teszi, a dokumentum megosztását másokkal, anélkül, hogy Zotero csoportot használjon. Zotero 3.0 vagy későbbi verzió szükséges az előbbi opcióval létrehozott dokumentumok frissítéséhez."> <!ENTITY zotero.integration.showEditor.label "Editor megjelenítése"> <!ENTITY zotero.integration.classicView.label "Klasszikus nézet"> @@ -269,7 +271,7 @@ <!ENTITY zotero.rtfScan.scanPage.label "Hivatkozások keresése"> <!ENTITY zotero.rtfScan.scanPage.description "A Zotero hivatkozásokat keres a dokumentumban. Kérem várjon."> <!ENTITY zotero.rtfScan.citationsPage.label "Hivatkozott elemek ellenőrzése"> -<!ENTITY zotero.rtfScan.citationsPage.description "Please review the list of recognized citations below to ensure that Zotero has selected the corresponding items correctly. Any unmapped or ambiguous citations must be resolved before proceeding to the next step."> +<!ENTITY zotero.rtfScan.citationsPage.description "Kérem, tekintse át az alábbi felismert hivatkozásokat, hogy meggyőződjön arról, hogy a Zotero a helyesen választotta ki a megfelelő elemeket. A nem egyértelmű vagy mappa nélküli hivatkozásokat javítani kell, mielőtt rátér a következő lépésre."> <!ENTITY zotero.rtfScan.stylePage.label "Dokumentum formázása"> <!ENTITY zotero.rtfScan.formatPage.label "Hivatkozás formázása"> <!ENTITY zotero.rtfScan.formatPage.description "A Zotero feldolgozza és formázza az RTF fájlt. Kérem várjon."> @@ -285,8 +287,6 @@ <!ENTITY zotero.downloadManager.saveToLibrary.description "A csatolmányok nem menthetőek a jelenleg kiválasztott könyvtárba. Ez az elem a saját könyvtárába lesz mentve."> <!ENTITY zotero.downloadManager.noPDFTools.description "Ahhoz, hogy ezt a tulajdonságot használja, először telepítenie kell a PDF tools-t a Zotero beállítások keresőpaneljén."> -<!ENTITY zotero.attachLink.title "Attach Link to URI"> +<!ENTITY zotero.attachLink.title "Link csatolása az URI-hoz"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Cím:"> - - diff --git a/chrome/locale/hu-HU/zotero/zotero.properties b/chrome/locale/hu-HU/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Új general.delete=Törlés general.moreInformation=További információ general.seeForMoreInformation=A %S bővebb információkat tartalmaz. +general.open=Open %S general.enable=Bekapcsolás general.disable=Kikapcsolás general.remove=Eltávolítás @@ -66,7 +67,7 @@ punctuation.ellipsis=… install.quickStartGuide=Használati útmutató install.quickStartGuide.message.welcome=Üdvözli a Zotero! -install.quickStartGuide.message.view=View the Quick Start Guide to learn how to begin collecting, managing, citing, and sharing your research sources. +install.quickStartGuide.message.view=Tekintse át a Quick Start Guide-ot, hogy megismerje hogyan kell gyűjteni, menedzselni, hivatkozni és megosztani a kutatási forrásokat. install.quickStartGuide.message.thanks=Köszönjük, hogy telepítette a Zoterot. upgrade.failed.title=A frissítés sikertelen @@ -92,17 +93,17 @@ errorReport.invalidResponseRepository=Érvénytelen válasz a tárolótól errorReport.repoCannotBeContacted=Nem lehet kapcsolatba lépni a tárolóval -attachmentBasePath.selectDir=Choose Base Directory -attachmentBasePath.chooseNewPath.title=Confirm New Base Directory -attachmentBasePath.chooseNewPath.message=Linked file attachments below this directory will be saved using relative paths. +attachmentBasePath.selectDir=Base Directory kiválasztása +attachmentBasePath.chooseNewPath.title=Az új Base Directory megerősítése +attachmentBasePath.chooseNewPath.message=Ezen könyvtár alatti fájlcsatolmányok mentésre kerülnek a relatív útvonalak használatával. attachmentBasePath.chooseNewPath.existingAttachments.singular=One existing attachment was found within the new base directory. attachmentBasePath.chooseNewPath.existingAttachments.plural=%S existing attachments were found within the new base directory. -attachmentBasePath.chooseNewPath.button=Change Base Directory Setting +attachmentBasePath.chooseNewPath.button=A Base Directory beállításának megváltoztatása attachmentBasePath.clearBasePath.title=Visszavonás attachmentBasePath.clearBasePath.message=New linked file attachments will be saved using absolute paths. attachmentBasePath.clearBasePath.existingAttachments.singular=One existing attachment within the old base directory will be converted to use an absolute path. attachmentBasePath.clearBasePath.existingAttachments.plural=%S existing attachments within the old base directory will be converted to use absolute paths. -attachmentBasePath.clearBasePath.button=Clear Base Directory Setting +attachmentBasePath.clearBasePath.button=Base Directory beállításának törlése dataDir.notFound=A Zotero adatokat tartalmazó mappa nem található. dataDir.previousDir=Előző mappa: @@ -112,7 +113,7 @@ dataDir.selectedDirNonEmpty.title=A mappa nem üres dataDir.selectedDirNonEmpty.text=A kiválasztott mappa nem üres és nem tartalmaz Zotero adatokat.\n\nEnnek ellenére hozza létre a Zotero fájlokat? dataDir.selectedDirEmpty.title=A könyvtár üres dataDir.selectedDirEmpty.text=The directory you selected is empty. To move an existing Zotero data directory, you will need to manually move files from the existing data directory to the new location after %1$S has closed. -dataDir.selectedDirEmpty.useNewDir=Use the new directory? +dataDir.selectedDirEmpty.useNewDir=Az új könyvtárat használja? dataDir.moveFilesToNewLocation=Be sure to move files from your existing Zotero data directory to the new location before reopening %1$S. dataDir.incompatibleDbVersion.title=Inkompatibilis adatbázis dataDir.incompatibleDbVersion.text=The currently selected data directory is not compatible with Zotero Standalone, which can share a database only with Zotero for Firefox 2.1b3 or later.\n\nUpgrade to the latest version of Zotero for Firefox first or select a different data directory for use with Zotero Standalone. @@ -125,7 +126,7 @@ app.standalone=Zotero Standalone app.firefox=Zotero Firefoxhoz startupError=Hiba a Zotero indítása közben. -startupError.databaseInUse=Your Zotero database is currently in use. Only one instance of Zotero using the same database may be opened simultaneously at this time. +startupError.databaseInUse=A Zotero adatbázisa használatban van. Csakis egy Zotero lehet egyszerre megnyitva ugyanabban az időpontban. startupError.closeStandalone=Ha a Zotero Standalone fut, kérem zárja be és indítsa újra a Firefoxot. startupError.closeFirefox=Ha a Firefox a Zotero bővítménnyel fut, kérem zárja be és indítsa újra a Zotero Standalone-t. startupError.databaseCannotBeOpened=A Zotero adatbázist nem lehet megnyitni. @@ -148,7 +149,7 @@ date.relative.yearsAgo.multiple=%S évvel ezelőtt pane.collections.delete.title=Gyűjtemény törlése pane.collections.delete=A kijelölt gyűjtemény törlésének megerősítése? -pane.collections.delete.keepItems=Items within this collection will not be deleted. +pane.collections.delete.keepItems=Az alábbi gyűjtemény elemi nem törlődnek. pane.collections.deleteWithItems.title=Gyűjtemény és elemek törlése pane.collections.deleteWithItems=Biztos benne, hogy minden kijelölt gyűjtemény és elem áthelyezhető a Kukába? @@ -194,15 +195,18 @@ tagColorChooser.maxTags=Up to %S tags in each library can have colors assigned. pane.items.loading=Elemek listájának betöltése... pane.items.columnChooser.moreColumns=More Columns -pane.items.columnChooser.secondarySort=Secondary Sort (%S) -pane.items.attach.link.uri.unrecognized=Zotero did not recognize the URI you entered. Please check the address and try again. -pane.items.attach.link.uri.file=To attach a link to a file, please use “%S”. +pane.items.columnChooser.secondarySort=Másodlagos adatrendezés (%S) +pane.items.attach.link.uri.unrecognized=A Zotero nem ismerte fel a beírt URI-t. Kérem ellenőrizze a címet és próbálja újra. +pane.items.attach.link.uri.file=Ha linket szeretne csatolni egy fájlhoz, kérem használja a “%S”-t. pane.items.trash.title=Áthelyezés a Kukába pane.items.trash=A Kukába helyezés megerősítése? pane.items.trash.multiple=A Kukába helyezés megerősítése? pane.items.delete.title=Törlés pane.items.delete=A kijelölt elem törlésének megerősítése? pane.items.delete.multiple=A kijelölt elemek törlésének megerősítése? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Kijelölt elem törlése pane.items.menu.remove.multiple=Kijelölt elemek törlése pane.items.menu.moveToTrash=Elem mozgatása a Kukába… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Szülőelem létrehozása a kijelölt elem alapján pane.items.menu.createParent.multiple=Szülőelemek létrehozása a kijelölt elemek alapján pane.items.menu.renameAttachments=A fájl átnevezése a szülő metaadata alapján pane.items.menu.renameAttachments.multiple=A fájlok átnevezése a szülők metaadata alapján +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Levél (címzett: %S) pane.items.letter.twoParticipants=Levél (címzett: %S és %S) @@ -516,7 +521,7 @@ db.integrityCheck.reportInForums=Bejelentheti a problémát a Zotero Fórumain. zotero.preferences.update.updated=Frissítve zotero.preferences.update.upToDate=Nincs frissítés zotero.preferences.update.error=Hiba -zotero.preferences.launchNonNativeFiles=Open PDFs and other files within %S when possible +zotero.preferences.launchNonNativeFiles=A PDF-ek és egyéb fájlok megnyitása %S belül, amikor lehetséges zotero.preferences.openurl.resolversFound.zero=%S linkfeloldó található zotero.preferences.openurl.resolversFound.singular=%S linkfeloldó található zotero.preferences.openurl.resolversFound.plural=%S linkfeloldó található @@ -527,10 +532,10 @@ zotero.preferences.sync.purgeStorage.confirmButton=Fájlok tisztítása most zotero.preferences.sync.purgeStorage.cancelButton=Nincs tisztítás zotero.preferences.sync.reset.userInfoMissing=You must enter a username and password in the %S tab before using the reset options. zotero.preferences.sync.reset.restoreFromServer=All data in this copy of Zotero will be erased and replaced with data belonging to user '%S' on the Zotero server. -zotero.preferences.sync.reset.replaceLocalData=Replace Local Data -zotero.preferences.sync.reset.restartToComplete=Firefox must be restarted to complete the restore process. +zotero.preferences.sync.reset.replaceLocalData=A Local Data cseréje +zotero.preferences.sync.reset.restartToComplete=A helyreállítási művelet befejezéséhez újra kell indítani a Firefoxot. zotero.preferences.sync.reset.restoreToServer=All data belonging to user '%S' on the Zotero server will be erased and replaced with data from this copy of Zotero.\n\nDepending on the size of your library, there may be a delay before your data is available on the server. -zotero.preferences.sync.reset.replaceServerData=Replace Server Data +zotero.preferences.sync.reset.replaceServerData=A Server Data cseréje zotero.preferences.sync.reset.fileSyncHistory=All file sync history will be cleared.\n\nAny local attachment files that do not exist on the storage server will be uploaded on the next sync. zotero.preferences.search.rebuildIndex=Index újraépítése @@ -559,7 +564,7 @@ zotero.preferences.search.pdf.tryAgainOrViewManualInstructions=Próbálja meg k zotero.preferences.export.quickCopy.bibStyles=Bibliográfiai stíélusok zotero.preferences.export.quickCopy.exportFormats=Exportálási formátumok zotero.preferences.export.quickCopy.instructions=A Gyorsmásolás segítségével a kiválasztott hivatkozásokat a vágólapra lehet másolni a %S gyorsbillentyű lenyomásával. A hivatkozást egy tetszőleges weboldal szövegmezőjébe is be lehet másolni, ha a kijelölt hivatkozást a szövegmezőbe húzzuk. -zotero.preferences.export.quickCopy.citationInstructions=For bibliography styles, you can copy citations or footnotes by pressing %S or holding down Shift before dragging items. +zotero.preferences.export.quickCopy.citationInstructions=Bibliográfia-stílusokhoz, %S megnyomásával másolhat hivatkozásokat vagy lábjegyzeteket, vagy tartsa lenyomva a Shift-et az elemek áthúzáshoz. zotero.preferences.styles.addStyle=Stílus hozzáadása zotero.preferences.advanced.resetTranslatorsAndStyles=Fordítók és stílusok visszaállítása @@ -571,7 +576,7 @@ zotero.preferences.advanced.resetStyles.changesLost=Az új vagy módosított st zotero.preferences.advanced.debug.title=A hibakeresés eredménye elküldve zotero.preferences.advanced.debug.sent=A hibakeresés eredménye elküldve a Zotero szervernek\n\nA hibaazonosító D%S. -zotero.preferences.advanced.debug.error=An error occurred sending debug output. +zotero.preferences.advanced.debug.error=A hibajegy küldésekor hiba történt. dragAndDrop.existingFiles=Az alábbi fájlok már léteznek a célmappában, ezért nem kerültek bemásolásra. dragAndDrop.filesNotFound=Az alábbi fájlok nem találhatóak, ezért nem lehet őket másolni: @@ -720,19 +725,19 @@ integration.replace=Eltávolítja ezt a Zotero mezőt? integration.missingItem.single=A kiemelt hivatkozás már nem létezik a Zotero adatbázisában. Szeretné helyettesíteni egy másik elemmel? integration.missingItem.multiple=Item %1$S in the highlighted citation no longer exists in your Zotero database. Do you want to select a substitute item? integration.missingItem.description=Clicking "No" will delete the field codes for citations containing this item, preserving the citation text but deleting it from your bibliography. -integration.removeCodesWarning=Removing field codes will prevent Zotero from updating citations and bibliographies in this document. Are you sure you want to continue? +integration.removeCodesWarning=A mezőkódok eltávolítása megakadályozza, hogy a Zotero frissítse a hivatkozásokat és bibliográfiákat ebben a dokumentumban. Biztos benne, hogy folytatni akarja? integration.upgradeWarning=Your document must be permanently upgraded in order to work with Zotero 2.0b7 or later. It is recommended that you make a backup before proceeding. Are you sure you want to continue? integration.error.newerDocumentVersion=Your document was created with a newer version of Zotero (%1$S) than the currently installed version (%1$S). Please upgrade Zotero before editing this document. integration.corruptField=The Zotero field code corresponding to this citation, which tells Zotero which item in your library this citation represents, has been corrupted. Would you like to reselect the item? -integration.corruptField.description=Clicking "No" will delete the field codes for citations containing this item, preserving the citation text but potentially deleting it from your bibliography. +integration.corruptField.description=Ha a "Nem"-re kattint, törli azoknak a hivatkozásoknak a mezőkódjait, amelyek ezeket az elemeket tartalmazzák, a hivatkozott szöveg megmarad, de törlődhet a bibliográfiából. integration.corruptBibliography=A bibliográfiájának Zotero mezőkódja hibás. Szeretné ha a Zotero javítaná a mezőkódot és generálna egy új bibliográfiát? -integration.corruptBibliography.description=All items cited in the text will appear in the new bibliography, but modifications you made in the "Edit Bibliography" dialog will be lost. +integration.corruptBibliography.description=Az összes hivatkozott elem megjelenik az új bibliográfiában, de a "Bibliográfia szerkesztő" módosításai elvesznek. integration.citationChanged=Módosította ezt a hivatkozást, amióta a Zotero generálta. Megtartja a módosításokat és megakadályozza a jövőbeli frissítésüket? integration.citationChanged.description=Kattintson az „Igen” gombra, ha nem akarja, hogy a Zotero frissítse ezt a hivatkozást további hivatkozások hozzáadásakor, stílusváltáskor, vagy az elem módosításakor. Ha a „Nem”-re kattint elvesznek a módosításai. integration.citationChanged.edit=Módosította ezt a hivatkozást, amióta a Zotero generálta. A szerkesztéssel elvesznek a módosítások. Folytatja? styles.install.title=Stílus telepítése -styles.install.unexpectedError=An unexpected error occurred while installing "%1$S" +styles.install.unexpectedError=A "%1$S" telepítésekor váratlan hiba történt. styles.installStyle=A "%1$S" stílus importálása a %2$S-ból? styles.updateStyle=A "%1$S" stílus lecserélése %2$S-re a %3$S-ból? styles.installed=A "%1$S" stílus importálása sikerült. @@ -746,7 +751,7 @@ styles.abbreviations.title=Load Abbreviations styles.abbreviations.parseError=The abbreviations file "%1$S" is not valid JSON. styles.abbreviations.missingInfo=The abbreviations file "%1$S" does not specify a complete info block. -sync.sync=Sync +sync.sync=Szinkronizálás sync.cancel=Szinkronizáció elvetése sync.openSyncPreferences=Szinkronizációs beállítások megnyitása sync.resetGroupAndSync=Csoport és szinkronizáció visszaállítása @@ -762,9 +767,9 @@ sync.error.invalidLogin=Hibás felhasználónév vagy jelszó sync.error.invalidLogin.text=The Zotero sync server did not accept your username and password.\n\nPlease check that you have entered your zotero.org login information correctly in the Zotero sync preferences. sync.error.enterPassword=Adja meg a jelszót. sync.error.loginManagerInaccessible=A Zotero nem fér hozzá a bejelentkezési adatokhoz. -sync.error.checkMasterPassword=If you are using a master password in %S, make sure you have entered it successfully. +sync.error.checkMasterPassword=Ha mesterjelszót használ a %S-ban, győződjön meg róla, hogy sikeresen belépett-e. sync.error.corruptedLoginManager=This could also be due to a corrupted %1$S login manager database. To check, close %1$S, remove signons.sqlite from your %1$S profile directory, and re-enter your Zotero login information in the Sync pane of the Zotero preferences. -sync.error.loginManagerCorrupted1=Zotero cannot access your login information, possibly due to a corrupted %S login manager database. +sync.error.loginManagerCorrupted1=A Zotero nem tud csatlakozni a fiókadataival, valószínűleg a hibás %S belépő menedzser adatbázis miatt. sync.error.loginManagerCorrupted2=Close %1$S, remove signons.sqlite from your %2$S profile directory, and re-enter your Zotero login information in the Sync pane of the Zotero preferences. sync.error.syncInProgress=A szinkronizáció már folyamatban. sync.error.syncInProgress.wait=Várja meg, amíg a szinkronizáció befejeződik vagy indítsa újra a Firefoxot. @@ -775,25 +780,25 @@ sync.error.manualInterventionRequired=Az automatikus szinkronizáció hibát tal sync.error.clickSyncIcon=Kattintson a szinkronizációs ikonra a szinkronizáció kézi indításához. sync.error.invalidClock=The system clock is set to an invalid time. You will need to correct this to sync with the Zotero server. sync.error.sslConnectionError=SSL csatlakozási hiba -sync.error.checkConnection=Error connecting to server. Check your Internet connection. -sync.error.emptyResponseServer=Empty response from server. +sync.error.checkConnection=Hiba a szerverhez való csatlakozáskor. Ellenőrizze az internetkapcsolatot. +sync.error.emptyResponseServer=Üres válasz a szervertől. sync.error.invalidCharsFilename=The filename '%S' contains invalid characters.\n\nRename the file and try again. If you rename the file via the OS, you will need to relink it in Zotero. sync.lastSyncWithDifferentAccount=This Zotero database was last synced with a different zotero.org account ('%1$S') from the current one ('%2$S'). -sync.localDataWillBeCombined=If you continue, local Zotero data will be combined with data from the '%S' account stored on the server. +sync.localDataWillBeCombined=Amennyiben folytatja, a helyi Zotero adatok keverednek a szerveren tárolt '%S' fiókból származó adatokkal. sync.localGroupsWillBeRemoved1=Local groups, including any with changed items, will also be removed. sync.avoidCombiningData=To avoid combining or losing data, revert to the '%S' account or use the Reset options in the Sync pane of the Zotero preferences. sync.localGroupsWillBeRemoved2=If you continue, local groups, including any with changed items, will be removed and replaced with groups linked to the '%1$S' account.\n\nTo avoid losing local changes to groups, be sure you have synced with the '%2$S' account before syncing with the '%1$S' account. -sync.conflict.autoChange.alert=One or more locally deleted Zotero %S have been modified remotely since the last sync. -sync.conflict.autoChange.log=A Zotero %S has changed both locally and remotely since the last sync: -sync.conflict.remoteVersionsKept=The remote versions have been kept. -sync.conflict.remoteVersionKept=The remote version has been kept. -sync.conflict.localVersionsKept=The local versions have been kept. -sync.conflict.localVersionKept=The local version has been kept. -sync.conflict.recentVersionsKept=The most recent versions have been kept. -sync.conflict.recentVersionKept=The most recent version, '%S', has been kept. -sync.conflict.viewErrorConsole=View the %S Error Console for the full list of such changes. +sync.conflict.autoChange.alert=Egy vagy több helyileg törölt Zotero %S távolról módosítottak a legutóbbi szinkronizálás óta. +sync.conflict.autoChange.log=A Zotero %S helyileg és távolról is módosították a legutóbbi szinkronizálás óta. +sync.conflict.remoteVersionsKept=A távoli verziók megtartásra kerültek. +sync.conflict.remoteVersionKept=A távoli verzió megtartásra került. +sync.conflict.localVersionsKept=A helyi verziók megtartásra kerültek. +sync.conflict.localVersionKept=A helyi verzió megtartásra került. +sync.conflict.recentVersionsKept=A legújabb verziók megtartásra kerültek. +sync.conflict.recentVersionKept=A legújabb verziója a '%S' megtartásra került. +sync.conflict.viewErrorConsole=Nézze meg a %S Error Console a hasonló változások teljes listájáért. sync.conflict.localVersion=Helyi verzió: %S sync.conflict.remoteVersion=Távoli verzió: %S sync.conflict.deleted=[törölve] @@ -806,8 +811,8 @@ sync.conflict.tag.addedToLocal=Hozzá lett adva a következő helyi elemekhez: sync.conflict.fileChanged=Az alábbi fájl megváltozott több helyen. sync.conflict.itemChanged=Az alábbi elem megváltozott több helyen. -sync.conflict.chooseVersionToKeep=Choose the version you would like to keep, and then click %S. -sync.conflict.chooseThisVersion=Choose this version +sync.conflict.chooseVersionToKeep=Válassza ki a megtartani kívánt verziót, majd kattintson a %S gombra. +sync.conflict.chooseThisVersion=Válassza ezt a verziót sync.status.notYetSynced=Nincs szinkronizálva sync.status.lastSync=Utoljára szinkronizálva: @@ -820,7 +825,7 @@ sync.status.syncingFiles=Fájlok szinkronizálása sync.fulltext.upgradePrompt.title=Új: Teljes szöveg szinkronizálása sync.fulltext.upgradePrompt.text=Zotero can now sync the full-text content of files in your Zotero libraries with zotero.org and other linked devices, allowing you to easily search for your files wherever you are. The full-text content of your files will not be shared publicly. -sync.fulltext.upgradePrompt.changeLater=You can change this setting later from the Sync pane of the Zotero preferences. +sync.fulltext.upgradePrompt.changeLater=Később megváltoztathatja ezt a beállítást a Zotero beállítások Szinkronizáló paneljén. sync.fulltext.upgradePrompt.enable=Szinkronizálja a teljes szöveget sync.storage.mbRemaining=%SMB remaining @@ -883,7 +888,7 @@ sync.longTagFixer.deleteTag=Címke törlése proxies.multiSite=Multi-Site proxies.error=Érvénytelen Proxy beállítások proxies.error.scheme.noHTTP=Az érvényes proxy sémának "http://" vagy "https//" formával kell kezdődnie. -proxies.error.host.invalid=You must enter a full hostname for the site served by this proxy (e.g., jstor.org). +proxies.error.host.invalid=A kiszolgáló teljes nevét be kell írnia a proxy által kiszolgált oldalhoz (pl. jstor.org). proxies.error.scheme.noHost=A multi-site proxy scheme must contain the host variable (%h). proxies.error.scheme.noPath=A valid proxy scheme must contain either the path variable (%p) or the directory and filename variables (%d and %f). proxies.error.host.proxyExists=You have already defined another proxy for the host %1$S. @@ -901,7 +906,7 @@ recognizePDF.couldNotRead=Nem lehet szöveget olvasni a PDF-ből. recognizePDF.noMatches=Nincs egyező hivatkozás recognizePDF.fileNotFound=A fájl nem található recognizePDF.limit=A Google Scholar túlterhelt. Próbálkozzon később. -recognizePDF.error=An unexpected error occurred. +recognizePDF.error=Váratlan hiba történt. recognizePDF.stopped=Törölve recognizePDF.complete.label=A metaadat visszaállítás befejeződött recognizePDF.cancelled.label=A metaadat visszaállítás sikertelen @@ -917,8 +922,8 @@ rtfScan.saveTitle=Válasszon egy helyet, ahová menteni szeretné a formázott f rtfScan.scannedFileSuffix=(Vizsgálat) -file.accessError.theFile=The file '%S' -file.accessError.aFile=A file +file.accessError.theFile=A '%S' fájl +file.accessError.aFile=Egy fájl file.accessError.cannotBe=nem lehet file.accessError.created=létrehozni file.accessError.updated=frissítve @@ -930,7 +935,7 @@ file.accessError.showParentDir=Szülőkönyvtár mutatása lookup.failure.title=A keresés nem sikerült. lookup.failure.description=Zotero could not find a record for the specified identifier. Please verify the identifier and try again. -lookup.failureToID.description=Zotero could not find any identifiers in your input. Please verify your input and try again. +lookup.failureToID.description=A Zotero nem talált azonosítót az Ön bevitelénél. Kérem ellenőrizze a bevitelt és próbálja újra. locate.online.label=Online megtekintés locate.online.tooltip=Az elem elérése online @@ -956,15 +961,24 @@ standalone.addonInstallationFailed.body=The add-on "%S" could not be installed. standalone.rootWarning=You appear to be running Zotero Standalone as root. This is insecure and may prevent Zotero from functioning when launched from your user account.\n\nIf you wish to install an automatic update, modify the Zotero program directory to be writeable by your user account. standalone.rootWarning.exit=Kilépés standalone.rootWarning.continue=Folytatás -standalone.updateMessage=A recommended update is available, but you do not have permission to install it. To update automatically, modify the Zotero program directory to be writeable by your user account. +standalone.updateMessage=Elérhető egy ajánlott frissítés, de nincs jogosultsága a telepítéséhez. Az automatikus frissítéshez módosítsa a Zotero programkönyvtárát, hogy írható legyen az Ön felhasználói fiókjából is. connector.error.title=Zotero Connector hiba connector.standaloneOpen=Your database cannot be accessed because Zotero Standalone is currently open. Please view your items in Zotero Standalone. -connector.loadInProgress=Zotero Standalone was launched but is not accessible. If you experienced an error opening Zotero Standalone, restart Firefox. +connector.loadInProgress=A Zotero Standalone-t elindult, de nem elérhető. Ha hibát tapasztalt a Zotero Standalone indításakor, indítsa újra a Firefoxot. firstRunGuidance.saveIcon=Zotero has found a reference on this page. Click this icon in the address bar to save the reference to your Zotero library. firstRunGuidance.authorMenu=Zotero lets you specify editors and translators, too. You can turn an author into an editor or translator by selecting from this menu. firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Ctrl-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=A Zotero megnyitásához kattintásához kattintson ide, vagy használja a %S billentyűparancsot. -firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. +firstRunGuidance.toolbarButton.upgrade=A Zotero ikon mostantól a Firefox eszköztárán található. A Zotero megnyitásához kattintson az ikonra, vagy használja a %S gyorsbillentyűt. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/id-ID/zotero/csledit.dtd b/chrome/locale/id-ID/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/id-ID/zotero/cslpreview.dtd b/chrome/locale/id-ID/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/id-ID/zotero/preferences.dtd b/chrome/locale/id-ID/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Jendela peramban"> <!ENTITY zotero.preferences.showIn.separateTab "Tab terpisah"> <!ENTITY zotero.preferences.showIn.appTab "Tab App"> -<!ENTITY zotero.preferences.statusBarIcon "Logo bar status:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Tidak ada"> <!ENTITY zotero.preferences.fontSize "Ukuran font:"> <!ENTITY zotero.preferences.fontSize.small "Kecil"> <!ENTITY zotero.preferences.fontSize.medium "Sedang"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Dapatkan gaya tambahan"> -<!ENTITY zotero.preferences.prefpane.keys "Shortcut"> - <!ENTITY zotero.preferences.keys.openZotero "Buka/Tutup Jendela Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Hidupkan/Matikan Mode Layar Penuh"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Lebih Lanjut"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Temukan"> <!ENTITY zotero.preferences.locate.locateEngineManager "Pengelola Mesin Pencarian Artikel"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Kirimkan ke Server Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Buka about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Buka editor CSL"> -<!ENTITY zotero.preferences.openCSLPreview "Buka preview CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/id-ID/zotero/zotero.dtd b/chrome/locale/id-ID/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Hapus"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transformasi Teks"> <!ENTITY zotero.item.textTransform.titlecase "Title Case"> <!ENTITY zotero.item.textTransform.sentencecase "Sentence case"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Catatan Baru"> <!ENTITY zotero.toolbar.note.standalone "Catatan Mandiri Baru"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/id-ID/zotero/zotero.properties b/chrome/locale/id-ID/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Buat general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=Lihat %S untuk informasi lebih lanjut. +general.open=Open %S general.enable=Bolehkan general.disable=Tidakbolehkan general.remove=Buang @@ -203,6 +204,9 @@ pane.items.trash.multiple=Apakah Anda yakin ingin memindahkan item-item terpilih pane.items.delete.title=Hapus pane.items.delete=Apakah Anda yakin ingin menghapus item terpilih? pane.items.delete.multiple=Apakah Anda yakin ingin menghapus item-item terpilih? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Buang Item Terpilih pane.items.menu.remove.multiple=Buang Item-item Terpilih pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Buat Item Induk dari Item Terpilih pane.items.menu.createParent.multiple=Buat Item-item Induk dari Item-item Terpilih pane.items.menu.renameAttachments=Namai Ulang Berkas dari Metadata Induk pane.items.menu.renameAttachments.multiple=Namai Ulang Berkas-berkas dari Metadata Induk +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Surat kepada %S pane.items.letter.twoParticipants=Surat kepada %S dan %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Ketikkan judul atau nama penulis untuk mencari sebu firstRunGuidance.quickFormatMac=Ketikkan judul atau nama penulis untuk mencari sebuah referensi.\n\nSetelah Anda melakukannya, klik pada gelembung atau tekan Cmd-\u2193 untuk menambahkan nomor halaman, prefiks, atau sufiks. Anda juga dapat memasukkan nomor halaman bersamaan dengan istilah pencarian untuk menambahkannya secara langsung.\n\nAnda dapat mengedit sitasi secara langsung di dalam dokumn pengolah kata. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/is-IS/zotero/csledit.dtd b/chrome/locale/is-IS/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/is-IS/zotero/cslpreview.dtd b/chrome/locale/is-IS/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/is-IS/zotero/preferences.dtd b/chrome/locale/is-IS/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Nýjum vafraglugga"> <!ENTITY zotero.preferences.showIn.separateTab "Nýjum flipa"> <!ENTITY zotero.preferences.showIn.appTab "Flipa í smáforriti"> -<!ENTITY zotero.preferences.statusBarIcon "Teikn í stöðuglugga:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Engu"> <!ENTITY zotero.preferences.fontSize "Stærð leturs:"> <!ENTITY zotero.preferences.fontSize.small "Smátt"> <!ENTITY zotero.preferences.fontSize.medium "Meðalstórt"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "Tilvísunarmál - CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Ná í viðbótar leturstíla..."> -<!ENTITY zotero.preferences.prefpane.keys "Flýtihnappar"> - <!ENTITY zotero.preferences.keys.openZotero "Opna/Loka Zotero svæði"> <!ENTITY zotero.preferences.keys.saveToZotero "Vista í Zotero (tákn birt í vefslóðareit)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Víxla úr og í Heilskjáarham"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Ítarlegt"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Skrár og möppur"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Staðsetja"> <!ENTITY zotero.preferences.locate.locateEngineManager "Stýring á greinaleitarvél"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Senda til Zotero netþjóns"> <!ENTITY zotero.preferences.openAboutConfig "Opna um: stillingar"> -<!ENTITY zotero.preferences.openCSLEdit "Opna CSL ritil"> -<!ENTITY zotero.preferences.openCSLPreview "Opna CSL forskoðun"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Opna um: minni"> diff --git a/chrome/locale/is-IS/zotero/zotero.dtd b/chrome/locale/is-IS/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Eyða"> <!ENTITY zotero.general.ok "Í lagi"> <!ENTITY zotero.general.cancel "Hætta við"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero villutilkynning"> <!ENTITY zotero.errorReport.unrelatedMessages "Hér gætu einnig verið skilaboð ótengd Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Varpa texta"> <!ENTITY zotero.item.textTransform.titlecase "Stafagerð titils"> <!ENTITY zotero.item.textTransform.sentencecase "Stafagerð setninga"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Skipta á nöfnum/eftirnöfnum"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Ný athugasemd"> <!ENTITY zotero.toolbar.note.standalone "Ný sjálfstæð athugasemd"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/is-IS/zotero/zotero.properties b/chrome/locale/is-IS/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Skapa general.delete=Eyða general.moreInformation=Frekari upplýsingar general.seeForMoreInformation=Sjá %S til frekari upplýsinga +general.open=Open %S general.enable=Virkja general.disable=Lama general.remove=Fjarlægja @@ -203,6 +204,9 @@ pane.items.trash.multiple=Ertu viss um að þú viljir færa valdar færslur í pane.items.delete.title=Eyða pane.items.delete=Viltu örugglega eyða valdri færslu? pane.items.delete.multiple=Viltu örugglega eyða völdum færslum? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Eyða valdri færslu pane.items.menu.remove.multiple=Eyða völdum færslum pane.items.menu.moveToTrash=Henda færslu í ruslatunnu... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Búa til móðurfærslu pane.items.menu.createParent.multiple=Búa til móðurfærslur pane.items.menu.renameAttachments=Endurnefna skrá í samræmi við lýsigögn sem fylgja skránni pane.items.menu.renameAttachments.multiple=Endurnefna skrár í samræmi við lýsigögn sem fylgja skránum +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Bréf til %S pane.items.letter.twoParticipants=Bréf til %S og %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Sláðu inn titil eða höfund til að leita að he firstRunGuidance.quickFormatMac=Sláðu inn titil eða höfund til að leita að heimild.\n\nEftir val þitt, ýttu þá á belginn eða á Ctrl-↓ til að bæta við blaðsíðunúmerum, forskeytum eða viðskeytum. Þú getur einnig tilgreint síðunúmer í leitinni til að bæta því strax við.\n\nÞú getur breytt tilvitnunum þar sem þær standa í ritvinnsluskjalinu. firstRunGuidance.toolbarButton.new=Ýttu hér til að opna Zotero, eða notaðu %S flýtitakka. firstRunGuidance.toolbarButton.upgrade=Zotero táknið mun nú sjást á Firefox tólaslánni. Ýttu á táknið til að opna Zotero eða notaðu %S flýtitakka. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/it-IT/zotero/csledit.dtd b/chrome/locale/it-IT/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/it-IT/zotero/cslpreview.dtd b/chrome/locale/it-IT/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/it-IT/zotero/preferences.dtd b/chrome/locale/it-IT/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "finestra nella parte inferiore del browser"> <!ENTITY zotero.preferences.showIn.separateTab "tab separato"> <!ENTITY zotero.preferences.showIn.appTab "tab applicazione"> -<!ENTITY zotero.preferences.statusBarIcon "Icona nella barra di stato:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Nessuna"> <!ENTITY zotero.preferences.fontSize "Dimensione testo:"> <!ENTITY zotero.preferences.fontSize.small "piccolo"> <!ENTITY zotero.preferences.fontSize.medium "medio"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Scarica ulteriori stili..."> -<!ENTITY zotero.preferences.prefpane.keys "Scorciatoie da tastiera"> - <!ENTITY zotero.preferences.keys.openZotero "Apri o chiudi pannello di Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Salva in Zotero (icona nella barra degli indirizzi)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Attiva o disattiva schermo intero"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Avanzate"> <!ENTITY zotero.preferences.advanced.filesAndFolders "File e cartelle"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Trova"> <!ENTITY zotero.preferences.locate.locateEngineManager "Gestore dei motori di ricerca di articoli"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Invia al server Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Apri about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Apri l'editor CSL"> -<!ENTITY zotero.preferences.openCSLPreview "Apri l'anteprima CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Apri about:memory"> diff --git a/chrome/locale/it-IT/zotero/zotero.dtd b/chrome/locale/it-IT/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Elimina"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Annulla"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Resoconto di errore Zotero"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Modifica testo"> <!ENTITY zotero.item.textTransform.titlecase "Maiuscolo"> <!ENTITY zotero.item.textTransform.sentencecase "Maiuscole"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Inverti nomi e cognomi"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Nuovo appunto"> <!ENTITY zotero.toolbar.note.standalone "Nuova nota"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/it-IT/zotero/zotero.properties b/chrome/locale/it-IT/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Crea general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=Vedi %S per maggiori informazioni +general.open=Open %S general.enable=Attiva general.disable=Disattiva general.remove=Rimuovi @@ -203,6 +204,9 @@ pane.items.trash.multiple=Spostare gli elementi selezionati nel Cestino? pane.items.delete.title=Eliminazione elemento pane.items.delete=Eliminare l'elemento selezionato? pane.items.delete.multiple=Eliminare gli elementi selezionati? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Rimuovi l'elemento selezionato pane.items.menu.remove.multiple=Rimuovi gli elementi selezionati pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Crea elemento genitore dall'elemento selezionato pane.items.menu.createParent.multiple=Crea elementi genitore dagli elementi selezionati pane.items.menu.renameAttachments=Rinominare il file in base ai metadati del genitore pane.items.menu.renameAttachments.multiple=Rinominare i file in base ai metadati del genitore +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Lettera a %S pane.items.letter.twoParticipants=Lettera a %S e %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Digitare un titolo o un autore per cercare un rifer firstRunGuidance.quickFormatMac=Digitare un titolo o un autore per cercare un riferimento bibliografico.\n\nDopo aver effettuato una selezione cliccare la bolla o premere Cmd-\u2193 per aggiungere i numeri di pagina, prefissi o suffissi. È possibile includere un numero di pagina nei termini di ricerca per aggiungerlo direttamente.\n\nÈ possibile modificare le citazioni direttamente nel documento dell'elaboratore di testi. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/ja-JP/zotero/csledit.dtd b/chrome/locale/ja-JP/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/ja-JP/zotero/cslpreview.dtd b/chrome/locale/ja-JP/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/ja-JP/zotero/preferences.dtd b/chrome/locale/ja-JP/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "ブラウザ画面下"> <!ENTITY zotero.preferences.showIn.separateTab "新しいタブ"> <!ENTITY zotero.preferences.showIn.appTab "アプリタブ"> -<!ENTITY zotero.preferences.statusBarIcon "ステイタスバーのアイコン:"> -<!ENTITY zotero.preferences.statusBarIcon.none "なし"> <!ENTITY zotero.preferences.fontSize "文字サイズ:"> <!ENTITY zotero.preferences.fontSize.small "小"> <!ENTITY zotero.preferences.fontSize.medium "中"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "他の引用スタイルを入手する..."> -<!ENTITY zotero.preferences.prefpane.keys "ショートカットキー"> - <!ENTITY zotero.preferences.keys.openZotero "Zotero 画面を開く/閉じる"> <!ENTITY zotero.preferences.keys.saveToZotero "Zotero に保存する (アドレスバーのアイコン)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "全画面表示の切り替え"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "詳細"> <!ENTITY zotero.preferences.advanced.filesAndFolders "ファイルとフォルダ"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "所在確認"> <!ENTITY zotero.preferences.locate.locateEngineManager "所在確認エンジンの管理"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Zotero サーバに報告する"> <!ENTITY zotero.preferences.openAboutConfig "about:config を開く"> -<!ENTITY zotero.preferences.openCSLEdit "CSL エディタを開く"> -<!ENTITY zotero.preferences.openCSLPreview "CSL プレビューを開く"> +<!ENTITY zotero.preferences.openCSLEdit "スタイルエディタを開く"> +<!ENTITY zotero.preferences.openCSLPreview "スタイルのプレビューを開く"> <!ENTITY zotero.preferences.openAboutMemory "about:memory 画面を開く"> diff --git a/chrome/locale/ja-JP/zotero/zotero.dtd b/chrome/locale/ja-JP/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "削除"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "キャンセル"> +<!ENTITY zotero.general.refresh "再読み込み"> +<!ENTITY zotero.general.saveAs "名前をつけて保存..."> <!ENTITY zotero.errorReport.title "Zotero エラーレポート"> <!ENTITY zotero.errorReport.unrelatedMessages "エラーの記録にはZotero に無関係のメッセージが含まれている恐れがあります。"> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "テキストの大文字・小文字を指定する"> <!ENTITY zotero.item.textTransform.titlecase "各単語の先頭を大文字に"> <!ENTITY zotero.item.textTransform.sentencecase "各文の先頭を大文字に"> -<!ENTITY zotero.item.creatorTransform.nameSwap "姓と名の順を入れ替える"> +<!ENTITY zotero.item.creatorTransform.nameSwap "姓と名を置き替える"> <!ENTITY zotero.toolbar.newNote "新しいメモ"> <!ENTITY zotero.toolbar.note.standalone "新しく独立メモを作成"> @@ -285,8 +287,6 @@ <!ENTITY zotero.downloadManager.saveToLibrary.description "添付ファイルは現在選択中のライブラリに保存することができません。その代わり、このアイテムはあなたのライブラリに保存されます。"> <!ENTITY zotero.downloadManager.noPDFTools.description "この機能を利用するには、まず Zotero 環境設定の検索ペインで PDF ツールをインストールする必要があります。"> -<!ENTITY zotero.attachLink.title "Attach Link to URI"> -<!ENTITY zotero.attachLink.label.link "Link:"> -<!ENTITY zotero.attachLink.label.title "Title:"> - - +<!ENTITY zotero.attachLink.title "URIへのリンクを添付する"> +<!ENTITY zotero.attachLink.label.link "リンク:"> +<!ENTITY zotero.attachLink.label.title "題:"> diff --git a/chrome/locale/ja-JP/zotero/zotero.properties b/chrome/locale/ja-JP/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=作成 general.delete=削除する general.moreInformation=さらに詳しく general.seeForMoreInformation=さらに詳しくは、%S を調べてみてください。 +general.open=Open %S general.enable=有効化 general.disable=無効化 general.remove=取り除く @@ -195,14 +196,17 @@ tagColorChooser.maxTags=各ライブラリ内につき、 最大 %S 個のタグ pane.items.loading=アイテムリストを読み込んでいます... pane.items.columnChooser.moreColumns=列を増やす pane.items.columnChooser.secondarySort=二番目の並び順 (%S) -pane.items.attach.link.uri.unrecognized=Zotero did not recognize the URI you entered. Please check the address and try again. -pane.items.attach.link.uri.file=To attach a link to a file, please use “%S”. +pane.items.attach.link.uri.unrecognized=Zoteroはあなたが入力したURIを認識できませんでした。アドレスを確認してもう一度お試しください。 +pane.items.attach.link.uri.file=ファイルへのリンクを添付するには “%S” をご使用ください。 pane.items.trash.title=ゴミ箱に移動する pane.items.trash=選択されたアイテムをゴミ箱に移動してよろしいですか? pane.items.trash.multiple=選択されたアイテムをゴミ箱に移動してよろしいですか? pane.items.delete.title=削除 pane.items.delete=選択されたアイテムを削除してよろしいですか? pane.items.delete.multiple=選択されたアイテムを削除してよろしいですか? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=選択されたアイテムをコレクションから除外する pane.items.menu.remove.multiple=選択されたアイテムをコレクションから除外する pane.items.menu.moveToTrash=アイテムをゴミ箱に入れる... @@ -221,6 +225,7 @@ pane.items.menu.createParent=選択されたアイテムから親アイテムを pane.items.menu.createParent.multiple=選択されたアイテムから親アイテムを作成する pane.items.menu.renameAttachments=親メータデータからファイル名を変更する pane.items.menu.renameAttachments.multiple=親メータデータからファイル名を変更する +pane.items.showItemInLibrary=ライブラリの中のアイテムを表示する pane.items.letter.oneParticipant=%S への手紙 pane.items.letter.twoParticipants=%S and %S への手紙 @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=題名か著者名を入力して文献を探して firstRunGuidance.quickFormatMac=題名か著者名を入力して文献を探してください。\n\n選択が完了したら、必要に応じて、泡をクリックするか Cmd-\u2193を押して、ページ番号、接頭辞、接尾辞を追加してください。検索語句にページ番号を含めれば、ページ番号を直接追加することもできます。\n\n出典表記はワードプロセッサ文書中で直接編集することが可能です。 firstRunGuidance.toolbarButton.new=ここをクリックしてZoteroを開くか、%S のキーボードショートカットを使用してください firstRunGuidance.toolbarButton.upgrade=Zotero アイコンは Firefox ツールバーに表示されます。アイコンをクリックしてZoteroを起動するか、%S のキーボードショートカットを使用してください + +styles.bibliography=参考文献目録 +styles.editor.save=引用スタイルを保存する +styles.editor.warning.noItems=Zoteroのアイテムが選択されていません。 +styles.editor.warning.parseError=スタイルの文法エラー: +styles.editor.warning.renderError=出典表記と参考文献目録の生成時にエラー +styles.editor.output.individualCitations=個別の出典表記 +styles.editor.output.singleCitation=単一の出典表記 (with position "first") +styles.preview.instructions=一つ以上のアイテムをZotero内で選択し、"再読み込み"ボタンをクリックして、それらのアイテムがインストール済みのCSL引用スタイルによってどのように表示されるかを御覧ください。 diff --git a/chrome/locale/km/zotero/csledit.dtd b/chrome/locale/km/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/km/zotero/cslpreview.dtd b/chrome/locale/km/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/km/zotero/preferences.dtd b/chrome/locale/km/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "ផ្ទាំងកម្មវិធីរុករក"> <!ENTITY zotero.preferences.showIn.separateTab "ផ្ទាំងកម្មវិធីដោយឡែក"> <!ENTITY zotero.preferences.showIn.appTab "ផ្ទាំងបន្ទាត់ថេប"> -<!ENTITY zotero.preferences.statusBarIcon "និម្មិតសញ្ញារបារស្ថានភាព:"> -<!ENTITY zotero.preferences.statusBarIcon.none "គ្មាន"> <!ENTITY zotero.preferences.fontSize "ទំហំអក្សរៈ"> <!ENTITY zotero.preferences.fontSize.small "តូច"> <!ENTITY zotero.preferences.fontSize.medium "មធ្យម"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "ស៊ីអេសអិល"> <!ENTITY zotero.preferences.export.getAdditionalStyles "បន្ថែមរចនាបថថ្មី..."> -<!ENTITY zotero.preferences.prefpane.keys "ផ្លូវកាត់"> - <!ENTITY zotero.preferences.keys.openZotero "បើក/បិទផ្ទាំងហ្ស៊ូតេរ៉ូ"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "បើកពេញអេក្រង់"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "ជាន់ខ្ពស់"> <!ENTITY zotero.preferences.advanced.filesAndFolders "ឯកសារនិងថតឯកសារ"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "ទីតាំងឯកសារ"> <!ENTITY zotero.preferences.locate.locateEngineManager "ម៉ាស៊ីនគ្រប់គ្រងស្វែងរកអត្ថបទ"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "ដាក់ជូនម៉ាស៊ីនបម្រើហ្ស៊ូតេរ៉ូ"> <!ENTITY zotero.preferences.openAboutConfig "បើកអំពី:config"> -<!ENTITY zotero.preferences.openCSLEdit "បើកកំណែតម្រូវស៊ីអេសអិល"> -<!ENTITY zotero.preferences.openCSLPreview "បើកពិនិត្យមើលស៊ីអេសអិល"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/km/zotero/zotero.dtd b/chrome/locale/km/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "លុបចោល"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "បំលែងអត្ថបទ"> <!ENTITY zotero.item.textTransform.titlecase "ចំណងជើងអក្សរធំ"> <!ENTITY zotero.item.textTransform.sentencecase "ចំណងជើងអក្សរតូច"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "កំណត់ចំណាំថ្មី"> <!ENTITY zotero.toolbar.note.standalone "កំណត់ត្រាទោលថ្មី"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/km/zotero/zotero.properties b/chrome/locale/km/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=បង្កើត general.delete=Delete general.moreInformation=ព័ត៌មានបន្ថែម general.seeForMoreInformation=សូមមើល %S សម្រាប់ព័ត៌មានបន្ថែម។ +general.open=Open %S general.enable=អាចដំណើរការ general.disable=មិនអាចដំណើរការ general.remove=លុបចោល @@ -203,6 +204,9 @@ pane.items.trash.multiple=តើអ្នកចង់លុបឯកសារដ pane.items.delete.title=លុបចោល pane.items.delete=តើអ្នកចង់លុបឯកសារដែលបានជ្រើសរើសចោល? pane.items.delete.multiple=តើអ្នកចង់លុបឯកសារដែលបានជ្រើសរើសចោល? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=លុបចោលឯកសារដែលបានជ្រើសរើស pane.items.menu.remove.multiple=លុបចោលឯកសារដែលបានជ្រើសរើស pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=បង្កើតបញ្ជីមេពីឯក pane.items.menu.createParent.multiple=បង្កើតបញ្ជីមេពីឯកសារដែលបានជ្រើសរើស pane.items.menu.renameAttachments=ប្តូរឈ្មោះឯកសារពីទិន្នន័យមេតាមេ pane.items.menu.renameAttachments.multiple=ប្តូរឈ្មោះឯកសារពីទិន្នន័យមេតាមេ +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=សំបុត្រទៅកាន់ %S pane.items.letter.twoParticipants=សំបុត្រទៅកាន់ %S និង %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=សូមវាយចំណងជើង ឬ អ្ firstRunGuidance.quickFormatMac=សូមវាយចំណងជើង ឬ អ្នកនិពន្ធសម្រាប់ស្រាវជ្រាវរកឯកសារយោង។​ បន្ទាប់​ពីអ្នកបានជ្រើសរើស សូមចុចរូបសញ្ញា ឬ ចុច Cmd-\u2193 ដើម្បីបន្ថែម​លេខ​​ទំព័រ បុព្វបទ ឬ បច្ច័យ។ អ្នក​ក៏​អាចបន្ថែមលេខទំព័រដោយផ្ទាល់ទៅនឹងកិច្ចការ​ស្រាវជ្រាវ។ អ្នកអាចកែតម្រូវអគត​ដ្ឋាន​បានដោយផ្ទាល់នៅក្នុងឯកសារវើដ។ firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/ko-KR/zotero/csledit.dtd b/chrome/locale/ko-KR/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/ko-KR/zotero/cslpreview.dtd b/chrome/locale/ko-KR/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/ko-KR/zotero/preferences.dtd b/chrome/locale/ko-KR/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "브라우저 창"> <!ENTITY zotero.preferences.showIn.separateTab "분리 탭"> <!ENTITY zotero.preferences.showIn.appTab "어플리케이션 탭"> -<!ENTITY zotero.preferences.statusBarIcon "상태 표시줄 아이콘:"> -<!ENTITY zotero.preferences.statusBarIcon.none "없음"> <!ENTITY zotero.preferences.fontSize "글꼴 크기:"> <!ENTITY zotero.preferences.fontSize.small "작게"> <!ENTITY zotero.preferences.fontSize.medium "중간"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "추가 스타일 받기..."> -<!ENTITY zotero.preferences.prefpane.keys "단축키"> - <!ENTITY zotero.preferences.keys.openZotero "Zotero 패널 열기/닫기"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "전체화면 끄기/켜기"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "고급"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "위치"> <!ENTITY zotero.preferences.locate.locateEngineManager "Article 검색 엔진 메니저"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Zotero 서버에 제출"> <!ENTITY zotero.preferences.openAboutConfig "config 열기"> -<!ENTITY zotero.preferences.openCSLEdit "CSL 에디터 열기"> -<!ENTITY zotero.preferences.openCSLPreview "CSL 미리보기 열기"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/ko-KR/zotero/zotero.dtd b/chrome/locale/ko-KR/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "삭제"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "글자 변형"> <!ENTITY zotero.item.textTransform.titlecase "글차 첫머리는 대문자"> <!ENTITY zotero.item.textTransform.sentencecase "문장 첫머리는 대문자"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "새 노트"> <!ENTITY zotero.toolbar.note.standalone "새로운 독립 노트"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/ko-KR/zotero/zotero.properties b/chrome/locale/ko-KR/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=생성 general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=자세한 것은 $S(을)를 참조하세요. +general.open=Open %S general.enable=사용 general.disable=사용안함 general.remove=제거 @@ -203,6 +204,9 @@ pane.items.trash.multiple=선택한 항목들을 휴지통으로 보내길 원 pane.items.delete.title=삭제 pane.items.delete=선택된 항목을 삭제하길 원하는게 맞습니까? pane.items.delete.multiple=선택된 수집품들을 삭제하길 원하는게 맞습니까? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=선택된 항목 삭제 pane.items.menu.remove.multiple=선택된 항목 삭제 pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=선택된 항목으로부터 부모 항목 생성 pane.items.menu.createParent.multiple=선택된 항목들로부터 부모 항목들 생성 pane.items.menu.renameAttachments=부모 메타데이터로부터 파일명 변경 pane.items.menu.renameAttachments.multiple=부모 메타데이터로부터 파일명들 변경 +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=수신: %S pane.items.letter.twoParticipants=수신: %S, %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-\u2193 to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/lt-LT/zotero/csledit.dtd b/chrome/locale/lt-LT/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/lt-LT/zotero/cslpreview.dtd b/chrome/locale/lt-LT/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/lt-LT/zotero/preferences.dtd b/chrome/locale/lt-LT/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Naršyklės skydelyje"> <!ENTITY zotero.preferences.showIn.separateTab "Atskiroje kortelėje"> <!ENTITY zotero.preferences.showIn.appTab "Programos kortelėje"> -<!ENTITY zotero.preferences.statusBarIcon "Ženkliukas būsenos juostoje:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Jokio"> <!ENTITY zotero.preferences.fontSize "Šrifto dydis:"> <!ENTITY zotero.preferences.fontSize.small "Mažas"> <!ENTITY zotero.preferences.fontSize.medium "Vidutinis"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Parsisiųsti papildomų stilių..."> -<!ENTITY zotero.preferences.prefpane.keys "Spartieji klavišai"> - <!ENTITY zotero.preferences.keys.openZotero "Atverti/užverti Zotero skydelį"> <!ENTITY zotero.preferences.keys.saveToZotero "Įrašyti į Zotero (ženkliukas adreso juostoje)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Įjungti/išungti viso ekrano veikseną"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Sudėtingiau"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Failai ir katalogai"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Rasti vietą"> <!ENTITY zotero.preferences.locate.locateEngineManager "Straipsnių paieškos variklių tvarkytuvė"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Išsiųsti į Zotero serverį"> <!ENTITY zotero.preferences.openAboutConfig "Atverti about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Atverti CSL rengyklę"> -<!ENTITY zotero.preferences.openCSLPreview "Atverti CSL žiūryklę"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Atverti about:memory"> diff --git a/chrome/locale/lt-LT/zotero/zotero.dtd b/chrome/locale/lt-LT/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Šalinti"> <!ENTITY zotero.general.ok "Gerai"> <!ENTITY zotero.general.cancel "Atšaukti"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Pranešimas apie klaidą Zotero programoje"> <!ENTITY zotero.errorReport.unrelatedMessages "Čia gali būti pranešimų, visai nesusijusių su Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Teksto trasformavimas"> <!ENTITY zotero.item.textTransform.titlecase "Antraštės raidžių lygis"> <!ENTITY zotero.item.textTransform.sentencecase "Sakinio pavidalu"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Sukeisti vardus ir pavardes"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Nauja pastaba"> <!ENTITY zotero.toolbar.note.standalone "Nauja nesusieta pastaba"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/lt-LT/zotero/zotero.properties b/chrome/locale/lt-LT/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Sukurti general.delete=Šalinti general.moreInformation=Daugiau informacijos general.seeForMoreInformation=Daugiau informacijos %S +general.open=Open %S general.enable=Įgalinti general.disable=Uždrausti general.remove=Pašalinti @@ -203,6 +204,9 @@ pane.items.trash.multiple=Tikrai norite pasirinktus įrašus perkelti į šiukš pane.items.delete.title=Šalinti pane.items.delete=Tikrai norite pašalinti pasirinktą įrašą? pane.items.delete.multiple=Tikrai norite pašalinti pasirinktus įrašus? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Pašalinti įrašą iš rinkinio pane.items.menu.remove.multiple=Pašalinti įrašus iš rinkinio pane.items.menu.moveToTrash=Įrašą perkelti į šiukšlinę... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Sukurti aukštesnio lygio įrašą pane.items.menu.createParent.multiple=Sukurti aukštesnio lygio įrašus pane.items.menu.renameAttachments=Failą pervadinti pagal meta duomenis pane.items.menu.renameAttachments.multiple=Failus pervadinti pagal meta duomenis +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Laiškas, kurį gavo %S pane.items.letter.twoParticipants=Laiškas, kurį gavo %S ir %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Įveskite ieškomą pavadinimą arba autorių.\n\nP firstRunGuidance.quickFormatMac=Įveskite ieškomą pavadinimą arba autorių.\n\nPasirinkę norimą, paspauskite ties skrituliuku arba nuspauskite Cmd+↓ – tada galėsite nurodyti puslapius, priešdėlius, priesagas. Paieškoje prie ieškomų raktažodžių galite nurodyti puslapius.\n\nCitavimą galite redaguoti tekstų rengyklėje tiesiogiai. firstRunGuidance.toolbarButton.new=Čia spragtelėję arba nuspaudę %S klavišus, atversite Zotero. firstRunGuidance.toolbarButton.upgrade=Nuo šiol „Zotero“ ženkliuką rasite Firefox įrankinėje. „Zotero“ atversite spustelėję ženkliuką arba nuspaudę %S klavišus. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/mn-MN/zotero/csledit.dtd b/chrome/locale/mn-MN/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/mn-MN/zotero/cslpreview.dtd b/chrome/locale/mn-MN/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/mn-MN/zotero/preferences.dtd b/chrome/locale/mn-MN/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Browser pane"> <!ENTITY zotero.preferences.showIn.separateTab "Separate tab"> <!ENTITY zotero.preferences.showIn.appTab "App tab"> -<!ENTITY zotero.preferences.statusBarIcon "Status bar icon:"> -<!ENTITY zotero.preferences.statusBarIcon.none "None"> <!ENTITY zotero.preferences.fontSize "Font size:"> <!ENTITY zotero.preferences.fontSize.small "Бага"> <!ENTITY zotero.preferences.fontSize.medium "Дунд"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Get additional styles..."> -<!ENTITY zotero.preferences.prefpane.keys "Shortcut Keys"> - <!ENTITY zotero.preferences.keys.openZotero "Open/Close Zotero Pane"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Toggle Fullscreen Mode"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Advanced"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Locate"> <!ENTITY zotero.preferences.locate.locateEngineManager "Article Lookup Engine Manager"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Submit to Zotero Server"> <!ENTITY zotero.preferences.openAboutConfig "Open about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Open CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Open CSL Preview"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/mn-MN/zotero/zotero.dtd b/chrome/locale/mn-MN/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Delete"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transform Text"> <!ENTITY zotero.item.textTransform.titlecase "Title Case"> <!ENTITY zotero.item.textTransform.sentencecase "Sentence case"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "New Note"> <!ENTITY zotero.toolbar.note.standalone "New Standalone Note"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/mn-MN/zotero/zotero.properties b/chrome/locale/mn-MN/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Create general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=See %S for more information. +general.open=Open %S general.enable=Enable general.disable=Disable general.remove=Remove @@ -203,6 +204,9 @@ pane.items.trash.multiple=Are you sure you want to move the selected items to th pane.items.delete.title=Устгах pane.items.delete=Are you sure you want to delete the selected item? pane.items.delete.multiple=Are you sure you want to delete the selected items? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Remove Item from Collection pane.items.menu.remove.multiple=Remove Items from Collection pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Create Parent Item pane.items.menu.createParent.multiple=Create Parent Items pane.items.menu.renameAttachments=Rename File from Parent Metadata pane.items.menu.renameAttachments.multiple=Rename Files from Parent Metadata +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Letter to %S pane.items.letter.twoParticipants=Letter to %S and %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/nb-NO/zotero/csledit.dtd b/chrome/locale/nb-NO/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/nb-NO/zotero/cslpreview.dtd b/chrome/locale/nb-NO/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/nb-NO/zotero/preferences.dtd b/chrome/locale/nb-NO/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Browser pane"> <!ENTITY zotero.preferences.showIn.separateTab "Separate tab"> <!ENTITY zotero.preferences.showIn.appTab "App tab"> -<!ENTITY zotero.preferences.statusBarIcon "Ikon på statuslinje:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Ingen"> <!ENTITY zotero.preferences.fontSize "Skriftstørrelse"> <!ENTITY zotero.preferences.fontSize.small "Liten"> <!ENTITY zotero.preferences.fontSize.medium "Medium"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Hent flere stiler..."> -<!ENTITY zotero.preferences.prefpane.keys "Hurtigtaster"> - <!ENTITY zotero.preferences.keys.openZotero "Åpne/lukk Zotero-panelet"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Fullskjerm av/på"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Avansert"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Locate"> <!ENTITY zotero.preferences.locate.locateEngineManager "Article Lookup Engine Manager"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Submit to Zotero Server"> <!ENTITY zotero.preferences.openAboutConfig "Open about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Open CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Open CSL Preview"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/nb-NO/zotero/zotero.dtd b/chrome/locale/nb-NO/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Delete"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Gjør om tekst"> <!ENTITY zotero.item.textTransform.titlecase "Tittel-format"> <!ENTITY zotero.item.textTransform.sentencecase "Sentence case"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "New Note"> <!ENTITY zotero.toolbar.note.standalone "Nytt enkeltstående notat"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/nb-NO/zotero/zotero.properties b/chrome/locale/nb-NO/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Create general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=See %S for more information. +general.open=Open %S general.enable=Enable general.disable=Disable general.remove=Remove @@ -203,6 +204,9 @@ pane.items.trash.multiple=Are you sure you want to move the selected items to th pane.items.delete.title=Slett pane.items.delete=Er du sikker på at du vil slette det valgte elementet? pane.items.delete.multiple=Er du sikker på at du vil slette de valgte elementene? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Fjern valgt element pane.items.menu.remove.multiple=Fjern valgte elementer pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Create Parent Item pane.items.menu.createParent.multiple=Create Parent Items pane.items.menu.renameAttachments=Rename File from Parent Metadata pane.items.menu.renameAttachments.multiple=Rename Files from Parent Metadata +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Brev til %S pane.items.letter.twoParticipants=Brev til %S og %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/nl-NL/zotero/csledit.dtd b/chrome/locale/nl-NL/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/nl-NL/zotero/cslpreview.dtd b/chrome/locale/nl-NL/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/nl-NL/zotero/preferences.dtd b/chrome/locale/nl-NL/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Zotero-venster"> <!ENTITY zotero.preferences.showIn.separateTab "Eigen tabblad"> <!ENTITY zotero.preferences.showIn.appTab "App-tabblad"> -<!ENTITY zotero.preferences.statusBarIcon "Add-onbalk pictogram:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Geen"> <!ENTITY zotero.preferences.fontSize "Lettergrootte:"> <!ENTITY zotero.preferences.fontSize.small "Klein"> <!ENTITY zotero.preferences.fontSize.medium "Middelgroot"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Meer stijlen installeren..."> -<!ENTITY zotero.preferences.prefpane.keys "Sneltoetsen"> - <!ENTITY zotero.preferences.keys.openZotero "Openen/Sluiten van Zotero-venster"> <!ENTITY zotero.preferences.keys.saveToZotero "Sla op naar Zotero (adresbalk icoon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Volledige schermweergave"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Geavanceerd"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Bestanden en mappen"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Opzoeken"> <!ENTITY zotero.preferences.locate.locateEngineManager "Manager voor artikel-zoekmachines"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Naar Zotero-server opsturen"> <!ENTITY zotero.preferences.openAboutConfig "about:config openen"> -<!ENTITY zotero.preferences.openCSLEdit "CSL-editor openen"> -<!ENTITY zotero.preferences.openCSLPreview "CSL-voorbeeldweergave openen"> +<!ENTITY zotero.preferences.openCSLEdit "Open CSL-stijl bewerker"> +<!ENTITY zotero.preferences.openCSLPreview "Open CSL-stijl voorbeeld"> <!ENTITY zotero.preferences.openAboutMemory "about:memory openen"> diff --git a/chrome/locale/nl-NL/zotero/searchbox.dtd b/chrome/locale/nl-NL/zotero/searchbox.dtd @@ -1,6 +1,6 @@ <!ENTITY zotero.search.name "Naam:"> -<!ENTITY zotero.search.searchInLibrary "Search in library:"> +<!ENTITY zotero.search.searchInLibrary "Zoek in bibliotheek:"> <!ENTITY zotero.search.joinMode.prefix "Moet voldoen aan"> <!ENTITY zotero.search.joinMode.any "één van de"> diff --git a/chrome/locale/nl-NL/zotero/zotero.dtd b/chrome/locale/nl-NL/zotero/zotero.dtd @@ -6,9 +6,11 @@ <!ENTITY zotero.general.delete "Verwijderen"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Annuleren"> +<!ENTITY zotero.general.refresh "Vernieuwen"> +<!ENTITY zotero.general.saveAs "Opslaan als..."> <!ENTITY zotero.errorReport.title "Zotero-foutrapportage"> -<!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> +<!ENTITY zotero.errorReport.unrelatedMessages "Dit bevat mogelijk berichten die niet gerelateerd zijn aan Zotero."> <!ENTITY zotero.errorReport.submissionInProgress "Even geduld a.u.b. totdat het foutenrapport is verstuurd."> <!ENTITY zotero.errorReport.submitted "Het foutenrapport is verstuurd."> <!ENTITY zotero.errorReport.reportID "Rapport ID:"> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Hoofdlettergebruik wijzigen"> <!ENTITY zotero.item.textTransform.titlecase "Alle woorden (Elke Eerste Letter)"> <!ENTITY zotero.item.textTransform.sentencecase "Eerste woord (van een zin)"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Draai voor/achternamen om"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Draai Voor-/Achter- namen om"> <!ENTITY zotero.toolbar.newNote "Nieuwe aantekening"> <!ENTITY zotero.toolbar.note.standalone "Nieuwe zelfstandige aantekening"> @@ -285,8 +287,6 @@ <!ENTITY zotero.downloadManager.saveToLibrary.description "Bijlages kunnen niet in de nu geselecteerde bibliotheek worden opgeslagen. Dit item zal daarom in plaats hiervan in uw bibliotheek worden opgeslagen."> <!ENTITY zotero.downloadManager.noPDFTools.description "Om deze functie te gebruiken moet u eerst de PDF-hulpprogramma's installen via de Zotero-voorkeuren."> -<!ENTITY zotero.attachLink.title "Attach Link to URI"> -<!ENTITY zotero.attachLink.label.link "Link:"> -<!ENTITY zotero.attachLink.label.title "Title:"> - - +<!ENTITY zotero.attachLink.title "Koppel verwijzing aan een URI"> +<!ENTITY zotero.attachLink.label.link "Verwijzing:"> +<!ENTITY zotero.attachLink.label.title "Titel:"> diff --git a/chrome/locale/nl-NL/zotero/zotero.properties b/chrome/locale/nl-NL/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Aanmaken general.delete=Verwijder general.moreInformation=Meer informatie general.seeForMoreInformation=Bekijk %S voor meer informatie. +general.open=Open %S general.enable=Aanzetten general.disable=Uitzetten general.remove=Verwijderen @@ -81,9 +82,9 @@ upgrade.couldNotMigrate.restart=Herstart uw computer als u deze boodschap blijft errorReport.reportError=Fout rapporteren… errorReport.reportErrors=Fouten rapporteren… errorReport.reportInstructions=U kunt deze fout rapporteren door "%S" te selecteren in het Acties-menu (tandwiel-pictogram). -errorReport.followingReportWillBeSubmitted=The following report will be submitted: -errorReport.noErrorsLogged=No errors have been logged since %S started. -errorReport.advanceMessage=Press %S to send the report to the Zotero developers. +errorReport.followingReportWillBeSubmitted=Het volgende foutrapport zal verstuurd gaan worden: +errorReport.noErrorsLogged=Er zijn geen fouten vastgelegd sinds %S is gestart. +errorReport.advanceMessage=Druk op %S om het foutrapport naar de Zotero-ontwikkelaars te versturen. errorReport.stepsToReproduce=Stappen om te reproduceren: errorReport.expectedResult=Verwacht resultaat: errorReport.actualResult=Werkelijk resultaat: @@ -193,16 +194,19 @@ tagColorChooser.numberKeyInstructions=U kan dit label toevoegen aan de geselecte tagColorChooser.maxTags=%S labels in elke bibliotheek kunnen kleuren toegewezen krijgen. pane.items.loading=Lijst met items wordt geladen… -pane.items.columnChooser.moreColumns=More Columns -pane.items.columnChooser.secondarySort=Secondary Sort (%S) -pane.items.attach.link.uri.unrecognized=Zotero did not recognize the URI you entered. Please check the address and try again. -pane.items.attach.link.uri.file=To attach a link to a file, please use “%S”. +pane.items.columnChooser.moreColumns=Meer kolommen +pane.items.columnChooser.secondarySort=Tweede sorteersleutel (%S) +pane.items.attach.link.uri.unrecognized=Zotero herkende niet de ingegeven URI. Controleer het adres en probeer opnieuw. +pane.items.attach.link.uri.file=Om een verwijzing naar een bestand te maken, gebruik "%S". pane.items.trash.title=Naar Prullenbak verplaatsen pane.items.trash=Weet u zeker dat u het geselecteerde item naar de Prullenbak wil verplaatsen? pane.items.trash.multiple=Weet u zeker dat u de geselecteerde items naar de Prullenbak wil verplaatsen? pane.items.delete.title=Verwijderen pane.items.delete=Weet u zeker dat u het geselecteerde item wil verwijderen? pane.items.delete.multiple=Weet u zeker dat u de geselecteerde items wil verwijderen? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Geselecteerd item uit Verzameling verwijderen pane.items.menu.remove.multiple=Geselecteerde items uit Verzameling verwijderen pane.items.menu.moveToTrash=Verplaats item naar Prullenbak... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Maak hoofditem pane.items.menu.createParent.multiple=Maak hoofditems pane.items.menu.renameAttachments=Bestand hernoemen op basis van beschikbare metadata pane.items.menu.renameAttachments.multiple=Bestanden hernoemen op basis van beschikbare metadata +pane.items.showItemInLibrary=Geef item weer in de bibliotheek pane.items.letter.oneParticipant=Brief naar %S pane.items.letter.twoParticipants=Brief naar %S en %S @@ -483,7 +488,7 @@ ingester.scrapingTo=Sla op naar ingester.scrapeComplete=Item is opgeslagen ingester.scrapeError=Item kon niet opgeslagen worden. ingester.scrapeErrorDescription=Er is een fout opgetreden bij het opslaan van dit item. Zie %S voor meer informatie. -ingester.scrapeErrorDescription.linkText=Troubleshooting Translator Issues +ingester.scrapeErrorDescription.linkText=Probleemoplosser voor Vertaler ingester.scrapeErrorDescription.previousError=Het opslaan is mislukt door een eerdere Zotero-fout. ingester.importReferRISDialog.title=Zotero RIS/Refer-import @@ -966,5 +971,14 @@ firstRunGuidance.saveIcon=Zotero heeft een verwijzing op deze pagina gevonden. K firstRunGuidance.authorMenu=Zotero ondersteund ook redacteuren en vertalers. U kunt een auteur veranderen in een redacteur of vertaler via dit menu. firstRunGuidance.quickFormat=Type een titel of auteur in om een verwijzing op te zoeken.\n\nNadat u uw selectie heeft gemaakt, klik op de ballon of druk op Ctrl-↓ om pagina-nummers, voorvoegsels en achtervoegsels toe te voegen. U kunt ook het pagina-nummer toevoegen aan uw zoektermen om het zo automatisch toe te voegen.\n\nU kunt verwijzingen direct aanpassen in het document van de tekstverwerker. firstRunGuidance.quickFormatMac=Type een titel of auteur in om een verwijzing op te zoeken.\n\nNadat u uw selectie heeft gemaakt, klik op de ballon of druk op Cmd-↓ om pagina-nummers, voorvoegsels en achtervoegsels toe te voegen. U kunt ook het pagina-nummer toevoegen aan uw zoektermen om het zo automatisch toe te voegen.\n\nU kunt verwijzingen direct aanpassen in het document van de tekstverwerker. -firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. -firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. +firstRunGuidance.toolbarButton.new=Klik hier om Zotero te openen, of gebruik de sneltoets %S op het toetsenbord. +firstRunGuidance.toolbarButton.upgrade=Het Zotero-icoon kan nu gevonden worden in de Firefox-toolbar. Klik op het icoon om Zotero te openen, of gebruik de sneltoets %S op het toetsenbord. + +styles.bibliography=Bibliografie +styles.editor.save=Citeerstijl opslaan +styles.editor.warning.noItems=Geen items geselecteerd in Zotero. +styles.editor.warning.parseError=Fout bij het uitvoeren van de stijl: +styles.editor.warning.renderError=Fout bij het genereren van citaten en bibliografie: +styles.editor.output.individualCitations=Individuele citaten +styles.editor.output.singleCitation=Eerste citaat (met positie "eerste") +styles.preview.instructions=Selecteer een of meer items in Zotero en klik op de "Vernieuwen"-knop om te zien hoe deze items weergeven wordt door de geïnstalleerde CSL citeerstijl. diff --git a/chrome/locale/nn-NO/zotero/csledit.dtd b/chrome/locale/nn-NO/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/nn-NO/zotero/cslpreview.dtd b/chrome/locale/nn-NO/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/nn-NO/zotero/preferences.dtd b/chrome/locale/nn-NO/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Ramme i nettlesaren"> <!ENTITY zotero.preferences.showIn.separateTab "Eiga fane"> <!ENTITY zotero.preferences.showIn.appTab "App-fane"> -<!ENTITY zotero.preferences.statusBarIcon "Ikon på statuslinje:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Ingen"> <!ENTITY zotero.preferences.fontSize "Skriftstorleik"> <!ENTITY zotero.preferences.fontSize.small "Liten"> <!ENTITY zotero.preferences.fontSize.medium "Middels"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Hent fleire stilar …"> -<!ENTITY zotero.preferences.prefpane.keys "Snøggtastar"> - <!ENTITY zotero.preferences.keys.openZotero "Opne/lukk Zotero-panelet"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Fullskjerm av/på"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Avansert"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Lokaliser"> <!ENTITY zotero.preferences.locate.locateEngineManager "Article Lookup Engine Manager"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Submit to Zotero Server"> <!ENTITY zotero.preferences.openAboutConfig "Open about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Open CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Open CSL Preview"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Opna about:memory"> diff --git a/chrome/locale/nn-NO/zotero/zotero.dtd b/chrome/locale/nn-NO/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Slett"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Gøyr om tekst"> <!ENTITY zotero.item.textTransform.titlecase "Tittel-format"> <!ENTITY zotero.item.textTransform.sentencecase "Store bokstavar etter setningsreglar"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Nytt notat"> <!ENTITY zotero.toolbar.note.standalone "Nytt notat"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/nn-NO/zotero/zotero.properties b/chrome/locale/nn-NO/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Lag general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=Sjå %S for meir informasjon +general.open=Open %S general.enable=Slå på general.disable=Slå av general.remove=Fjern @@ -203,6 +204,9 @@ pane.items.trash.multiple=Er du sikker på at du vil flytta dei valde oppføring pane.items.delete.title=Slett pane.items.delete=Er du sikker på at du vil sletta det valde elementet? pane.items.delete.multiple=Er du sikker på at du vil sletta dei valde elementa? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Fjern valt element pane.items.menu.remove.multiple=Fjern valde element pane.items.menu.moveToTrash=Flytt til søppelkorga @@ -221,6 +225,7 @@ pane.items.menu.createParent=Lag forelderelement av valt element pane.items.menu.createParent.multiple=Lag forelderelement av valte element pane.items.menu.renameAttachments=Omdøyp fil etter foreldermetadata pane.items.menu.renameAttachments.multiple=Omdøyp filer etter foreldermetadata +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Brev til %S pane.items.letter.twoParticipants=Brev til %S og %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/pl-PL/zotero/csledit.dtd b/chrome/locale/pl-PL/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/pl-PL/zotero/cslpreview.dtd b/chrome/locale/pl-PL/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/pl-PL/zotero/preferences.dtd b/chrome/locale/pl-PL/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Panelu przeglądarki"> <!ENTITY zotero.preferences.showIn.separateTab "Oddzielnej zakładce"> <!ENTITY zotero.preferences.showIn.appTab "Zakładce aplikacji"> -<!ENTITY zotero.preferences.statusBarIcon "Ikona paska stanu:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Brak"> <!ENTITY zotero.preferences.fontSize "Wielkość czcionki:"> <!ENTITY zotero.preferences.fontSize.small "mała"> <!ENTITY zotero.preferences.fontSize.medium "średnia"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Pobierz dodatkowe style..."> -<!ENTITY zotero.preferences.prefpane.keys "Skróty klawiaturowe"> - <!ENTITY zotero.preferences.keys.openZotero "Otwórz/Zamknij okno Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Zapisz w Zotero (ikona paska adresu)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Przełącz w tryb pełnoekranowy"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Zaawansowane"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Pliki i katalogi"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Wyszukaj"> <!ENTITY zotero.preferences.locate.locateEngineManager "Zarządzanie silnikami wyszukiwania"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Wyślij na serwer Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Otwórz about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Otwórz edytor CSL"> -<!ENTITY zotero.preferences.openCSLPreview "Otwórz podgląd CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Otwórz edytor stylu"> +<!ENTITY zotero.preferences.openCSLPreview "Otwórz podgląd stylu"> <!ENTITY zotero.preferences.openAboutMemory "Otwórz about:memory"> diff --git a/chrome/locale/pl-PL/zotero/zotero.dtd b/chrome/locale/pl-PL/zotero/zotero.dtd @@ -6,10 +6,12 @@ <!ENTITY zotero.general.delete "Usuń"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Anuluj"> +<!ENTITY zotero.general.refresh "Odśwież"> +<!ENTITY zotero.general.saveAs "Zapisz jako..."> <!ENTITY zotero.errorReport.title "Raport błędów Zotero"> <!ENTITY zotero.errorReport.unrelatedMessages "Może zawierać informacje niezwiązane z Zotero."> -<!ENTITY zotero.errorReport.submissionInProgress "Proszę czekać... Informacje o błędzie są wysyłane."> +<!ENTITY zotero.errorReport.submissionInProgress "Proszę czekać, informacje o błędzie są wysyłane."> <!ENTITY zotero.errorReport.submitted "Informacje o błędzie zostały wysłane."> <!ENTITY zotero.errorReport.reportID "ID raportu:"> <!ENTITY zotero.errorReport.postToForums "Proszę wysłać informację na forum Zotero (forums.zotero.org) z podaniem tego ID raportu, opisem problemu oraz wszystkmi krokami niezbędnymi do powtórzenia błędu."> @@ -285,8 +287,6 @@ <!ENTITY zotero.downloadManager.saveToLibrary.description "Załączniki nie mogą być zapisane w aktualnie wybranej bibliotece. Ten element zostanie zapisany zamiast tego w twojej bibliotece."> <!ENTITY zotero.downloadManager.noPDFTools.description "Aby użyć tej funkcji, musisz najpierw zainstalować narzędzia PDF w ustawieniach Zotero."> -<!ENTITY zotero.attachLink.title "Attach Link to URI"> -<!ENTITY zotero.attachLink.label.link "Link:"> -<!ENTITY zotero.attachLink.label.title "Title:"> - - +<!ENTITY zotero.attachLink.title "Dołącz odnośnik do URI"> +<!ENTITY zotero.attachLink.label.link "Odnośnik:"> +<!ENTITY zotero.attachLink.label.title "Tytuł:"> diff --git a/chrome/locale/pl-PL/zotero/zotero.properties b/chrome/locale/pl-PL/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Utwórz general.delete=Usuń general.moreInformation=Więcej informacji general.seeForMoreInformation=Zobacz %S aby uzyskać więcej informacji. +general.open=Open %S general.enable=Włącz general.disable=Wyłącz general.remove=Usuń @@ -111,7 +112,7 @@ dataDir.selectDir=Wybierz katalog danych Zotero dataDir.selectedDirNonEmpty.title=Katalog zawiera elementy dataDir.selectedDirNonEmpty.text=Wybrany katalog nie jest pusty i nie jest katalogiem danych Zotero.\n\nCzy mimo wszystko chcesz utworzyć pliki Zotero w tym katalogu? dataDir.selectedDirEmpty.title=Katalog jest pusty -dataDir.selectedDirEmpty.text=The directory you selected is empty. To move an existing Zotero data directory, you will need to manually move files from the existing data directory to the new location after %1$S has closed. +dataDir.selectedDirEmpty.text=Wybrany katalog jest pusty. Aby przenieść istniejący katalog danych Zotero, należy ręcznie przenieść pliki z istniejącego katalogu danych do nowej lokalizacji po zamknięciu %1$S. dataDir.selectedDirEmpty.useNewDir=Użyć nowego katalogu? dataDir.moveFilesToNewLocation=Upewnij się, że pliki z twojego istniejącego katalogu danych Zotero zostały przeniesione w nowe miejsce, zanim ponownie otworzysz %1$S. dataDir.incompatibleDbVersion.title=Niepasująca wersja bazy danych @@ -194,15 +195,18 @@ tagColorChooser.maxTags=Maksymalnie do %S znaczników w każdej bibliotece może pane.items.loading=Wczytywanie listy elementów... pane.items.columnChooser.moreColumns=Więcej kolumn -pane.items.columnChooser.secondarySort=Secondary Sort (%S) -pane.items.attach.link.uri.unrecognized=Zotero did not recognize the URI you entered. Please check the address and try again. -pane.items.attach.link.uri.file=To attach a link to a file, please use “%S”. +pane.items.columnChooser.secondarySort=Sortowanie drugorzędowe (%S) +pane.items.attach.link.uri.unrecognized=Zotero nie rozpoznaje wprowadzonego URI. Proszę sprawdzić adres i spróbować ponownie. +pane.items.attach.link.uri.file=Aby dołączyć odsyłacz do pliku, użyj proszę "%S". pane.items.trash.title=Przenieś do Kosza pane.items.trash=Czy na pewno przenieść zaznaczony element do Kosza? pane.items.trash.multiple=Czy na pewno przenieść zaznaczone elementy do Kosza? pane.items.delete.title=Usuń pane.items.delete=Czy na pewno chcesz usunąć zaznaczony element? pane.items.delete.multiple=Czy na pewno chcesz usunąć zaznaczone elementy? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Usuń element z kolekcji pane.items.menu.remove.multiple=Usuń elementy z kolekcji pane.items.menu.moveToTrash=Przenieś element do Kosza... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Utwórz element nadrzędny z wybranego elementu pane.items.menu.createParent.multiple=Utwórz elementy nadrzędne z wybranych elementów pane.items.menu.renameAttachments=Zmień nazwę pliku na podst. metadanych rodzica pane.items.menu.renameAttachments.multiple=Zmień nazwy plików na podst. metadanych rodzica +pane.items.showItemInLibrary=Pokaż elementy w Bibliotece pane.items.letter.oneParticipant=List do %S pane.items.letter.twoParticipants=List do %S i %S @@ -743,8 +748,8 @@ styles.deleteStyle=Czy na pewno usunąć styl "%1$S"? styles.deleteStyles=Czy na pewno usunąć wybrane style? styles.abbreviations.title=Wczytaj skróty -styles.abbreviations.parseError=The abbreviations file "%1$S" is not valid JSON. -styles.abbreviations.missingInfo=The abbreviations file "%1$S" does not specify a complete info block. +styles.abbreviations.parseError=Plik skrótów "%1$S" nie jest poprawnym plikiem w formacie JSON. +styles.abbreviations.missingInfo=Plik skrótów "%1$S" nie zawiera pełnego bloku info. sync.sync=Synchronizacja sync.cancel=Anulowanie synchronizacji @@ -768,7 +773,7 @@ sync.error.loginManagerCorrupted1=Zotero nie może uzyskać dostępu do twoich d sync.error.loginManagerCorrupted2=Close %1$S, remove signons.sqlite from your %2$S profile directory, and re-enter your Zotero login information in the Sync pane of the Zotero preferences. sync.error.syncInProgress=Synchronizacja jest aktualnie w trakcie. sync.error.syncInProgress.wait=Poczekaj na zakończenie poprzedniej synchronizacji albo uruchom ponownie %S. -sync.error.writeAccessLost=You no longer have write access to the Zotero group '%S', and items you've added or edited cannot be synced to the server. +sync.error.writeAccessLost=Nie masz już uprawnień zapisu do grupy Zotero "%S", a więc dodane lub edytowane elementy nie mogą zostać zsynchronizowane z serwerem. sync.error.groupWillBeReset=Jeżeli będziesz kontynuować, twoja kopia grupy zostanie przywrócona do stanu na serwerze, a lokalne zmiany pozycji oraz plików zostaną usunięte. sync.error.copyChangedItems=Jeżeli chcesz mieć możliwość skopiowania zmienionych elementów w inne miejsce lub chcesz poprosić administratora grupy o prawo do zapisu, anuluj teraz synchronizację. sync.error.manualInterventionRequired=Automatyczna synchronizacja spowodowała konflikt, który wymaga ręcznej interwencji. @@ -930,7 +935,7 @@ file.accessError.showParentDir=Wyświetl katalog nadrzędny lookup.failure.title=Wyszukiwanie nieudane lookup.failure.description=Zotero nie potrafi odnaleźć wpisu dla podanego identyfikatora. Sprawdź proszę identyfikator i spróbuj ponownie. -lookup.failureToID.description=Zotero could not find any identifiers in your input. Please verify your input and try again. +lookup.failureToID.description=Zotero nie może znaleźć żadnych identyfikatorów we wprowadzonych danych. Sprawdź poprawność wprowadzonych danych i spróbuj ponownie. locate.online.label=Pokaż online locate.online.tooltip=Pokaż ten element online @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Wpisz tytuł lub autora aby szukać pozycji w bibli firstRunGuidance.quickFormatMac=Wpisz tytuł lub autora aby szukać pozycji w bibliotece.\n\nGdy dokonasz wyboru, kliknij bąbelek lub wciśnij Cmd-\↓ aby dodać numery stron, przedrostki lub przyrostki. Możesz również wpisać numery stron wraz z wyszukiwanymi frazami, aby dodać je bezpośrednio.\n\nMożesz zmieniać odnośniki bezpośrednio w dokumencie edytora tekstu. firstRunGuidance.toolbarButton.new=Kliknij tutaj, aby otworzyć Zotero lub użyj skrótu klawiaturowego %S. firstRunGuidance.toolbarButton.upgrade=Ikonę Zotero znajdziesz teraz w pasku narzędzi Firefoksa. Kliknij ikonę, aby uruchomić Zotero lub użyj skrótu klawiaturowego %S. + +styles.bibliography=Bibliografia +styles.editor.save=Zapisz styl cytowania +styles.editor.warning.noItems=Nie wybrano żadnych elementów w Zotero. +styles.editor.warning.parseError=Błąd przetwarzania stylu: +styles.editor.warning.renderError=Błąd tworzenia cytowań i bibliografii: +styles.editor.output.individualCitations=Pojedyncze cytowania +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Wybierz jeden lub więcej elementów w Zotero i kliknij przycisk "Odśwież", aby zobaczyć w jaki sposób te elementy będą wyświetlone za pomocą zainstalowanych stylów cytowania CSL. diff --git a/chrome/locale/pt-BR/zotero/csledit.dtd b/chrome/locale/pt-BR/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/pt-BR/zotero/cslpreview.dtd b/chrome/locale/pt-BR/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/pt-BR/zotero/preferences.dtd b/chrome/locale/pt-BR/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Painel do navegador"> <!ENTITY zotero.preferences.showIn.separateTab "Aba separada"> <!ENTITY zotero.preferences.showIn.appTab "Aba de aplicativo"> -<!ENTITY zotero.preferences.statusBarIcon "Ícone da barra de status:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Nenhum"> <!ENTITY zotero.preferences.fontSize "Tamanho da fonte:"> <!ENTITY zotero.preferences.fontSize.small "Pequena"> <!ENTITY zotero.preferences.fontSize.medium "Média"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Obter estilos aditionais..."> -<!ENTITY zotero.preferences.prefpane.keys "Teclas de atalho"> - <!ENTITY zotero.preferences.keys.openZotero "Abrir/Fechar painel Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Salvar para o Zotero (ícone da barra de endereços)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Alternar Modo Tela Cheia"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Avançado"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Arquivos e Pastas"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Localizar"> <!ENTITY zotero.preferences.locate.locateEngineManager "Gerenciador dos mecanismos de pesquisa de artigos"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Enviar ao servidor Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Abrir about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Abrir editor de CSL"> -<!ENTITY zotero.preferences.openCSLPreview "Abrir pré-visualização de CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Abrir about:memory"> diff --git a/chrome/locale/pt-BR/zotero/zotero.dtd b/chrome/locale/pt-BR/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Excluir"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancelar"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Relatório de erros do Zotero"> <!ENTITY zotero.errorReport.unrelatedMessages "Pode incluir mensagens não relacionadas ao Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transformar texto"> <!ENTITY zotero.item.textTransform.titlecase "Iniciais Em Maiúsculo"> <!ENTITY zotero.item.textTransform.sentencecase "Maiúscula no início da frase"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Trocar primeiro/último nomes"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Nova nota"> <!ENTITY zotero.toolbar.note.standalone "Nova nota standalone"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/pt-BR/zotero/zotero.properties b/chrome/locale/pt-BR/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Criar general.delete=Remover general.moreInformation=Mais informação general.seeForMoreInformation=Ver %S para mais informações. +general.open=Open %S general.enable=Habilitar general.disable=Desabilitar general.remove=Remover @@ -203,6 +204,9 @@ pane.items.trash.multiple=Tem certeza de que deseja mover os itens selecionados pane.items.delete.title=Excluir pane.items.delete=Tem certeza de que deseja excluir o item selecionado? pane.items.delete.multiple=Tem certeja de que deseja excluir os itens selecionados? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Remover item selecionado pane.items.menu.remove.multiple=Remover itens selecionados pane.items.menu.moveToTrash=Mover Item para a lixeira... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Criar item no nível acima do item selecionado pane.items.menu.createParent.multiple=Criar itens no nível acima dos itens selecionados pane.items.menu.renameAttachments=Renomear arquivo a partir dos metadados do item no nível acima pane.items.menu.renameAttachments.multiple=Renomear arquivos a partir dos metadados do item no nível acima +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Carta para %S pane.items.letter.twoParticipants=Carta para %S e %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Digite um título ou autor para procurar por uma re firstRunGuidance.quickFormatMac=Digite um título ou autor para procurar por uma referência.\n\nDepois de feita a sua seleção, clique na bolha ou pressione Cmd-\u2193 para adicionar os números de página, prefixos ou sufixo. Você também pode incluir um número de página junto aos seus termos de pesquisa para adicioná-lo diretamente.\n\nVocê pode editar as citações diretamente do processador de texto. firstRunGuidance.toolbarButton.new=Clique aqui para abrir o Zotero, ou utilize o atalho %S em seu teclado. firstRunGuidance.toolbarButton.upgrade=O ícone do Zotero pode agora ser encontrado na barra de ferramentas do Firefox. Clique no ícone para abrir o Zotero, ou utilize o atalho %S em seu teclado. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/pt-PT/zotero/csledit.dtd b/chrome/locale/pt-PT/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/pt-PT/zotero/cslpreview.dtd b/chrome/locale/pt-PT/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/pt-PT/zotero/preferences.dtd b/chrome/locale/pt-PT/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Painel do navegador"> <!ENTITY zotero.preferences.showIn.separateTab "Separador próprio"> <!ENTITY zotero.preferences.showIn.appTab "Separador de aplicação"> -<!ENTITY zotero.preferences.statusBarIcon "Ícone na barra de estado:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Nenhum"> <!ENTITY zotero.preferences.fontSize "Tamanho da fonte tipográfica:"> <!ENTITY zotero.preferences.fontSize.small "Pequena"> <!ENTITY zotero.preferences.fontSize.medium "Média"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Obter estilos adicionais..."> -<!ENTITY zotero.preferences.prefpane.keys "Teclas de Atalho"> - <!ENTITY zotero.preferences.keys.openZotero "Abrir/Fechar Painel do Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Guardar no Zotero (ícone da barra de endereço)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Alternar Modo de Ecrã Inteiro"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Avançadas"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Ficheiros e Pastas"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Localizar"> <!ENTITY zotero.preferences.locate.locateEngineManager "Gestor do Motor de Localização de Artigos"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Enviar para o Servidor Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Abrir about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Abrir Editor CSL"> -<!ENTITY zotero.preferences.openCSLPreview "Abrir Previsão CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Abrir about:memory"> diff --git a/chrome/locale/pt-PT/zotero/zotero.dtd b/chrome/locale/pt-PT/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Remover"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancelar"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Relatório de Erros do Zotero"> <!ENTITY zotero.errorReport.unrelatedMessages "Pode incluir mensagens sem relação com o Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transformar Texto"> <!ENTITY zotero.item.textTransform.titlecase "Maiúsculas Iniciais de Título"> <!ENTITY zotero.item.textTransform.sentencecase "Caixa da frase"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Trocar primeiros/últimos nomes"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Nova Nota"> <!ENTITY zotero.toolbar.note.standalone "Nova Nota Isolada"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/pt-PT/zotero/zotero.properties b/chrome/locale/pt-PT/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Criar general.delete=Remover general.moreInformation=Mais Informação general.seeForMoreInformation=Ver %S para mais informações. +general.open=Open %S general.enable=Activar general.disable=Desactivar general.remove=Remover @@ -203,6 +204,9 @@ pane.items.trash.multiple=Quer mesmo mover os itens seleccionados para o Lixo? pane.items.delete.title=Remover pane.items.delete=Quer mesmo remover o item seleccionado? pane.items.delete.multiple=Quer mesmo remover os itens seleccionados? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Remover Item Seleccionado pane.items.menu.remove.multiple=Remover Itens Seleccionados pane.items.menu.moveToTrash=Mover Item para o Lixo... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Criar Item Ascendente a partir do Item Seleccionado pane.items.menu.createParent.multiple=Criar Itens Ascendentes a partir dos Itens Seleccionados pane.items.menu.renameAttachments=Dar Novo Nome ao Arquivo a partir dos Metadados Ascendentes pane.items.menu.renameAttachments.multiple=Dar Novos Nomes aos Arquivos a partir dos Metadados Ascendentes +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Carta para %S pane.items.letter.twoParticipants=Carta para %S e %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Introduza um título ou um autor para procurar uma firstRunGuidance.quickFormatMac=Introduza um título ou um autor para procurar uma referência.\n\nDepois de fazer a sua selecção, carregue na bolha ou carregue em Cmd-\u2193 para adicionar números de páginas, prefixos ou sufixos. Pode também incluir um número de página junto com os termos da sua pesquisa para o adicionar directamente.\n\nPode editar as citações directamente no documento do processador de texto. firstRunGuidance.toolbarButton.new=Clique aqui para abrir o Zotero ou use o atalho do teclado %S. firstRunGuidance.toolbarButton.upgrade=O ícone do Zotero pode agora ser encontrado na barra de ferramentas do Firefox. Clique no ícone para abrir o Zotero ou use o atalho do teclado %S. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/ro-RO/zotero/csledit.dtd b/chrome/locale/ro-RO/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/ro-RO/zotero/cslpreview.dtd b/chrome/locale/ro-RO/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/ro-RO/zotero/preferences.dtd b/chrome/locale/ro-RO/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Panou browser"> <!ENTITY zotero.preferences.showIn.separateTab "Filă separată"> <!ENTITY zotero.preferences.showIn.appTab "Filă aplicație"> -<!ENTITY zotero.preferences.statusBarIcon "Imaginea din bara de stare:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Niciuna"> <!ENTITY zotero.preferences.fontSize "Mărime caractere:"> <!ENTITY zotero.preferences.fontSize.small "Mici"> <!ENTITY zotero.preferences.fontSize.medium "Medii"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Obține stiluri suplimentare..."> -<!ENTITY zotero.preferences.prefpane.keys "Scurtături de la tastatură"> - <!ENTITY zotero.preferences.keys.openZotero "Deschide/Închide panoul Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Salvează în Zotero (iconița din bara de adrese)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Extinde pe tot ecranul"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Avansate"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Fișiere și dosare"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Localizează"> <!ENTITY zotero.preferences.locate.locateEngineManager "Manager pentru motorul de căutare a articolelor"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Trimitere către serverul Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Deschide about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Deschide editorul CSL"> -<!ENTITY zotero.preferences.openCSLPreview "Deschide Previzualizare CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Deschide about:memory"> diff --git a/chrome/locale/ro-RO/zotero/zotero.dtd b/chrome/locale/ro-RO/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Ștergere"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Anulare"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Raportul de erori Zotero"> <!ENTITY zotero.errorReport.unrelatedMessages "Aceasta ar putea include mesaje fără legătură cu Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Transformă text"> <!ENTITY zotero.item.textTransform.titlecase "Litere de Titlu"> <!ENTITY zotero.item.textTransform.sentencecase "Majusculă ca la propoziție"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Schimbă prenume/nume"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Notă nouă"> <!ENTITY zotero.toolbar.note.standalone "Notă independentă nouă"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/ro-RO/zotero/zotero.properties b/chrome/locale/ro-RO/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Creează general.delete=Ștergere general.moreInformation=Mai multe informații general.seeForMoreInformation=Vezi %S pentru mai multe informații. +general.open=Open %S general.enable=Activare general.disable=Dezactivare general.remove=Șterge @@ -203,6 +204,9 @@ pane.items.trash.multiple=Sigur vrei să muți înregistrările selectate în co pane.items.delete.title=Șterge pane.items.delete=Ești sigur că vrei să ștergi înregistrarea selectată? pane.items.delete.multiple=Ești sigur că vrei să ștergi înregistrările selectate? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Șterge înregistrarea din colecție pane.items.menu.remove.multiple=Șterge înregistrările din colecție pane.items.menu.moveToTrash=Mută înregistrările în coșul de gunoi... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Creează înregistrare părinte pane.items.menu.createParent.multiple=Creează înregistrări părinte pane.items.menu.renameAttachments=Redenumește fișier din metadatele părinte pane.items.menu.renameAttachments.multiple=Redenumește fișiere din metadatele părinte +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Scrisoare către %S pane.items.letter.twoParticipants=Scrisoare către %S și %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Tastează un titlu sau un autor pentru a căuta o r firstRunGuidance.quickFormatMac=Tastează un titlu sau un autor pentru a căuta o referință.\n\nDupă ce ai făcut selecția pe care o dorești, apasă bulina sau Cmd-↓ pentru a adăuga numere de pagină, prefixe sau sufixe. Poți, de asemenea, să incluzi numărul de pagină odată cu căutarea termenilor, pentru a-l adăuga direct.\n\nPoți modifica citările direct în documentul din procesorul de texte. firstRunGuidance.toolbarButton.new=Clic aici pentru a deschide Zotero sau folosește scurtătura de la tastatură %S. firstRunGuidance.toolbarButton.upgrade=Iconița Zotero poate fi găsită acum în bara de instrumente Firefox. Clic pe iconiță pentru a deschide Zotero sau folosește scurtătura de la tastatură %S. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/ru-RU/zotero/csledit.dtd b/chrome/locale/ru-RU/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/ru-RU/zotero/cslpreview.dtd b/chrome/locale/ru-RU/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/ru-RU/zotero/preferences.dtd b/chrome/locale/ru-RU/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Текущей панели"> <!ENTITY zotero.preferences.showIn.separateTab "Отдельной вкладке"> <!ENTITY zotero.preferences.showIn.appTab "Вкладке приложения"> -<!ENTITY zotero.preferences.statusBarIcon "Вид в строке состояния:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Нет"> <!ENTITY zotero.preferences.fontSize "Размер шрифта:"> <!ENTITY zotero.preferences.fontSize.small "Маленький"> <!ENTITY zotero.preferences.fontSize.medium "Средний"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Загрузить дополнительные стили…"> -<!ENTITY zotero.preferences.prefpane.keys "Горячие клавиши"> - <!ENTITY zotero.preferences.keys.openZotero "Открыть/закрыть панель Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Сохранить в Zotero (значок в адресной строке браузера)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Переключение полноэкранного режима"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Расширенные"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Файлы и папки"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Обнаружение"> <!ENTITY zotero.preferences.locate.locateEngineManager "Диспетчер систем поиска статей"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Отправить на сервер Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Открыть about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Открыть редактор CSL"> -<!ENTITY zotero.preferences.openCSLPreview "Открыть предварительный просмотр CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Открыть страницу about:memory"> diff --git a/chrome/locale/ru-RU/zotero/zotero.dtd b/chrome/locale/ru-RU/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Удалить"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Отчет об ошибке Zotero"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Трансформировать Текст"> <!ENTITY zotero.item.textTransform.titlecase "Каждое Слово с Заглавной"> <!ENTITY zotero.item.textTransform.sentencecase "Как в предложении"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Переключение имя/фамилия"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "Новая заметка"> <!ENTITY zotero.toolbar.note.standalone "Новая отдельная заметка"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/ru-RU/zotero/zotero.properties b/chrome/locale/ru-RU/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Создать general.delete=Удалить general.moreInformation=Дополнительные сведения general.seeForMoreInformation=Смотрите %S для дополнительной информации. +general.open=Open %S general.enable=Включить general.disable=Выключить general.remove=Убрать @@ -203,6 +204,9 @@ pane.items.trash.multiple=Вы уверены, что хотите помест pane.items.delete.title=Удалить pane.items.delete=Вы уверены, что хотите удалить выбранный документ? pane.items.delete.multiple=Вы уверены, что хотите удалить выбранные документы? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Удалить выбранный документ pane.items.menu.remove.multiple=Удалить выбранные документы pane.items.menu.moveToTrash=Переместить документ в Корзину… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Создать родительский докум pane.items.menu.createParent.multiple=Создать родительские документы из выбранных pane.items.menu.renameAttachments=Переименовать файл по родительским метаданным pane.items.menu.renameAttachments.multiple=Переименовать файлы по родительским метаданным +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Письмо %S pane.items.letter.twoParticipants=Письмо %S и %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Введите наименование или ав firstRunGuidance.quickFormatMac=Введите наименование или автора для поиска по ссылке.\n\nПосле выбора, нажмите на сноску или Cmd-↓ для добавления номеров страниц, префиксов или суффиксов. Также можно включить номер страницы в условия поиска, чтобы сразу его добавить.\n\n\Цитаты можно редактировать в самом документе, открытом в редакторе. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/sk-SK/zotero/csledit.dtd b/chrome/locale/sk-SK/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/sk-SK/zotero/cslpreview.dtd b/chrome/locale/sk-SK/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/sk-SK/zotero/preferences.dtd b/chrome/locale/sk-SK/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Panel prehliadača"> <!ENTITY zotero.preferences.showIn.separateTab "Osobitná záložka"> <!ENTITY zotero.preferences.showIn.appTab "Záložka aplikácií"> -<!ENTITY zotero.preferences.statusBarIcon "Ikonka v spodnej lište:"> -<!ENTITY zotero.preferences.statusBarIcon.none "žiadna"> <!ENTITY zotero.preferences.fontSize "Veľkosť písma:"> <!ENTITY zotero.preferences.fontSize.small "malé"> <!ENTITY zotero.preferences.fontSize.medium "stredné"> @@ -73,7 +71,7 @@ <!ENTITY zotero.preferences.sync.reset.fullSync "Úplná synchronizácia so serverom Zotero"> <!ENTITY zotero.preferences.sync.reset.fullSync.desc "Zlúčiť lokálne dáta s dátami na serveri bez ohľadu predchádzajúce synchronizácie."> <!ENTITY zotero.preferences.sync.reset.restoreFromServer "Obnoviť dáta zo servera Zotero"> -<!ENTITY zotero.preferences.sync.reset.restoreFromServer.desc "Vymazať všetky lokálne dáta a nahradiť ich dátami servera."> +<!ENTITY zotero.preferences.sync.reset.restoreFromServer.desc "Vymazať všetky lokálne dáta a nahradiť ich dátami na serveri."> <!ENTITY zotero.preferences.sync.reset.restoreToServer "Nahradiť dáta na serveri Zotero"> <!ENTITY zotero.preferences.sync.reset.restoreToServer.desc "Vymazať všetky dáta na serveri a nahradiť ich lokálnymi."> <!ENTITY zotero.preferences.sync.reset.resetFileSyncHistory "Obnoviť históriu synchronizácie súborov"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Získať ďalšie štýly..."> -<!ENTITY zotero.preferences.prefpane.keys "Klávesové skratky"> - <!ENTITY zotero.preferences.keys.openZotero "Otvoriť/zatvoriť Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Uložiť do Zotera (ikona v lište pre adresu)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Prepnúť Zotero do celého okna"> @@ -138,7 +134,7 @@ <!ENTITY zotero.preferences.keys.copySelectedItemCitationsToClipboard "Kopírovať vybrané citácie do schránky"> <!ENTITY zotero.preferences.keys.copySelectedItemsToClipboard "Kopírovať vybrané položky do schránky"> <!ENTITY zotero.preferences.keys.importFromClipboard "Importovať zo schránky"> -<!ENTITY zotero.preferences.keys.changesTakeEffect "Zmeny sa prejavia iba v novo otvorených oknách."> +<!ENTITY zotero.preferences.keys.changesTakeEffect "Zmeny sa prejavia iba v novootvorených oknách."> <!ENTITY zotero.preferences.prefpane.proxies "Proxy"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Pokročilé"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Súbory a adresáre"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Lokalizovať"> <!ENTITY zotero.preferences.locate.locateEngineManager "Správca motora vyhľadávania článkov"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Odoslať na server Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Otvoriť about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Otvoriť CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Otvoriť ukážku CSL "> +<!ENTITY zotero.preferences.openCSLEdit "Otvoriť editor štýlov"> +<!ENTITY zotero.preferences.openCSLPreview "Otvoriť ukážku štýlu"> <!ENTITY zotero.preferences.openAboutMemory "Otvoriť about:memory"> diff --git a/chrome/locale/sk-SK/zotero/zotero.dtd b/chrome/locale/sk-SK/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Vymazať"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Zrušiť"> +<!ENTITY zotero.general.refresh "Obnoviť"> +<!ENTITY zotero.general.saveAs "Uložiť ako..."> <!ENTITY zotero.errorReport.title "Výkaz chýb Zotera"> <!ENTITY zotero.errorReport.unrelatedMessages "Toto môže obsahovať hlásenia nesúvisiace so Zoterom."> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Priložiť odkaz k URI"> <!ENTITY zotero.attachLink.label.link "Odkaz:"> <!ENTITY zotero.attachLink.label.title "Názov:"> - - diff --git a/chrome/locale/sk-SK/zotero/zotero.properties b/chrome/locale/sk-SK/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Vytvoriť general.delete=Vymazať general.moreInformation=Viac informácií general.seeForMoreInformation=Pre viac informácií pozri %S. +general.open=Open %S general.enable=Povoliť general.disable=Zakázať general.remove=Odstrániť @@ -177,8 +178,8 @@ pane.collections.menu.export.savedSearch=Exportovať uložené vyhľadávanie... pane.collections.menu.createBib.collection=Vytvoriť bibliografiu z kolekcie... pane.collections.menu.createBib.savedSearch=Vytvoriť bibliografiu z uloženého vyhľadávania... -pane.collections.menu.generateReport.collection=Vytvoriť správu z kolekcie... -pane.collections.menu.generateReport.savedSearch=Vyvoriť správu z uloženého vyhľadávania... +pane.collections.menu.generateReport.collection=Vytvoriť výkaz z kolekcie... +pane.collections.menu.generateReport.savedSearch=Vyvoriť výkaz z uloženého vyhľadávania... pane.tagSelector.rename.title=Premenovať značku pane.tagSelector.rename.message=Prosím vložte nový názov pre túto značku.\n\nZnačka bude zmenená vo všetkých položkách, ktoré ju obsahujú. @@ -203,6 +204,9 @@ pane.items.trash.multiple=Ste si istý, že chcete vybrané položky presunúť pane.items.delete.title=Vymazať pane.items.delete=Naozaj chcete vymazať zvolenú položku? pane.items.delete.multiple=Naozaj chcete vymazať zvolené položky? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Odstrániť vybranú položku pane.items.menu.remove.multiple=Odstrániť vybrané položky pane.items.menu.moveToTrash=Presunúť exemplár do koša... @@ -211,8 +215,8 @@ pane.items.menu.export=Exportovať vybranú položku... pane.items.menu.export.multiple=Exportovať vybrané položky... pane.items.menu.createBib=Vytvoriť bibliografiu z vybranej položky... pane.items.menu.createBib.multiple=Vytvoriť bibliografiu z vybraných položiek... -pane.items.menu.generateReport=Vytvoriť správu z vybranej položky... -pane.items.menu.generateReport.multiple=Vytvoriť správu z vybraných položiek... +pane.items.menu.generateReport=Vytvoriť výkaz z vybranej položky... +pane.items.menu.generateReport.multiple=Vytvoriť výkaz z vybraných položiek... pane.items.menu.reindexItem=Znovu indexovať položku pane.items.menu.reindexItem.multiple=Znovu indexovať položky pane.items.menu.recognizePDF=Získať metadáta k PDF dokumentu @@ -221,6 +225,7 @@ pane.items.menu.createParent=Vytvoriť nadradenú položku z vybranej položky pane.items.menu.createParent.multiple=Vytvoriť nadradené položky z vybraných položiek pane.items.menu.renameAttachments=Premenovať súbor podľa prislúchajúcich metadát pane.items.menu.renameAttachments.multiple=Premenovať súbory podľa prislúchajúcich metadát +pane.items.showItemInLibrary=Zobraziť exemplár v knižnici pane.items.letter.oneParticipant=List pre %S pane.items.letter.twoParticipants=List pre %S a %S @@ -238,7 +243,7 @@ pane.item.unselected.singular=%S položiek v tomto náhľade pane.item.unselected.plural=%S položiek v tomto náhľade pane.item.duplicates.selectToMerge=Vybrať exempláre na zlúčenie -pane.item.duplicates.mergeItems=Zlúčiť %S exemplárov +pane.item.duplicates.mergeItems=Zlúčiť %S exempláre pane.item.duplicates.writeAccessRequired=Pre zlučovanie exemplárov sa vyžaduje oprávnenie zapisovať do knižnice. pane.item.duplicates.onlyTopLevel=Je možné zlúčiť iba plné exempláre najvyššej úrovne. pane.item.duplicates.onlySameItemType=Všetky zlučované exempláre musia mať rovnaký typ exemplára. @@ -297,7 +302,7 @@ itemTypes.interview=Osobná komunikácia itemTypes.film=Film itemTypes.artwork=Umelecké dielo itemTypes.webpage=Webová stránka -itemTypes.report=Správa +itemTypes.report=Výkaz itemTypes.bill=Legislatívny dokument itemTypes.case=Prípad (súdny) itemTypes.hearing=Výsluch (konanie) @@ -354,7 +359,7 @@ itemFields.seriesTitle=Názov edície itemFields.seriesText=Text edície itemFields.seriesNumber=Číslo edície itemFields.institution=Inštitúcia -itemFields.reportType=Druh správy +itemFields.reportType=Druh výkazu itemFields.code=Zákonník itemFields.session=Zasadnutie itemFields.legislativeBody=Legislatívny orgán @@ -402,7 +407,7 @@ itemFields.programmingLanguage=Program. jazyk itemFields.university=Univerzita itemFields.abstractNote=Abstrakt itemFields.websiteTitle=Názov stránky -itemFields.reportNumber=Číslo správy +itemFields.reportNumber=Číslo výkazu itemFields.billNumber=Číslo itemFields.codeVolume=Ročník itemFields.codePages=Strany @@ -620,7 +625,7 @@ searchConditions.childNote=Vnorená poznámka searchConditions.creator=Autor searchConditions.type=Typ searchConditions.thesisType=Druh záverečnej práce -searchConditions.reportType=Druh správy +searchConditions.reportType=Druh výkazu searchConditions.videoRecordingFormat=Formát videozáznamu searchConditions.audioFileType=Typ audio súboru searchConditions.audioRecordingFormat=Formát audiozáznamu @@ -662,7 +667,7 @@ citation.hideEditor=Skryť editor... citation.citations=Citácie citation.notes=Poznámky -report.title.default=Hlásenie Zotera +report.title.default=Výkaz Zotera report.parentItem=Nadradená položka: report.notes=Poznámky: report.tags=Značky: @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Zadaním názvu alebo autora spustíte hľadanie od firstRunGuidance.quickFormatMac=Zadaním názvu alebo autora spustíte hľadanie odkazu.\n\nPo uskutočnení výberu, kliknite na bublinu alebo stlačte Ctrl-\u2193 na pridanie čísiel strán, predpôn alebo prípon. Môžete tiež pridať číslo strany spolu s hľadanými pojmamy, a tak ich môžete zadať priamo.\n\nCitácie môžete upravovať priamo v dokumente textového procesora. firstRunGuidance.toolbarButton.new=Otvorte Zotero kliknutím sem alebo pomocou klávesovej skratky %S. firstRunGuidance.toolbarButton.upgrade=Ikonu Zotera je teraz možné nájsť v nástrojovej lište Firefoxu. Otvorte Zotero kliknutím na ikonu alebo pomocou klávesovej skratky %S. + +styles.bibliography=Bibliografia +styles.editor.save=Uložiť citačný štýl +styles.editor.warning.noItems=Nie sú vybrané žiadne exemplár v Zotere. +styles.editor.warning.parseError=Chyba pri analýze štýlu: +styles.editor.warning.renderError=Chyba pri vytváraní citácií a bibliografie: +styles.editor.output.individualCitations=Individuálne citácie +styles.editor.output.singleCitation=Jediná citácia (uvedená "prvýkrát") +styles.preview.instructions=Vyberte jeden alebo viac exemplárov v Zotere a kliknite na tlačidlo "Obnoviť", aby ste videli, ako sa tieto exempláre budú zobrazovať pri nainštalovaných citačných štýloch CSL. diff --git a/chrome/locale/sl-SI/zotero/csledit.dtd b/chrome/locale/sl-SI/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/sl-SI/zotero/cslpreview.dtd b/chrome/locale/sl-SI/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/sl-SI/zotero/preferences.dtd b/chrome/locale/sl-SI/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "podoknu brskalnika"> <!ENTITY zotero.preferences.showIn.separateTab "ločenem zavihku"> <!ENTITY zotero.preferences.showIn.appTab "zavihku programa"> -<!ENTITY zotero.preferences.statusBarIcon "Ikona v vrstici stanja:"> -<!ENTITY zotero.preferences.statusBarIcon.none "brez"> <!ENTITY zotero.preferences.fontSize "Velikost pisave:"> <!ENTITY zotero.preferences.fontSize.small "majhna"> <!ENTITY zotero.preferences.fontSize.medium "srednja"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Dobi dodatne sloge ..."> -<!ENTITY zotero.preferences.prefpane.keys "Tipke za bližnjice"> - <!ENTITY zotero.preferences.keys.openZotero "Odpri/zapri podokno Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Shrani v Zotero (ikona v naslovni vrstici)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Vključi/izključi celozaslonski način"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Napredno"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Datoteke in mape"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Lociraj"> <!ENTITY zotero.preferences.locate.locateEngineManager "Upravitelj pogona iskanja člankov"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Objavi na strežniku Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Odpri about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Odpri urejevalnik CSL"> -<!ENTITY zotero.preferences.openCSLPreview "Odpri predogled CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Odpri urejevalnik sloga"> +<!ENTITY zotero.preferences.openCSLPreview "Odpri predogled sloga"> <!ENTITY zotero.preferences.openAboutMemory "Odprite about:memory"> diff --git a/chrome/locale/sl-SI/zotero/zotero.dtd b/chrome/locale/sl-SI/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Izbriši"> <!ENTITY zotero.general.ok "V redu"> <!ENTITY zotero.general.cancel "Prekliči"> +<!ENTITY zotero.general.refresh "Osveži"> +<!ENTITY zotero.general.saveAs "Shrani kot ..."> <!ENTITY zotero.errorReport.title "Poročilo o napaki Zotero"> <!ENTITY zotero.errorReport.unrelatedMessages "Vključuje lahko sporočila, ki se ne nanašajo na Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Preoblikuj besedilo"> <!ENTITY zotero.item.textTransform.titlecase "Velike Začetnice"> <!ENTITY zotero.item.textTransform.sentencecase "Kot v stavku"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Zamenjaj imena in priimke"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Zamenjaj ime/priimek"> <!ENTITY zotero.toolbar.newNote "Nova opomba"> <!ENTITY zotero.toolbar.note.standalone "Nova samostojna opomba"> @@ -285,8 +287,6 @@ <!ENTITY zotero.downloadManager.saveToLibrary.description "V trenutno izbrano knjižnico priponk ni mogoče shraniti. Vnos bo namesto tega shranjen v vašo knjižnico."> <!ENTITY zotero.downloadManager.noPDFTools.description "Če želite uporabiti to funkcijo, morate najprej namestiti orodja PDF v nastavitvah Zotera."> -<!ENTITY zotero.attachLink.title "Attach Link to URI"> -<!ENTITY zotero.attachLink.label.link "Link:"> -<!ENTITY zotero.attachLink.label.title "Title:"> - - +<!ENTITY zotero.attachLink.title "URI pripni povezavo"> +<!ENTITY zotero.attachLink.label.link "Povezava:"> +<!ENTITY zotero.attachLink.label.title "Naslov:"> diff --git a/chrome/locale/sl-SI/zotero/zotero.properties b/chrome/locale/sl-SI/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Ustvari general.delete=Izbriši general.moreInformation=Podrobnosti general.seeForMoreInformation=Oglejte si %S za več informacij. +general.open=Open %S general.enable=Omogoči general.disable=Onemogoči general.remove=Odstrani @@ -195,14 +196,17 @@ tagColorChooser.maxTags=Največ %S značk v vsaki knjižnici ima lahko dodeljeno pane.items.loading=Nalaganje seznama vnosov ... pane.items.columnChooser.moreColumns=Več stolpcev pane.items.columnChooser.secondarySort=Drugotno razvrščanje (%S) -pane.items.attach.link.uri.unrecognized=Zotero did not recognize the URI you entered. Please check the address and try again. -pane.items.attach.link.uri.file=To attach a link to a file, please use “%S”. +pane.items.attach.link.uri.unrecognized=URI, ki ste ga vnesli, je nemogoče razpoznati. Preverite naslov in poskusite znova. +pane.items.attach.link.uri.file=Če želite datoteki pripeti povezavo, uporabite “%S”. pane.items.trash.title=Premakni v koš pane.items.trash=Ste prepričani, da želite izbrani vnos vreči v koš? pane.items.trash.multiple=Ste prepričani, da želite izbrane vnose vreči v koš? pane.items.delete.title=Izbriši pane.items.delete=Ste prepričani, da želite izbrisati izbrani vnos? pane.items.delete.multiple=Ste prepričani, da želite izbrisati izbrane vnose? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Odstrani vnos iz zbirke pane.items.menu.remove.multiple=Odstrani vnose iz zbirke pane.items.menu.moveToTrash=Premakni vnos v koš ... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Ustvari starševski vnos pane.items.menu.createParent.multiple=Ustvari starševske vnose pane.items.menu.renameAttachments=Preimenuj datoteko iz starševskih metapodatkov pane.items.menu.renameAttachments.multiple=Preimenuj datoteke iz starševskih metapodatkov +pane.items.showItemInLibrary=Pokaži element v knjižnici pane.items.letter.oneParticipant=Pismo za %S pane.items.letter.twoParticipants=Pismo za %S in %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Za iskanje sklica vnesite naslov ali avtorja.\n\nKo firstRunGuidance.quickFormatMac=Za iskanje sklica vnesite naslov ali avtorja.\n\nKo ste opravili izbor, kliknite oblaček ali pritisnite Cmd-↓ za dodajanje številk strani, predpon ali pripon. Z iskanimi nizi lahko neposredno vnesete tudi številko strani.\n\nNavedke lahko uredite neposredno v dokumentu urejevalnika besedil. firstRunGuidance.toolbarButton.new=Kliknite sem, da odprete Zotero, ali uporabite kombinacijo tipk %S. firstRunGuidance.toolbarButton.upgrade=Ikono Zotero zdaj najdete v orodni vrstici Firefox. Kliknite ikono, da odprete Zotero, ali uporabite kombinacijo tipk %S. + +styles.bibliography=Bibliografija +styles.editor.save=Shrani slog citiranja +styles.editor.warning.noItems=V Zoteru ni nič izbrano. +styles.editor.warning.parseError=Napaka pri razčlenjevanju sloga: +styles.editor.warning.renderError=Napaka pri izdelavi citatov in bibliografije: +styles.editor.output.individualCitations=Posamični citati +styles.editor.output.singleCitation=Posamezen citat (s položajem »prvi«) +styles.preview.instructions=Izberite enega ali več elementov v Zoteru in kliknite gumb »Osveži«, da vidite, kako se izbrani upodobijo z nameščenimi slogi navajanja CSL. diff --git a/chrome/locale/sr-RS/zotero/csledit.dtd b/chrome/locale/sr-RS/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/sr-RS/zotero/cslpreview.dtd b/chrome/locale/sr-RS/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/sr-RS/zotero/preferences.dtd b/chrome/locale/sr-RS/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Browser pane"> <!ENTITY zotero.preferences.showIn.separateTab "Separate tab"> <!ENTITY zotero.preferences.showIn.appTab "App tab"> -<!ENTITY zotero.preferences.statusBarIcon "Икона статусне линије:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Ништа"> <!ENTITY zotero.preferences.fontSize "Величина фонта:"> <!ENTITY zotero.preferences.fontSize.small "Мали"> <!ENTITY zotero.preferences.fontSize.medium "Средњи"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Добави додатне стилове..."> -<!ENTITY zotero.preferences.prefpane.keys "Пречице на тастатури"> - <!ENTITY zotero.preferences.keys.openZotero "Отвори/затвори Зотеро површ"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Укључи/искључи приказ преко целог екрана"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Напредно"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Locate"> <!ENTITY zotero.preferences.locate.locateEngineManager "Article Lookup Engine Manager"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Submit to Zotero Server"> <!ENTITY zotero.preferences.openAboutConfig "Open about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Open CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Open CSL Preview"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/sr-RS/zotero/zotero.dtd b/chrome/locale/sr-RS/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Обриши"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Преиначи текст"> <!ENTITY zotero.item.textTransform.titlecase "Величина слова у наслову"> <!ENTITY zotero.item.textTransform.sentencecase "Sentence case"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "New Note"> <!ENTITY zotero.toolbar.note.standalone "Нова самостална белешка"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/sr-RS/zotero/zotero.properties b/chrome/locale/sr-RS/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Направи general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=Погледајте %S за више информација. +general.open=Open %S general.enable=Укључи general.disable=Искључи general.remove=Remove @@ -203,6 +204,9 @@ pane.items.trash.multiple=Are you sure you want to move the selected items to th pane.items.delete.title=Избриши pane.items.delete=Да ли сте сигурни да желите избрисати изабрану ставку? pane.items.delete.multiple=Да ли сте сигурни да желите избрисати изабране ставке? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Избаци изабрану ставку pane.items.menu.remove.multiple=Избаци изабране ставке pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Create Parent Item pane.items.menu.createParent.multiple=Create Parent Items pane.items.menu.renameAttachments=Rename File from Parent Metadata pane.items.menu.renameAttachments.multiple=Rename Files from Parent Metadata +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Писмо за %S pane.items.letter.twoParticipants=Писмо за %S и %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/sv-SE/zotero/csledit.dtd b/chrome/locale/sv-SE/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/sv-SE/zotero/cslpreview.dtd b/chrome/locale/sv-SE/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/sv-SE/zotero/preferences.dtd b/chrome/locale/sv-SE/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "webbläsarfönstret"> <!ENTITY zotero.preferences.showIn.separateTab "ny flik"> <!ENTITY zotero.preferences.showIn.appTab "programflik"> -<!ENTITY zotero.preferences.statusBarIcon "Ikon i statusfält:"> -<!ENTITY zotero.preferences.statusBarIcon.none "ingen ikon"> <!ENTITY zotero.preferences.fontSize "Teckenstorlek:"> <!ENTITY zotero.preferences.fontSize.small "Liten"> <!ENTITY zotero.preferences.fontSize.medium "Mellan"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Lägg till ytterligare stilar..."> -<!ENTITY zotero.preferences.prefpane.keys "Snabbkommandon"> - <!ENTITY zotero.preferences.keys.openZotero "Öppna/Stäng Zotero-panelen"> <!ENTITY zotero.preferences.keys.saveToZotero "Spara till Zotero (adressradsikon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Växla fullskärmsläge"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Avancerat"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Filer och kataloger"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Hitta"> <!ENTITY zotero.preferences.locate.locateEngineManager "Hantera söktjänst för artiklar"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Skicka till Zotero Server"> <!ENTITY zotero.preferences.openAboutConfig "Öppna about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Öppna CSL-redigerare"> -<!ENTITY zotero.preferences.openCSLPreview "Öppna CSL-förhandsvisning"> +<!ENTITY zotero.preferences.openCSLEdit "Öppna stilredigerare"> +<!ENTITY zotero.preferences.openCSLPreview "Öppna förhandsgranskning av stil"> <!ENTITY zotero.preferences.openAboutMemory "Öppna about:memory"> diff --git a/chrome/locale/sv-SE/zotero/zotero.dtd b/chrome/locale/sv-SE/zotero/zotero.dtd @@ -1,11 +1,13 @@ <!ENTITY zotero.general.optional "(Valfritt)"> <!ENTITY zotero.general.note "Anteckning:"> -<!ENTITY zotero.general.selectAll "Välj alla"> -<!ENTITY zotero.general.deselectAll "Välj bort alla"> +<!ENTITY zotero.general.selectAll "Markera allt"> +<!ENTITY zotero.general.deselectAll "Avmarkera allt"> <!ENTITY zotero.general.edit "Ändra"> <!ENTITY zotero.general.delete "Radera"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Avbryt"> +<!ENTITY zotero.general.refresh "Uppdatera"> +<!ENTITY zotero.general.saveAs "Spara som…"> <!ENTITY zotero.errorReport.title "Zotero-felrapporting"> <!ENTITY zotero.errorReport.unrelatedMessages "Det kan innehålla meddelanden som inte har med Zotero att göra."> @@ -103,7 +105,7 @@ <!ENTITY zotero.toolbar.newSubcollection.label "Ny undersamling..."> <!ENTITY zotero.toolbar.newSavedSearch.label "Ny sparad sökning..."> <!ENTITY zotero.toolbar.emptyTrash.label "Töm papperskorg"> -<!ENTITY zotero.toolbar.tagSelector.label "Visa/Göm etikettväljare"> +<!ENTITY zotero.toolbar.tagSelector.label "Visa/göm etikettväljare"> <!ENTITY zotero.toolbar.actions.label "Åtgärder"> <!ENTITY zotero.toolbar.import.label "Importera..."> <!ENTITY zotero.toolbar.importFromClipboard "Importera från urklipp"> @@ -138,9 +140,9 @@ <!ENTITY zotero.tagSelector.filter "Filter:"> <!ENTITY zotero.tagSelector.showAutomatic "Visa automatiskt"> <!ENTITY zotero.tagSelector.displayAllInLibrary "Visa alla etiketter i detta bibliotek"> -<!ENTITY zotero.tagSelector.selectVisible "Välj synliga"> -<!ENTITY zotero.tagSelector.clearVisible "Välj bort synliga"> -<!ENTITY zotero.tagSelector.clearAll "Välj bort alla"> +<!ENTITY zotero.tagSelector.selectVisible "Markera synliga"> +<!ENTITY zotero.tagSelector.clearVisible "Avmarkera synliga"> +<!ENTITY zotero.tagSelector.clearAll "Avmarkera alla"> <!ENTITY zotero.tagSelector.assignColor "Ange färg…"> <!ENTITY zotero.tagSelector.renameTag "Ändra namn på etikett..."> <!ENTITY zotero.tagSelector.deleteTag "Radera etikett..."> @@ -154,7 +156,7 @@ <!ENTITY zotero.lookup.description "Skriv ISBN, DOI, eller PMID i sökfältet nedan."> <!ENTITY zotero.lookup.button.search "Sök"> -<!ENTITY zotero.selectitems.title "Välj källor"> +<!ENTITY zotero.selectitems.title "Markera källor"> <!ENTITY zotero.selectitems.intro.label "Välj vilka källor du vill lägga till i ditt bibliotek"> <!ENTITY zotero.selectitems.cancel.label "Ångra"> <!ENTITY zotero.selectitems.select.label "Ok"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Bifoga länk till URI"> <!ENTITY zotero.attachLink.label.link "Länk:"> <!ENTITY zotero.attachLink.label.title "Titel:"> - - diff --git a/chrome/locale/sv-SE/zotero/zotero.properties b/chrome/locale/sv-SE/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Skapa general.delete=Radera general.moreInformation=Mer information general.seeForMoreInformation=Se %S för mer information. +general.open=Open %S general.enable=Aktivera general.disable=Avaktivera general.remove=Ta bort @@ -203,6 +204,9 @@ pane.items.trash.multiple=Är du säker på att du vill flytta de valda källorn pane.items.delete.title=Ta bort pane.items.delete=Är du säker på att du vill ta bort den valda källan? pane.items.delete.multiple=Är du säker på att du vill ta bort de valda källorna? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Ta bort vald källa pane.items.menu.remove.multiple=Ta bort valda källor pane.items.menu.moveToTrash=Flytta källa till papperskorgen… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Skapa överordnad rubrik från vald rubrik pane.items.menu.createParent.multiple=Skapa överordnad rubrik från valda rubriker pane.items.menu.renameAttachments=Byt namn på filen beroende på överordnad rubriks metadata pane.items.menu.renameAttachments.multiple=Byt namn på filerna beroende på överordnad rubriks metadata +pane.items.showItemInLibrary=Visa källa i bibliotek pane.items.letter.oneParticipant=Brev till %S pane.items.letter.twoParticipants=Brev till %S och %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Skriv in en titel eller författare för att söka firstRunGuidance.quickFormatMac=Skriv in en titel eller författare för att söka bland referenserna.\n\nEfter att du har gjort ditt val, klicka i rutan eller tryck Ctrl-\u2193 för att lägga till sidnummer, prefix eller suffix. Du kan också lägga in ett sidnummer tillsammans med din sökning för att lägga till det direkt.\n\nDu kan redigera citeringen direkt i ordbehandlaren. firstRunGuidance.toolbarButton.new=Klicka här för att öppna Zotero, eller använd %S kortkommandot. firstRunGuidance.toolbarButton.upgrade=Zotero-ikonen ligger nu i Firefoxs verktygsrad. Klicka på ikonen för att öppna Zotero, eller använd %S kortkommandot. + +styles.bibliography=Källförteckning +styles.editor.save=Spara referensstil +styles.editor.warning.noItems=Inga källor markerade i Zotero. +styles.editor.warning.parseError=Fel vid tolkning av stil: +styles.editor.warning.renderError=Fel vid generering av citering och källförteckning. +styles.editor.output.individualCitations=Individuella citeringar +styles.editor.output.singleCitation=Enskild citering (med positionen "först") +styles.preview.instructions=Markera en eller flera källor i Zotero och klicka på Uppdatera-knappen för att se hur dessa källor framställs i de installerade CSL-stilarna. diff --git a/chrome/locale/th-TH/zotero/csledit.dtd b/chrome/locale/th-TH/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/th-TH/zotero/cslpreview.dtd b/chrome/locale/th-TH/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/th-TH/zotero/preferences.dtd b/chrome/locale/th-TH/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "ช่องเบราเซอร์"> <!ENTITY zotero.preferences.showIn.separateTab "แยกแท็บ"> <!ENTITY zotero.preferences.showIn.appTab "แท็บโปรแกรม"> -<!ENTITY zotero.preferences.statusBarIcon "ไอคอนแถบสถานะ:"> -<!ENTITY zotero.preferences.statusBarIcon.none "ไม่มี"> <!ENTITY zotero.preferences.fontSize "ขนาดตัวอักษร:"> <!ENTITY zotero.preferences.fontSize.small "เล็ก"> <!ENTITY zotero.preferences.fontSize.medium "กลาง"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "รับรูปแบบเพิ่มเติม..."> -<!ENTITY zotero.preferences.prefpane.keys "คีย์ลัด"> - <!ENTITY zotero.preferences.keys.openZotero "เปิด/ปิดแผง Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "เปลี่ยนสู่แบบเต็มจอ"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "ขั้นสูง"> <!ENTITY zotero.preferences.advanced.filesAndFolders "แฟ้มและโฟลเดอร์"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "หาที่ตั้ง"> <!ENTITY zotero.preferences.locate.locateEngineManager "ตัวจัดการเครื่องมือค้นหาบทความ"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "ส่งไปเครื่องบริการของ Zotero"> <!ENTITY zotero.preferences.openAboutConfig "เปิด about:config"> -<!ENTITY zotero.preferences.openCSLEdit "เปิดตัวจัดการ CSL"> -<!ENTITY zotero.preferences.openCSLPreview "เปิดดูตัวอย่าง CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "เปิด about:memory"> diff --git a/chrome/locale/th-TH/zotero/zotero.dtd b/chrome/locale/th-TH/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "ลบ"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "แปลงแบบอักษร"> <!ENTITY zotero.item.textTransform.titlecase "แบบชื่อเรื่อง"> <!ENTITY zotero.item.textTransform.sentencecase "แบบประโยค"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "หมายเหตุใหม่"> <!ENTITY zotero.toolbar.note.standalone "หมายเหตุแบบสแตนด์อะโลนใหม่"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/th-TH/zotero/zotero.properties b/chrome/locale/th-TH/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=สร้าง general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=ดู %S สำหรับข้อมูลเพิ่มเติม +general.open=Open %S general.enable=ใช้งาน general.disable=ไม่ใช้งาน general.remove=ลบออก @@ -203,6 +204,9 @@ pane.items.trash.multiple=คุณแน่ใจหรือว่าคุณ pane.items.delete.title=ลบ pane.items.delete=คุณแน่ใจหรือว่าต้องการลบรายการที่เลือก? pane.items.delete.multiple=คุณแน่ใจหรือว่าต้องการลบรายการที่เลือก? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=ลบรายการที่เลือกอยู่ pane.items.menu.remove.multiple=ลบรายการที่เลือกอยู่ pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=สร้างรายการแม่จาก pane.items.menu.createParent.multiple=สร้างรายการแม่จากรายการที่เลือก pane.items.menu.renameAttachments=เปลี่ยนชื่อแฟ้มจากข้อมูลเมทาของรายการแม่ pane.items.menu.renameAttachments.multiple=เปลี่ยนชื่อแฟ้มจากข้อมูลเมทาของรายการแม่ +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=จดหมายถึง %S pane.items.letter.twoParticipants=จดหมายถึง %S และ %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=พิมพ์ชื่อเรื่องหร firstRunGuidance.quickFormatMac=พิมพ์ชื่อเรื่องหรือผู้แต่งเพื่อค้นหาเอกสารอ้างอิง\n\nหลังจากเลือกแล้ว ให้คลิกฟองหรือกด Cmd-\u2193 เพื่อเพิ่มเลขหน้า คำนำหน้าหรือคำตามหลัง คุณสามารถใส่เลขหน้าไปพร้อมกับคำที่ต้องการค้นหาได้โดยตรง\n\nคุณสามารถแก้ไขการอ้างอิงในโปรแกรมประมวลผลคำได้โดยตรง firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/tr-TR/zotero/csledit.dtd b/chrome/locale/tr-TR/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/tr-TR/zotero/cslpreview.dtd b/chrome/locale/tr-TR/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/tr-TR/zotero/preferences.dtd b/chrome/locale/tr-TR/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Tarayıcı bölmesi"> <!ENTITY zotero.preferences.showIn.separateTab "Ayrı sekme"> <!ENTITY zotero.preferences.showIn.appTab "Uygulama sekmesi"> -<!ENTITY zotero.preferences.statusBarIcon "Durum çubuğu simgesi:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Hiçbiri"> <!ENTITY zotero.preferences.fontSize "Yazıtipi boyutu:"> <!ENTITY zotero.preferences.fontSize.small "Küçük"> <!ENTITY zotero.preferences.fontSize.medium "Orta"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Ek stiller indir..."> -<!ENTITY zotero.preferences.prefpane.keys "Kısayol Tuşları"> - <!ENTITY zotero.preferences.keys.openZotero "Zotero Bölmesini Aç/Kapa"> <!ENTITY zotero.preferences.keys.saveToZotero "Zotero'ya Kaydet (adres çubuğu ikonu)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Tam Ekran Moduna Geç"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Gelişmiş"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Dosyalar ve Klasörler"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Yerini Belirle"> <!ENTITY zotero.preferences.locate.locateEngineManager "Makale Bakma Motoru Yöneticisi"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Zotero Sunucusuna Gönder"> <!ENTITY zotero.preferences.openAboutConfig "about:config'i Aç"> -<!ENTITY zotero.preferences.openCSLEdit "CSL Düzenleyicisini Aç"> -<!ENTITY zotero.preferences.openCSLPreview "CSL Ön İzlemesini Aç"> +<!ENTITY zotero.preferences.openCSLEdit "Stil Düzenleyicisini Aç"> +<!ENTITY zotero.preferences.openCSLPreview "Stil Önizleyicisini Aç"> <!ENTITY zotero.preferences.openAboutMemory "about:memory'yi Aç."> diff --git a/chrome/locale/tr-TR/zotero/zotero.dtd b/chrome/locale/tr-TR/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Sil"> <!ENTITY zotero.general.ok "Tamam"> <!ENTITY zotero.general.cancel "İptal Et"> +<!ENTITY zotero.general.refresh "Yenile"> +<!ENTITY zotero.general.saveAs "Farklı Kaydet..."> <!ENTITY zotero.errorReport.title "Zotero Hata Raporu"> <!ENTITY zotero.errorReport.unrelatedMessages "Bu, Zotero ile ilgili olmayan mesajlar içerebilir."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Metni Dönüştür"> <!ENTITY zotero.item.textTransform.titlecase "Başlık Biçimi"> <!ENTITY zotero.item.textTransform.sentencecase "Cümle Biçimi"> -<!ENTITY zotero.item.creatorTransform.nameSwap "İlk ve soy adlarını takas et"> +<!ENTITY zotero.item.creatorTransform.nameSwap "İlk ve Soyadları Takas Et"> <!ENTITY zotero.toolbar.newNote "Yeni Not"> <!ENTITY zotero.toolbar.note.standalone "Yeni Bağımsız Not"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "URI'ye Bağlantı Ekle."> <!ENTITY zotero.attachLink.label.link "Bağlantı"> <!ENTITY zotero.attachLink.label.title "Başlık"> - - diff --git a/chrome/locale/tr-TR/zotero/zotero.properties b/chrome/locale/tr-TR/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Oluştur general.delete=Sil general.moreInformation=Daha Bilgi general.seeForMoreInformation=Daha fazla bilgi için bakınız: %S +general.open=Open %S general.enable=Etkinleştir: general.disable=Seçilemez Kıl general.remove=Kaldır @@ -203,6 +204,9 @@ pane.items.trash.multiple=Seçili eserleri çöpe göndermeyi istediğinize emin pane.items.delete.title=Sil pane.items.delete=Seçili olan bu eseri silmek istediğinize emin misiniz? pane.items.delete.multiple=Seçili olan bu eserleri silmek istediğinize emin misiniz? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Eseri Dermeden Sil pane.items.menu.remove.multiple=Eserleri Dermeden Sil pane.items.menu.moveToTrash=Eseri sil... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Üst Eser Oluştur. pane.items.menu.createParent.multiple=Üst Eserler Oluştur pane.items.menu.renameAttachments=Üstveriden dosyayı tekrar adlandır. pane.items.menu.renameAttachments.multiple=Üstveriden dosyaları tekrar adlandır. +pane.items.showItemInLibrary=Eseri Kitaplıkta Göster pane.items.letter.oneParticipant=%S'ye mektup pane.items.letter.twoParticipants=%S ve %S'ye mektup @@ -365,7 +370,7 @@ itemFields.numberOfVolumes=Cilt Sayısı itemFields.committee=Kurul itemFields.assignee=Devralan itemFields.patentNumber=Patent Numarası -itemFields.priorityNumbers=Öncelik Sayısı +itemFields.priorityNumbers=Öncelik Numarası itemFields.issueDate=Yayın Tarihi itemFields.references=Kaynakça itemFields.legalStatus=Hukuki Durum @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Bir kaynak aramak için bir başlık ya da yazar ad firstRunGuidance.quickFormatMac=Bir kaynak aramak için bir başlık ya da yazar adı yazınız.\n\nSeçiminizi yaptıktan sonra, sayfa numaraları, önekler ve sonekler eklemek için kabarcığa tıklayınız veya Cmd-\u2193'ya basınız. Ayrıca arama terimlerinize sayfa numarasını katarak, onları doğrudan ekleyebilirsiniz.\n\nGöndermelerinizi sözcük işlemcisi belgesinde doğrudan değiştirebilirsiniz. firstRunGuidance.toolbarButton.new=Zotero'yu başlatmak için buraya tıklayınız, ya da klavye kısayolu olan %S'i kullanınız. firstRunGuidance.toolbarButton.upgrade=Zotero simgesi, artık Firefox araç çubuğunda buulunabilir. Zotero'yu başlatmak için bu simgeye tıklayınız, ya da klavye kısayolu olan %S'i kullanınız. + +styles.bibliography=Bibliyografya +styles.editor.save=Kaynakça Biçimini Kaydet +styles.editor.warning.noItems=Zotero'da hiçbir eser seçilmedi. +styles.editor.warning.parseError=Hata ayrıştırıcı stili: +styles.editor.warning.renderError=Hata üreten göndermeler ve bibliyografyalar: +styles.editor.output.individualCitations=Tek Tek Göndermeler +styles.editor.output.singleCitation=Tek Gönderme ("birinci" sırada olan) +styles.preview.instructions=Zotero'da bir ya da birden çok eser seçip "Yenile" düğmesine basarak, bu eserlerin, kurulmuş CSL gönderme stilleri aracılığıyla nasıl sunulacağını görebilirsiniz. diff --git a/chrome/locale/uk-UA/zotero/about.dtd b/chrome/locale/uk-UA/zotero/about.dtd @@ -10,4 +10,4 @@ <!ENTITY zotero.thanks "Особливі подяки:"> <!ENTITY zotero.about.close "Закрити"> <!ENTITY zotero.moreCreditsAndAcknowledgements "Більше інформації та подяки"> -<!ENTITY zotero.citationProcessing "Обробка цитування та бібліографії "> +<!ENTITY zotero.citationProcessing "Обробка цитування та списку літератури"> diff --git a/chrome/locale/uk-UA/zotero/csledit.dtd b/chrome/locale/uk-UA/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/uk-UA/zotero/cslpreview.dtd b/chrome/locale/uk-UA/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/uk-UA/zotero/preferences.dtd b/chrome/locale/uk-UA/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Поточній панелі"> <!ENTITY zotero.preferences.showIn.separateTab "Окремій вкладці"> <!ENTITY zotero.preferences.showIn.appTab "Вкладці додатку"> -<!ENTITY zotero.preferences.statusBarIcon "Знакоч в рядку стану:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Немає"> <!ENTITY zotero.preferences.fontSize "Розмір шрифту:"> <!ENTITY zotero.preferences.fontSize.small "Маленький"> <!ENTITY zotero.preferences.fontSize.medium "Середній"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Завантажити додаткові стилі..."> -<!ENTITY zotero.preferences.prefpane.keys "Гарячі клавіши"> - <!ENTITY zotero.preferences.keys.openZotero "Відкрити/закрити панель Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Зберегти в Zotero (значок в адресному рядку браузера)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Перключенні повноекранного режиму"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Розширені"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Файли та каталоги"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Виявлені"> <!ENTITY zotero.preferences.locate.locateEngineManager "Диспетчер систем пошуку статей"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Відправити на сервер Zotero"> <!ENTITY zotero.preferences.openAboutConfig "Відкрити about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Відкрити редактор CSL"> -<!ENTITY zotero.preferences.openCSLPreview "Відкрити попередній перегляд CSL"> +<!ENTITY zotero.preferences.openCSLEdit "Відкрити редактор стилю"> +<!ENTITY zotero.preferences.openCSLPreview "Відкрити попередній перегляд стилю"> <!ENTITY zotero.preferences.openAboutMemory "Відкрити about:memory"> diff --git a/chrome/locale/uk-UA/zotero/standalone.dtd b/chrome/locale/uk-UA/zotero/standalone.dtd @@ -44,7 +44,7 @@ <!ENTITY copyCmd.key "C"> <!ENTITY copyCmd.accesskey "C"> <!ENTITY copyCitationCmd.label "Копіювати цитату"> -<!ENTITY copyBibliographyCmd.label "Копіювати бібліографію"> +<!ENTITY copyBibliographyCmd.label "Копіювати список літератури"> <!ENTITY pasteCmd.label "Вставити"> <!ENTITY pasteCmd.key "V"> <!ENTITY pasteCmd.accesskey "P"> diff --git a/chrome/locale/uk-UA/zotero/zotero.dtd b/chrome/locale/uk-UA/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Видалити"> <!ENTITY zotero.general.ok "Гаразд"> <!ENTITY zotero.general.cancel "Відміна"> +<!ENTITY zotero.general.refresh "Оновити"> +<!ENTITY zotero.general.saveAs "Зберегти як..."> <!ENTITY zotero.errorReport.title "Звіт про помилку в Zotero"> <!ENTITY zotero.errorReport.unrelatedMessages "Це може включати повідомлення, які не відносяться до Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Трансформувати текст"> <!ENTITY zotero.item.textTransform.titlecase "Кожне Слово з Заголовної Букви"> <!ENTITY zotero.item.textTransform.sentencecase "Як у реченні"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Переключення ім'я/прізвие"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Поміняти місцями ім'я та прізвище"> <!ENTITY zotero.toolbar.newNote "Нова примітка"> <!ENTITY zotero.toolbar.note.standalone "Нова окрема примітка"> @@ -159,10 +161,10 @@ <!ENTITY zotero.selectitems.cancel.label "Відмінити"> <!ENTITY zotero.selectitems.select.label "Гаразд"> -<!ENTITY zotero.bibliography.title "Створити бібліографію"> +<!ENTITY zotero.bibliography.title "Створити цитування/список літератури"> <!ENTITY zotero.bibliography.style.label "Стиль цитування:"> <!ENTITY zotero.bibliography.outputMode "Режим вводу:"> -<!ENTITY zotero.bibliography.bibliography "Бібліографія"> +<!ENTITY zotero.bibliography.bibliography "Список літератури"> <!ENTITY zotero.bibliography.outputMethod "Метод вводу:"> <!ENTITY zotero.bibliography.saveAsRTF.label "Зберегти як RTF"> <!ENTITY zotero.bibliography.saveAsHTML.label "Зберегти як HTML"> @@ -171,7 +173,7 @@ <!ENTITY zotero.integration.docPrefs.title "Налаштування документу"> <!ENTITY zotero.integration.addEditCitation.title "Додати/редагувати цитату"> -<!ENTITY zotero.integration.editBibliography.title "Редагувати бібліографію"> +<!ENTITY zotero.integration.editBibliography.title "Редагувати список літератури"> <!ENTITY zotero.integration.quickFormatDialog.title "Швидке форматування цитати"> <!ENTITY zotero.progress.title "Хід виконання"> @@ -223,7 +225,7 @@ <!ENTITY zotero.integration.showEditor.label "Покзати редактор"> <!ENTITY zotero.integration.classicView.label "Класичний вигляд"> -<!ENTITY zotero.integration.references.label "Посилання і бібліографії"> +<!ENTITY zotero.integration.references.label "Посилання в списку літератури"> <!ENTITY zotero.sync.button "Синхронізувати з сервером Zotero"> <!ENTITY zotero.sync.error "Помилка сінхронізації"> @@ -264,7 +266,7 @@ <!ENTITY zotero.rtfScan.ambiguousCitations.label "Неоднозначні цитати"> <!ENTITY zotero.rtfScan.mappedCitations.label "Визначені цитати"> <!ENTITY zotero.rtfScan.introPage.label "Вступ"> -<!ENTITY zotero.rtfScan.introPage.description "Zotero може автоматично витягти і переформатувати цитати та вставити бібліографію в файл RTF. Наразі функція сканування RTF розпізнає цитати в наступних форматах:"> +<!ENTITY zotero.rtfScan.introPage.description "Zotero може автоматично витягти і переформатувати цитати та вставити список літератури в файл RTF. Наразі функція сканування RTF розпізнає цитати в наступних форматах:"> <!ENTITY zotero.rtfScan.introPage.description2 "Щоб почати, виберіть нижче вхідний файл RTF та вихідний файл:"> <!ENTITY zotero.rtfScan.scanPage.label "Сканування на наявність цитат"> <!ENTITY zotero.rtfScan.scanPage.description "Zotero сканує ваш документ на наявність цитат. Зачекайте, будь ласка."> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Прикріпити посилання на URI"> <!ENTITY zotero.attachLink.label.link "Посилання:"> <!ENTITY zotero.attachLink.label.title "Назва"> - - diff --git a/chrome/locale/uk-UA/zotero/zotero.properties b/chrome/locale/uk-UA/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Створити general.delete=Видалити general.moreInformation=Додаткова інформація general.seeForMoreInformation=Дивись %S для отримання додаткової інформації. +general.open=Open %S general.enable=Включити general.disable=Вимкнути general.remove=Видалити @@ -203,6 +204,9 @@ pane.items.trash.multiple=Ви впевнені, що бажаєте перем pane.items.delete.title=Видалити pane.items.delete=Ви впевнені, що бажаєте видалити вибраний документ? pane.items.delete.multiple=Ви впевнені, що бажаєте видалити вибрані документи? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Видалити вибраний документ з колекції pane.items.menu.remove.multiple=Видалити вибрані документи з колекції pane.items.menu.moveToTrash=Перемістити документ до Кошику... @@ -221,6 +225,7 @@ pane.items.menu.createParent=Створити батьківський доку pane.items.menu.createParent.multiple=Створити батьківські документи pane.items.menu.renameAttachments=Перейменувати файл за батьківськими метаданими pane.items.menu.renameAttachments.multiple=Перейменувати файли за батьківськими метаданими +pane.items.showItemInLibrary=Показати документ в бібліотеці pane.items.letter.oneParticipant=Лист до %S pane.items.letter.twoParticipants=Лист до %S та %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Введіть назву або автора дл firstRunGuidance.quickFormatMac=Введіть назву або автора для пошуку посилання. \n\nПісля того як ви зробили свій вибір, натисніть виноску або натисніть Cmd-↓ щоб додати номери сторінок, префікси або суфікси. Ви можете також включити номер сторінки разом з умовами пошуку, щоб додати його безпосередньо. \n\nВи можете редагувати цитати прямо в документі текстового реактора. firstRunGuidance.toolbarButton.new=Натисніть тут, щоб відкрити Zotero або використайте комбінацію клавіш %S. firstRunGuidance.toolbarButton.upgrade=Значок Zotero тепер можна знайти на панелі інструментів Firefox. Клацніть по значку, щоб відкрити Zotero або використовуйте комбінацію клавіш %S. + +styles.bibliography=Список літератури +styles.editor.save=Зберегти стиль цитування +styles.editor.warning.noItems=Жодного документу не вибрано в Zotero. +styles.editor.warning.parseError=Помилка при обробці стилю: +styles.editor.warning.renderError=Помилка при створенні цитувань та списку літератури: +styles.editor.output.individualCitations=Індивідуальні цитування +styles.editor.output.singleCitation=Окреме цитування (з позиціює "перше") +styles.preview.instructions=Виберіть один чи більше документів Zotero та натисніть кнопку "Оновити", щоб побачити, як ці документи будуть представлені відповідно до встановлених стилів цитування CSL. diff --git a/chrome/locale/vi-VN/zotero/csledit.dtd b/chrome/locale/vi-VN/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/vi-VN/zotero/cslpreview.dtd b/chrome/locale/vi-VN/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/vi-VN/zotero/preferences.dtd b/chrome/locale/vi-VN/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "Browser pane"> <!ENTITY zotero.preferences.showIn.separateTab "Separate tab"> <!ENTITY zotero.preferences.showIn.appTab "App tab"> -<!ENTITY zotero.preferences.statusBarIcon "Biểu tượng trong thanh trạng thái:"> -<!ENTITY zotero.preferences.statusBarIcon.none "Không biểu tượng"> <!ENTITY zotero.preferences.fontSize "Cỡ chữ:"> <!ENTITY zotero.preferences.fontSize.small "Nhỏ"> <!ENTITY zotero.preferences.fontSize.medium "Trung bình"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "Get additional styles..."> -<!ENTITY zotero.preferences.prefpane.keys "Phím gõ tắt"> - <!ENTITY zotero.preferences.keys.openZotero "Mở/Đóng cửa sổ Zotero"> <!ENTITY zotero.preferences.keys.saveToZotero "Save to Zotero (address bar icon)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "Bật/Tắt chế độ Toàn-màn-hình"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "Nâng cao"> <!ENTITY zotero.preferences.advanced.filesAndFolders "Files and Folders"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "Locate"> <!ENTITY zotero.preferences.locate.locateEngineManager "Article Lookup Engine Manager"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "Submit to Zotero Server"> <!ENTITY zotero.preferences.openAboutConfig "Open about:config"> -<!ENTITY zotero.preferences.openCSLEdit "Open CSL Editor"> -<!ENTITY zotero.preferences.openCSLPreview "Open CSL Preview"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "Open about:memory"> diff --git a/chrome/locale/vi-VN/zotero/zotero.dtd b/chrome/locale/vi-VN/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "Delete"> <!ENTITY zotero.general.ok "OK"> <!ENTITY zotero.general.cancel "Cancel"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero Error Report"> <!ENTITY zotero.errorReport.unrelatedMessages "This may include messages unrelated to Zotero."> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "Biến đổi Văn bản"> <!ENTITY zotero.item.textTransform.titlecase "Viết hoa đầu từ"> <!ENTITY zotero.item.textTransform.sentencecase "Sentence case"> -<!ENTITY zotero.item.creatorTransform.nameSwap "Swap first/last names"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "New Note"> <!ENTITY zotero.toolbar.note.standalone "Ghi chép Độc lập mới"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/vi-VN/zotero/zotero.properties b/chrome/locale/vi-VN/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=Create general.delete=Delete general.moreInformation=More Information general.seeForMoreInformation=See %S for more information. +general.open=Open %S general.enable=Enable general.disable=Disable general.remove=Remove @@ -203,6 +204,9 @@ pane.items.trash.multiple=Are you sure you want to move the selected items to th pane.items.delete.title=Xóa pane.items.delete=Bạn có chắc bạn muốn xóa biểu ghi vừa chọn? pane.items.delete.multiple=Bạn có chắc bạn muốn xóa những biểu ghi vừa chọn? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=Xóa Biểu ghi vừa chọn pane.items.menu.remove.multiple=Xóa các Biểu ghi vừa chọn pane.items.menu.moveToTrash=Move Item to Trash… @@ -221,6 +225,7 @@ pane.items.menu.createParent=Create Parent Item pane.items.menu.createParent.multiple=Create Parent Items pane.items.menu.renameAttachments=Rename File from Parent Metadata pane.items.menu.renameAttachments.multiple=Rename Files from Parent Metadata +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=Thư gửi đến %S pane.items.letter.twoParticipants=Thư gửi đến %S và %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=Type a title or author to search for a reference.\n firstRunGuidance.quickFormatMac=Type a title or author to search for a reference.\n\nAfter you've made your selection, click the bubble or press Cmd-↓ to add page numbers, prefixes, or suffixes. You can also include a page number along with your search terms to add it directly.\n\nYou can edit citations directly in the word processor document. firstRunGuidance.toolbarButton.new=Click here to open Zotero, or use the %S keyboard shortcut. firstRunGuidance.toolbarButton.upgrade=The Zotero icon can now be found in the Firefox toolbar. Click the icon to open Zotero, or use the %S keyboard shortcut. + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/locale/zh-CN/zotero/csledit.dtd b/chrome/locale/zh-CN/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/zh-CN/zotero/cslpreview.dtd b/chrome/locale/zh-CN/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/zh-CN/zotero/preferences.dtd b/chrome/locale/zh-CN/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "浏览器边栏"> <!ENTITY zotero.preferences.showIn.separateTab "独立标签页"> <!ENTITY zotero.preferences.showIn.appTab "App 标签页"> -<!ENTITY zotero.preferences.statusBarIcon "状态栏图标:"> -<!ENTITY zotero.preferences.statusBarIcon.none "无"> <!ENTITY zotero.preferences.fontSize "字体大小:"> <!ENTITY zotero.preferences.fontSize.small "小"> <!ENTITY zotero.preferences.fontSize.medium "中"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "获取其它样式..."> -<!ENTITY zotero.preferences.prefpane.keys "快捷键"> - <!ENTITY zotero.preferences.keys.openZotero "开/关 Zotero 面板"> <!ENTITY zotero.preferences.keys.saveToZotero "保存到Zotero (地址栏图标)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "切换全屏模式"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "高级"> <!ENTITY zotero.preferences.advanced.filesAndFolders "文件和文件夹"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "定位"> <!ENTITY zotero.preferences.locate.locateEngineManager "文章检索引擎管理器"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "提交到 Zotero 服务器"> <!ENTITY zotero.preferences.openAboutConfig "打开配置编辑器"> -<!ENTITY zotero.preferences.openCSLEdit "打开 CSL 编辑器"> -<!ENTITY zotero.preferences.openCSLPreview "打开 CSL 预览"> +<!ENTITY zotero.preferences.openCSLEdit "打开样式编辑器"> +<!ENTITY zotero.preferences.openCSLPreview "打开样式预览"> <!ENTITY zotero.preferences.openAboutMemory "打开内存管理器"> diff --git a/chrome/locale/zh-CN/zotero/zotero.dtd b/chrome/locale/zh-CN/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "删除"> <!ENTITY zotero.general.ok "确定"> <!ENTITY zotero.general.cancel "取消"> +<!ENTITY zotero.general.refresh "刷新"> +<!ENTITY zotero.general.saveAs "另存为..."> <!ENTITY zotero.errorReport.title "Zotero 错误报告"> <!ENTITY zotero.errorReport.unrelatedMessages "这里可能包括和Zotero无关的消息。"> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "格式变换"> <!ENTITY zotero.item.textTransform.titlecase "标题大写"> <!ENTITY zotero.item.textTransform.sentencecase "句首大写"> -<!ENTITY zotero.item.creatorTransform.nameSwap "交换 名和姓"> +<!ENTITY zotero.item.creatorTransform.nameSwap "交换 首/尾 名称"> <!ENTITY zotero.toolbar.newNote "新建笔记"> <!ENTITY zotero.toolbar.note.standalone "新建独立笔记"> @@ -285,8 +287,6 @@ <!ENTITY zotero.downloadManager.saveToLibrary.description "附件无法保存到当前选中的文献库. 不过, 该条目将被保存到您的文献库中."> <!ENTITY zotero.downloadManager.noPDFTools.description "要使用该功能, 您必须在 Zotero 首选项中的搜索选项卡里安装 PDF 工具."> -<!ENTITY zotero.attachLink.title "Attach Link to URI"> -<!ENTITY zotero.attachLink.label.link "Link:"> -<!ENTITY zotero.attachLink.label.title "Title:"> - - +<!ENTITY zotero.attachLink.title "将链接附加到 URI"> +<!ENTITY zotero.attachLink.label.link "链接:"> +<!ENTITY zotero.attachLink.label.title "标题:"> diff --git a/chrome/locale/zh-CN/zotero/zotero.properties b/chrome/locale/zh-CN/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=创建 general.delete=删除 general.moreInformation=更多信息 general.seeForMoreInformation=查阅 %S 获取更多信息. +general.open=Open %S general.enable=启用 general.disable=禁用 general.remove=移除 @@ -195,14 +196,17 @@ tagColorChooser.maxTags=每个库只允许为%S个标签标记颜色 pane.items.loading=正在加载条目列表... pane.items.columnChooser.moreColumns=更多列 pane.items.columnChooser.secondarySort=二次排序 (%S) -pane.items.attach.link.uri.unrecognized=Zotero did not recognize the URI you entered. Please check the address and try again. -pane.items.attach.link.uri.file=To attach a link to a file, please use “%S”. +pane.items.attach.link.uri.unrecognized=Zotero 无法识别你输入的 URI。请检查地址并再试一次。 +pane.items.attach.link.uri.file=若要将链接附加到文件中,请使用 “%S”。 pane.items.trash.title=移动到回收站 pane.items.trash=您确定要将选中的条目移动到回收站吗? pane.items.trash.multiple=您确定要将选中的条目移动到回收站吗? pane.items.delete.title=删除 pane.items.delete=您确定要删除所选的条目吗? pane.items.delete.multiple=您确定要删除所选的条目吗? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=从分类中移除条目 pane.items.menu.remove.multiple=从分类中移除条目 pane.items.menu.moveToTrash=删除条目… @@ -221,6 +225,7 @@ pane.items.menu.createParent=创建父条目 pane.items.menu.createParent.multiple=创建父条目 pane.items.menu.renameAttachments=根据父级元数据重命名文件 pane.items.menu.renameAttachments.multiple=根据父级元数据重命名文件 +pane.items.showItemInLibrary=显示库中项目 pane.items.letter.oneParticipant=函至 %S pane.items.letter.twoParticipants=函至 %S 和 %S @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=键入一个标题或作者搜索特定的参考文 firstRunGuidance.quickFormatMac=键入一个标题或作者搜索特定的参考文献.\n\n一旦选中, 点击气泡或按下 Cmd-↓ 添加页码, 前缀或后缀.您也可以将页码直接包含在你的搜索条目中, 然后直接添加.\n\n您可以在文字处理程序中直接编辑引文. firstRunGuidance.toolbarButton.new=点击这里打开Zotero,或者使用快捷键 %S 。 firstRunGuidance.toolbarButton.upgrade=Zotero图标可以在Firefox工具栏找到。点击图标打开Zotero,或者使用快捷键 %S 。 + +styles.bibliography=参考书目 +styles.editor.save=保存引文样式 +styles.editor.warning.noItems=没有在 Zotero 中选定项目。 +styles.editor.warning.parseError=解析样式时出错: +styles.editor.warning.renderError=生成引文和参考书目出错: +styles.editor.output.individualCitations=个别引文 +styles.editor.output.singleCitation=单引文 (位于 "第一") +styles.preview.instructions=在 Zotero 中选择一个或多个项并单击 "刷新" 按钮,以查看这些项目用已安装的 CSL 引文样式呈现。 diff --git a/chrome/locale/zh-TW/zotero/csledit.dtd b/chrome/locale/zh-TW/zotero/csledit.dtd @@ -0,0 +1,4 @@ +<!ENTITY styles.editor "Zotero Style Editor"> + +<!ENTITY styles.editor.suppressAuthor "Suppress Author"> +<!ENTITY styles.editor.citePosition "Cite Position:"> diff --git a/chrome/locale/zh-TW/zotero/cslpreview.dtd b/chrome/locale/zh-TW/zotero/cslpreview.dtd @@ -0,0 +1,9 @@ +<!ENTITY styles.preview "Zotero Style Preview"> + +<!ENTITY styles.preview.citationFormat "Citation Format:"> +<!ENTITY styles.preview.citationFormat.all "all"> +<!ENTITY styles.preview.citationFormat.author "author"> +<!ENTITY styles.preview.citationFormat.authorDate "author-date"> +<!ENTITY styles.preview.citationFormat.label "label"> +<!ENTITY styles.preview.citationFormat.note "note"> +<!ENTITY styles.preview.citationFormat.numeric "numeric"> diff --git a/chrome/locale/zh-TW/zotero/preferences.dtd b/chrome/locale/zh-TW/zotero/preferences.dtd @@ -12,8 +12,6 @@ <!ENTITY zotero.preferences.showIn.browserPane "瀏覽器窗格"> <!ENTITY zotero.preferences.showIn.separateTab "不同的頁籤"> <!ENTITY zotero.preferences.showIn.appTab "App 頁籤"> -<!ENTITY zotero.preferences.statusBarIcon "狀態列圖示:"> -<!ENTITY zotero.preferences.statusBarIcon.none "無"> <!ENTITY zotero.preferences.fontSize "字型大小:"> <!ENTITY zotero.preferences.fontSize.small "小"> <!ENTITY zotero.preferences.fontSize.medium "中"> @@ -125,8 +123,6 @@ <!ENTITY zotero.preferences.cite.styles.styleManager.csl "文獻條樣式語言 CSL"> <!ENTITY zotero.preferences.export.getAdditionalStyles "獲取更多樣式…"> -<!ENTITY zotero.preferences.prefpane.keys "快鍵"> - <!ENTITY zotero.preferences.keys.openZotero "開/關 Zotero 窗格"> <!ENTITY zotero.preferences.keys.saveToZotero "儲存到 Zotero (網址列圖示)"> <!ENTITY zotero.preferences.keys.toggleFullscreen "切換全螢幕模式"> @@ -164,6 +160,7 @@ <!ENTITY zotero.preferences.prefpane.advanced "進階"> <!ENTITY zotero.preferences.advanced.filesAndFolders "檔案與資料夾"> +<!ENTITY zotero.preferences.advanced.keys "Shortcuts"> <!ENTITY zotero.preferences.prefpane.locate "查詢"> <!ENTITY zotero.preferences.locate.locateEngineManager "論文查詢引擎管理器"> @@ -204,6 +201,6 @@ <!ENTITY zotero.preferences.debugOutputLogging.submitToServer "提交到 Zotero 伺服器"> <!ENTITY zotero.preferences.openAboutConfig "開啟 about:config"> -<!ENTITY zotero.preferences.openCSLEdit "編輯文獻條樣式"> -<!ENTITY zotero.preferences.openCSLPreview "預覽文獻條樣式"> +<!ENTITY zotero.preferences.openCSLEdit "Open Style Editor"> +<!ENTITY zotero.preferences.openCSLPreview "Open Style Preview"> <!ENTITY zotero.preferences.openAboutMemory "開啟 about:memory"> diff --git a/chrome/locale/zh-TW/zotero/zotero.dtd b/chrome/locale/zh-TW/zotero/zotero.dtd @@ -6,6 +6,8 @@ <!ENTITY zotero.general.delete "刪除"> <!ENTITY zotero.general.ok "確定"> <!ENTITY zotero.general.cancel "取消"> +<!ENTITY zotero.general.refresh "Refresh"> +<!ENTITY zotero.general.saveAs "Save As…"> <!ENTITY zotero.errorReport.title "Zotero 錯誤報告"> <!ENTITY zotero.errorReport.unrelatedMessages "這可能包括無關於 Zotero 的訊息。"> @@ -123,7 +125,7 @@ <!ENTITY zotero.item.textTransform "轉換文字"> <!ENTITY zotero.item.textTransform.titlecase "標題大小寫"> <!ENTITY zotero.item.textTransform.sentencecase "句首字母大小寫"> -<!ENTITY zotero.item.creatorTransform.nameSwap "互換西方語言方式的首名/尾名(first/last names)"> +<!ENTITY zotero.item.creatorTransform.nameSwap "Swap First/Last Names"> <!ENTITY zotero.toolbar.newNote "新增筆記"> <!ENTITY zotero.toolbar.note.standalone "新增獨立筆記"> @@ -288,5 +290,3 @@ <!ENTITY zotero.attachLink.title "Attach Link to URI"> <!ENTITY zotero.attachLink.label.link "Link:"> <!ENTITY zotero.attachLink.label.title "Title:"> - - diff --git a/chrome/locale/zh-TW/zotero/zotero.properties b/chrome/locale/zh-TW/zotero/zotero.properties @@ -42,6 +42,7 @@ general.create=建立 general.delete=刪除 general.moreInformation=更多資訊 general.seeForMoreInformation=更多資訊請看 %S。 +general.open=Open %S general.enable=啟用 general.disable=停用 general.remove=移除 @@ -203,6 +204,9 @@ pane.items.trash.multiple=確定要將所選眾項目移到垃圾筒? pane.items.delete.title=刪除 pane.items.delete=確定要刪除所選項目嗎? pane.items.delete.multiple=確定要刪除所選眾項目嗎? +pane.items.remove.title=Remove from Collection +pane.items.remove=Are you sure you want to remove the selected item from this collection? +pane.items.remove.multiple=Are you sure you want to remove the selected items from this collection? pane.items.menu.remove=從文獻庫移除項目 pane.items.menu.remove.multiple=從文獻庫移除眾項目 pane.items.menu.moveToTrash=將項目移到垃圾筒… @@ -221,6 +225,7 @@ pane.items.menu.createParent=建立上層(parent)項目 pane.items.menu.createParent.multiple=建立眾上層(parent)項目 pane.items.menu.renameAttachments=以上層屬性資料重新命名 pane.items.menu.renameAttachments.multiple=以上層屬性資料重新命名 +pane.items.showItemInLibrary=Show Item in Library pane.items.letter.oneParticipant=寄給 %S 的信件 pane.items.letter.twoParticipants=寄給 %S 及 %S 的信件 @@ -968,3 +973,12 @@ firstRunGuidance.quickFormat=輸入標題或作者以找出參考文獻條。\n\ firstRunGuidance.quickFormatMac=輸入標題或作者以找出參考文獻條。\n\n選擇後,按橢圓泡或按 Ctrl-↓ 以加入頁碼或前綴或後綴。可在待找字後加上頁碼,產生無前後綴的引用文獻條。\n\n也可在文書處理器直接編輯引用文獻條。 firstRunGuidance.toolbarButton.new=按此以開啟 Zotero,或用 %S 快鍵。 firstRunGuidance.toolbarButton.upgrade=Firefox 工具列上可看到 Zotero 圖示了。按圖示以開啟 Zotero,或用 %S 快鍵。 + +styles.bibliography=Bibliography +styles.editor.save=Save Citation Style +styles.editor.warning.noItems=No items selected in Zotero. +styles.editor.warning.parseError=Error parsing style: +styles.editor.warning.renderError=Error generating citations and bibliography: +styles.editor.output.individualCitations=Individual Citations +styles.editor.output.singleCitation=Single Citation (with position "first") +styles.preview.instructions=Select one or more items in Zotero and click the "Refresh" button to see how these items are rendered by the installed CSL citation styles. diff --git a/chrome/skin/default/zotero/overlay.css b/chrome/skin/default/zotero/overlay.css @@ -1,7 +1,11 @@ -#zotero-status-image -{ +#zotero-status-image { width: 16px; height: 16px; + margin-right: 3px; +} + +#zotero-status-image:not(.translate):not(:hover) { + filter: grayscale(100%); } #zotero-pane @@ -513,7 +517,6 @@ #zotero-tb-sync-error, #zotero-tb-sync-error[mode=warning] { list-style-image: url(chrome://zotero/skin/error.png); - margin-right: -5px; } #zotero-tb-sync-error[mode=error] diff --git a/chrome/skin/default/zotero/preferences.css b/chrome/skin/default/zotero/preferences.css @@ -73,7 +73,7 @@ grid row hbox:first-child } -#showIn radio, #statusBarIcon radio +#showIn radio { width: 120px; } @@ -83,11 +83,6 @@ grid row hbox:first-child margin-right: 20px; } -#statusBarIcon radio .radio-icon -{ - margin-left: 6px; -} - /* * Sync pane @@ -241,25 +236,20 @@ grid row hbox:first-child height: 250px; } -/* Shortcut Keys pane */ -#zotero-prefpane-keys row -{ - -moz-box-align: center; -} - #styleManager-updated { width: 105px; } -#zotero-prefpane-keys textbox +/* Shortcut Keys pane */ +#zotero-prefpane-advanced-keys-tab row { - margin-left: -1px; + -moz-box-align: center; } -#zotero-prefpane-keys checkbox +#zotero-prefpane-advanced-keys-tab textbox { - margin: .75em 0; + margin-left: -1px; } treechildren::-moz-tree-checkbox { diff --git a/chrome/skin/default/zotero/treeitem-webpage@2x.png b/chrome/skin/default/zotero/treeitem-webpage@2x.png Binary files differ. diff --git a/chrome/skin/default/zotero/zotero-z-16px-australis.svg b/chrome/skin/default/zotero/zotero-z-16px-australis.svg @@ -1,65 +0,0 @@ -<?xml version="1.0"?> - -<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="16px" height="16px"> - <defs> - <style type="text/css"><![CDATA[ - /* Linux */ - #s1 { - stop-color: #899199; - } - #s2 { - stop-color: #7f868d; - } - - /* Mac OS X (except Aqua on Snow Leopard) */ - @media (-moz-mac-graphite-theme), (-moz-mac-lion-theme) { - #s1 { - stop-color: #939393; - } - #s2 { - stop-color: #848484; - } - } - - /* Windows Classic & Luna */ - @media (-moz-windows-theme) { - #s1 { - stop-color: #899198; - } - #s2 { - stop-color: #737b82; - } - } - - /* Windows Aero */ - @media (-moz-windows-theme: aero), (-moz-windows-theme: aero-lite) { - #s1 { - stop-color: #85919e; - } - #s2 { - stop-color: #68717d; - } - } - ]]></style> - <linearGradient x1="0" y1="2" x2="0" y2="30" gradientUnits="userSpaceOnUse" id="lg"> - <stop id="s1" offset="0" /> - <stop id="s2" offset="1" /> - </linearGradient> - <filter color-interpolation-filters="sRGB" id="f"> - <feGaussianBlur result="r8" stdDeviation="0.5" /> - <feOffset result="r11" dy="0.5" dx="0" /> - <feComposite in2="r11" operator="in" in="SourceGraphic" result="r6" /> - <feFlood flood-color="#000" flood-opacity="0.75" in="r6" result="r10" /> - <feBlend in2="r10" mode="normal" in="r6" result="r12" /> - <feComposite in2="SourceGraphic" operator="in" result="fbSourceGraphic" /> - <feColorMatrix values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0" in="fbSourceGraphic" result="fbSourceGraphicAlpha" /> - <feFlood in="fbSourceGraphic" result="flood" flood-color="#fff" flood-opacity="0.5" /> - <feComposite in2="fbSourceGraphic" operator="in" in="flood" result="c1" /> - <feGaussianBlur result="blur" stdDeviation="1.5 0.01" /> - <feOffset result="offset" dy="1.5" dx="0" /> - <feComposite in2="offset" operator="over" in="fbSourceGraphic" result="c2" /> - </filter> - </defs> - <polygon points="2.867,1 13.133,1 13.133,5.667 7.533,11.267 13.133,11.267 - 13.133,15 2.867,15 2.867,11.267 9.399,4.733 2.867,4.733" style="fill: url(#lg); stroke: #000; stroke-width: 0.2; stroke-miterlimit: 4; filter: url(#f);" /> -</svg> diff --git a/chrome/skin/default/zotero/zotero-z-32px-australis.svg b/chrome/skin/default/zotero/zotero-z-32px-australis.svg @@ -3,6 +3,10 @@ <svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="-8 -8 32 32" width="32px" height="32px"> <defs> <style type="text/css"><![CDATA[ + polygon { + stroke: #000; + } + /* Linux */ #s1 { stop-color: #899199; @@ -13,11 +17,14 @@ /* Mac OS X (except Aqua on Snow Leopard) */ @media (-moz-mac-graphite-theme), (-moz-mac-lion-theme) { + polygon { + stroke: #4d4d4d; + } #s1 { - stop-color: #939393; + stop-color: #4d4d4d; } #s2 { - stop-color: #848484; + stop-color: #4d4d4d; } } @@ -61,5 +68,5 @@ </filter> </defs> <polygon points="-2.267,-6 18.267,-6 18.267,3.333 7.066,14.533 - 18.267,14.533 18.267,22 -2.267,22 -2.267,14.533 10.8,1.467 -2.267,1.467" style="fill: url(#lg); stroke: #000; stroke-width: 0.2; stroke-miterlimit: 4; filter: url(#f);" /> + 18.267,14.533 18.267,22 -2.267,22 -2.267,14.533 10.8,1.467 -2.267,1.467" style="fill: url(#lg); stroke-width: 0.2; stroke-miterlimit: 4; filter: url(#f);" /> </svg> diff --git a/chrome/skin/default/zotero/zotero.css b/chrome/skin/default/zotero/zotero.css @@ -22,52 +22,51 @@ } /* - Add-on bar and toolbar icon -*/ - -/* Old styling */ -#zotero-toolbar-button { - list-style-image: url(chrome://zotero/skin/zotero-z-24px.png); -} - -#zotero-toolbar-button:active { - list-style-image: url(chrome://zotero/skin/zotero-z-24px-active.png); + * + * Toolbar icons + * + */ +#zotero-toolbar-main-button, +#zotero-toolbar-main-button-single { + list-style-image: url("chrome://zotero/skin/zotero-z-32px-australis.svg"); } -toolbar[iconsize="small"] #zotero-toolbar-button { - list-style-image: url(chrome://zotero/skin/zotero-z-16px.png); +#zotero-toolbar-save-button, +#zotero-toolbar-save-button-single { + list-style-image: url("chrome://zotero/skin/treeitem-webpage.png"); } -toolbar[iconsize="small"] #zotero-toolbar-button:active { - list-style-image: url(chrome://zotero/skin/zotero-z-16px-active.png); +#zotero-toolbar-save-button[cui-areatype="menu-panel"], +#zotero-toolbar-save-button-single[cui-areatype="menu-panel"], +toolbarpaletteitem[place="palette"] #zotero-toolbar-save-button, +toolbarpaletteitem[place="palette"] #zotero-toolbar-save-button-single { + list-style-image: url("chrome://zotero/skin/treeitem-webpage@2x.png"); } -/* Australis styling */ -#zotero-toolbar-button[cui-areatype="menu-panel"], -toolbarpaletteitem[place="palette"] > #zotero-toolbar-button, -#zotero-toolbar-button:active[cui-areatype="menu-panel"], -toolbarpaletteitem[place="palette"] > #zotero-toolbar-button:active { - list-style-image: url("chrome://zotero/skin/zotero-z-32px-australis.svg"); +@media (min-resolution: 1.5dppx) { + #zotero-toolbar-save-button[cui-areatype="toolbar"], + #zotero-toolbar-save-button-single[cui-areatype="toolbar"] { + list-style-image: url("chrome://zotero/skin/treeitem-webpage@2x.png"); + } } -#zotero-toolbar-button[cui-areatype="toolbar"], -#zotero-toolbar-button:active[cui-areatype="toolbar"] { - list-style-image: url("chrome://zotero/skin/zotero-z-16px-australis.svg") !important; +/* Show single icon for combo buttons in palette */ +toolbarpaletteitem[place="palette"] #zotero-toolbar-main-button { + list-style-image: url("chrome://zotero/skin/zotero-z-32px-australis.svg"); } - -#addon-bar #zotero-toolbar-button { - list-style-image: url(chrome://zotero/skin/zotero_status_bar.png); - height: 18px; -} - -#addon-bar #zotero-toolbar-button[compact="true"] { - width: 20px; - list-style-image: url(chrome://zotero/skin/zotero_status_bar_compact.png); +toolbarpaletteitem[place="palette"] #zotero-toolbar-buttons separator, +toolbarpaletteitem[place="palette"] #zotero-toolbar-buttons #zotero-toolbar-save-button { + display:none; } -#addon-bar #zotero-toolbar-button[error="true"] { - list-style-image: url(chrome://zotero/skin/zotero_status_bar_error.png); +/* Show webpage icon in gray when no translators */ +#zotero-toolbar-save-button:not(.translate), +#zotero-toolbar-save-button-single:not(.translate), +#zotero-toolbar-save-button[disabled="true"], +#zotero-toolbar-save-button-single[disabled="true"] { + filter: grayscale(100%); } +/* End toolbar icons */ /* Bindings */ diff --git a/chrome/skin/default/zotero/zotero_status_bar.png b/chrome/skin/default/zotero/zotero_status_bar.png Binary files differ. diff --git a/chrome/skin/default/zotero/zotero_status_bar_compact.png b/chrome/skin/default/zotero/zotero_status_bar_compact.png Binary files differ. diff --git a/chrome/skin/default/zotero/zotero_status_bar_error.png b/chrome/skin/default/zotero/zotero_status_bar_error.png Binary files differ. diff --git a/components/zotero-autocomplete.js b/components/zotero-autocomplete.js @@ -82,7 +82,7 @@ ZoteroAutoComplete.prototype.startSearch = Zotero.Promise.coroutine(function* (s + "SELECT tagID FROM itemTags WHERE itemID = ?))"; sqlParams.push(searchParams.itemID); } - sql += " ORDER BY name COLLATE locale"; + sql += " ORDER BY val COLLATE locale"; break; case 'creator': diff --git a/components/zotero-service.js b/components/zotero-service.js @@ -47,6 +47,7 @@ const xpcomFilesAll = [ 'translation/translator', 'translation/tlds', 'utilities', + 'isbn', 'utilities_internal', 'utilities_translate' ]; @@ -180,6 +181,21 @@ ZoteroContext.prototype = { } return zContext; + }, + + /** + * Shuts down Zotero, calls a callback (that may return a promise), + * then reinitializes Zotero. Returns a promise that is resolved + * when this process completes. + */ + "reinit":function(cb, isConnector) { + Services.obs.notifyObservers(zContext.Zotero, "zotero-before-reload", isConnector ? "connector" : "full"); + return zContext.Zotero.shutdown().then(function() { + return cb ? cb() : false; + }).finally(function() { + makeZoteroContext(isConnector); + zContext.Zotero.init(zInitOptions); + }); } }; diff --git a/defaults/preferences/zotero.js b/defaults/preferences/zotero.js @@ -26,7 +26,6 @@ pref("extensions.zotero.triggerProxyAuthentication", true); pref("extensions.zotero.proxyAuthenticationURLs", 'http://www.acm.org,http://www.ebscohost.com,http://www.elsevier.com,http://www.ieee.org,http://www.jstor.org,http://www.ovid.com,http://www.springer.com,http://www.tandfonline.com'); pref("extensions.zotero.cacheTranslatorData",true); pref("extensions.zotero.showIn", 1); -pref("extensions.zotero.statusBarIcon", 2); pref("extensions.zotero.browserContentContextMenu", true); pref("extensions.zotero.openURL.resolver","http://worldcatlibraries.org/registry/gateway"); pref("extensions.zotero.openURL.version","1.0"); @@ -45,6 +44,7 @@ pref("extensions.zotero.sortAttachmentsChronologically", false); pref("extensions.zotero.showTrashWhenEmpty", true); pref("extensions.zotero.trashAutoEmptyDays", 30); pref("extensions.zotero.viewOnDoubleClick", true); +pref("extensions.zotero.firstRunGuidance", true); pref("extensions.zotero.groups.copyChildLinks", true); pref("extensions.zotero.groups.copyChildFileAttachments", true); diff --git a/install.rdf b/install.rdf @@ -25,7 +25,7 @@ <Description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:minVersion>31.0</em:minVersion> - <em:maxVersion>35.*</em:maxVersion> + <em:maxVersion>36.*</em:maxVersion> </Description> </em:targetApplication> diff --git a/resource/config.js b/resource/config.js @@ -1,5 +1,6 @@ var ZOTERO_CONFIG = { GUID: 'zotero@chnm.gmu.edu', + CLIENT_NAME: 'Zotero', REPOSITORY_URL: 'https://repo.zotero.org/repo/', REPOSITORY_CHECK_INTERVAL: 86400, // 24 hours REPOSITORY_RETRY_INTERVAL: 3600, // 1 hour diff --git a/resource/schema/repotime.txt b/resource/schema/repotime.txt @@ -1 +1 @@ -2015-01-13 17:45:00 +2015-02-11 04:00:00 diff --git a/test/chrome.manifest b/test/chrome.manifest @@ -0,0 +1,7 @@ +content zotero-unit content/ +resource zotero-unit resource/ +resource zotero-unit-tests tests/ + +component {b8570031-be5e-46e8-9785-38cd50a5d911} components/zotero-unit.js +contract @mozilla.org/commandlinehandler/general-startup;1?type=zotero-unit {b8570031-be5e-46e8-9785-38cd50a5d911} +category command-line-handler m-zotero-unit @mozilla.org/commandlinehandler/general-startup;1?type=zotero-unit diff --git a/test/components/zotero-unit.js b/test/components/zotero-unit.js @@ -0,0 +1,52 @@ +"use strict"; +/* + ***** BEGIN LICENSE BLOCK ***** + + Copyright © 2012 Center for History and New Media + George Mason University, Fairfax, Virginia, USA + http://zotero.org + + This file is part of Zotero. + + Zotero is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Zotero is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with Zotero. If not, see <http://www.gnu.org/licenses/>. + + ***** END LICENSE BLOCK ***** +*/ +Components.utils.import("resource://gre/modules/XPCOMUtils.jsm"); + +function ZoteroUnit() { + this.wrappedJSObject = this; +} +ZoteroUnit.prototype = { + /* nsICommandLineHandler */ + handle:function(cmdLine) { + this.tests = cmdLine.handleFlagWithParam("test", false); + this.noquit = cmdLine.handleFlag("noquit", false); + }, + + dump:function(x) { + dump(x); + }, + + contractID: "@mozilla.org/commandlinehandler/general-startup;1?type=zotero-unit", + classDescription: "Zotero Unit Command Line Handler", + classID: Components.ID("{b8570031-be5e-46e8-9785-38cd50a5d911}"), + service: true, + _xpcom_categories: [{category:"command-line-handler", entry:"m-zotero-unit"}], + QueryInterface: XPCOMUtils.generateQI([Components.interfaces.nsICommandLineHandler, + Components.interfaces.nsISupports]) +}; + + +var NSGetFactory = XPCOMUtils.generateNSGetFactory([ZoteroUnit]); diff --git a/test/content/runtests.html b/test/content/runtests.html @@ -0,0 +1,14 @@ +<html> +<head> + <meta charset="utf-8"></meta> + <title>Zotero Unit Tests</title> +</head> +<body> + <script src="jquery.js"></script> + <script src="chrome://zotero/content/include.js"></script> + <script src="resource://zotero-unit/chai/chai.js"></script> + <script src="resource://zotero-unit/mocha/mocha.js"></script> + <script src="support.js" version="application/javascript;version=1.8"></script> + <script src="runtests.js" version="application/javascript;version=1.8"></script> +</body> +</html> +\ No newline at end of file diff --git a/test/content/runtests.js b/test/content/runtests.js @@ -0,0 +1,115 @@ +Components.utils.import("resource://gre/modules/FileUtils.jsm"); +Components.utils.import("resource://gre/modules/osfile.jsm"); +Components.utils.import("resource://zotero/q.js"); +var EventUtils = Components.utils.import("resource://zotero-unit/EventUtils.jsm"); + +var ZoteroUnit = Components.classes["@mozilla.org/commandlinehandler/general-startup;1?type=zotero-unit"]. + getService(Components.interfaces.nsISupports). + wrappedJSObject; +var dump = ZoteroUnit.dump; + +function quit(failed) { + // Quit with exit status + if(!failed) { + OS.File.writeAtomic(FileUtils.getFile("ProfD", ["success"]).path, Uint8Array(0)); + } + if(!ZoteroUnit.noquit) { + Components.classes['@mozilla.org/toolkit/app-startup;1']. + getService(Components.interfaces.nsIAppStartup). + quit(Components.interfaces.nsIAppStartup.eForceQuit); + } +} + +function Reporter(runner) { + var indents = 0, passed = 0, failed = 0; + + function indent() { + return Array(indents).join(' '); + } + + runner.on('start', function(){}); + + runner.on('suite', function(suite){ + ++indents; + dump(indent()+suite.title+"\n"); + }); + + runner.on('suite end', function(suite){ + --indents; + if (1 == indents) dump("\n"); + }); + + runner.on('pending', function(test){ + dump(indent()+"pending -"+test.title); + }); + + runner.on('pass', function(test){ + passed++; + var msg = "\r"+indent()+Mocha.reporters.Base.symbols.ok+" "+test.title; + if ('fast' != test.speed) { + msg += " ("+Math.round(test.duration)+" ms)"; + } + dump(msg+"\n"); + }); + + runner.on('fail', function(test, err){ + failed++; + dump("\r"+indent()+Mocha.reporters.Base.symbols.err+" "+test.title+"\n"+ + indent()+" "+err.toString()+" at\n"+ + indent()+" "+err.stack.replace("\n", "\n"+indent()+" ", "g")); + }); + + runner.on('end', function() { + dump(passed+"/"+(passed+failed)+" tests passed.\n"); + quit(failed != 0); + }); +} + +// Setup Mocha +mocha.setup({ui:"bdd", reporter:Reporter}); +var assert = chai.assert, + expect = chai.expect; + +// Set up tests to run +var run = true; +if(ZoteroUnit.tests) { + var testDirectory = getTestDataDirectory().parent, + testFiles = []; + if(ZoteroUnit.tests == "all") { + var enumerator = testDirectory.directoryEntries; + while(enumerator.hasMoreElements()) { + var file = enumerator.getNext().QueryInterface(Components.interfaces.nsIFile); + if(file.leafName.endsWith(".js")) { + testFiles.push(file.leafName); + } + } + } else { + var specifiedTests = ZoteroUnit.tests.split(","); + for(var test of specifiedTests) { + var fname = test+".js", + file = testDirectory.clone(); + file.append(fname); + if(!file.exists()) { + dump("Invalid test file "+test+"\n"); + run = false; + quit(true); + } + testFiles.push(fname); + } + } + + for(var fname of testFiles) { + var el = document.createElement("script"); + el.type = "application/javascript;version=1.8"; + el.src = "resource://zotero-unit-tests/"+fname; + document.body.appendChild(el); + } +} + +if(run) { + window.onload = function() { + Zotero.Schema.schemaUpdatePromise.then(function() { + mocha.run(); + }).done(); + }; +} +\ No newline at end of file diff --git a/test/content/support.js b/test/content/support.js @@ -0,0 +1,170 @@ +/** + * Waits for a DOM event on the specified node. Returns a promise + * resolved with the event. + */ +function waitForDOMEvent(target, event, capture) { + var deferred = Q.defer(); + var func = function(ev) { + target.removeEventListener("event", func, capture); + deferred.resolve(ev); + } + target.addEventListener(event, func, capture); + return deferred.promise; +} + +/** + * Open a window. Returns a promise for the window. + */ +function loadWindow(winurl, argument) { + var win = window.openDialog(winurl, "_blank", "chrome", argument); + return waitForDOMEvent(win, "load").then(function() { + return win; + }); +} + +/** + * Loads a Zotero pane in a new window. Returns the containing window. + */ +function loadZoteroPane() { + return loadWindow("chrome://browser/content/browser.xul").then(function(win) { + win.ZoteroOverlay.toggleDisplay(true); + + // Hack to wait for pane load to finish. This is the same hack + // we use in ZoteroPane.js, so either it's not good enough + // there or it should be good enough here. + return Q.delay(52).then(function() { + return win; + }); + }); +} + +/** + * Waits for a window with a specific URL to open. Returns a promise for the window. + */ +function waitForWindow(uri) { + var deferred = Q.defer(); + Components.utils.import("resource://gre/modules/Services.jsm"); + var loadobserver = function(ev) { + ev.originalTarget.removeEventListener("load", loadobserver, false); + if(ev.target.location == uri) { + Services.ww.unregisterNotification(winobserver); + deferred.resolve(ev.target.docShell.QueryInterface(Components.interfaces.nsIInterfaceRequestor). + getInterface(Components.interfaces.nsIDOMWindow)); + } + }; + var winobserver = {"observe":function(subject, topic, data) { + if(topic != "domwindowopened") return; + var win = subject.QueryInterface(Components.interfaces.nsIDOMWindow); + win.addEventListener("load", loadobserver, false); + }}; + Services.ww.registerNotification(winobserver); + return deferred.promise; +} + +/** + * Waits for a single item event. Returns a promise for the item ID(s). + */ +function waitForItemEvent(event) { + var deferred = Q.defer(); + var notifierID = Zotero.Notifier.registerObserver({notify:function(ev, type, ids, extraData) { + if(ev == event) { + Zotero.Notifier.unregisterObserver(notifierID); + deferred.resolve(ids); + } + }}, ["item"]); + return deferred.promise; +} + +/** + * Looks for windows with a specific URL. + */ +function getWindows(uri) { + Components.utils.import("resource://gre/modules/Services.jsm"); + var enumerator = Services.wm.getEnumerator(null); + var wins = []; + while(enumerator.hasMoreElements()) { + var win = enumerator.getNext(); + if(win.location == uri) { + wins.push(win); + } + } + return wins; +} + +/** + * Resolve a promise when a specified callback returns true. interval + * specifies the interval between checks. timeout specifies when we + * should assume failure. + */ +function waitForCallback(cb, interval, timeout) { + var deferred = Q.defer(); + if(interval === undefined) interval = 100; + if(timeout === undefined) timeout = 10000; + var start = Date.now(); + var id = setInterval(function() { + var success = cb(); + if(success) { + clearInterval(id); + deferred.resolve(success); + } else if(Date.now() - start > timeout*1000) { + clearInterval(id); + deferred.reject(new Error("Promise timed out")); + } + }, interval); + return deferred.promise; +} + +/** + * Ensures that the PDF tools are installed, or installs them if not. + * Returns a promise. + */ +function installPDFTools() { + if(Zotero.Fulltext.pdfConverterIsRegistered() && Zotero.Fulltext.pdfInfoIsRegistered()) { + return Q(true); + } + + // Begin install procedure + return loadWindow("chrome://zotero/content/preferences/preferences.xul", { + pane: 'zotero-prefpane-search', + action: 'pdftools-install' + }).then(function(win) { + // Wait for confirmation dialog + return waitForWindow("chrome://global/content/commonDialog.xul").then(function(dlg) { + // Accept confirmation dialog + dlg.document.documentElement.acceptDialog(); + + // Wait for install to finish + return waitForCallback(function() { + return Zotero.Fulltext.pdfConverterIsRegistered() && Zotero.Fulltext.pdfInfoIsRegistered(); + }, 500, 30000).finally(function() { + win.close(); + }); + }); + }); +} + +/** + * Returns a promise for the nsIFile corresponding to the test data + * directory (i.e., test/tests/data) + */ +function getTestDataDirectory() { + Components.utils.import("resource://gre/modules/Services.jsm"); + var resource = Services.io.getProtocolHandler("resource"). + QueryInterface(Components.interfaces.nsIResProtocolHandler), + resURI = Services.io.newURI("resource://zotero-unit-tests/data", null, null); + return Services.io.newURI(resource.resolveURI(resURI), null, null). + QueryInterface(Components.interfaces.nsIFileURL).file; +} + +/** + * Resets the Zotero DB and restarts Zotero. Returns a promise resolved + * when this finishes. + */ +function resetDB() { + var db = Zotero.getZoteroDatabase(); + return Zotero.reinit(function() { + db.remove(false); + }).then(function() { + return Zotero.Schema.schemaUpdatePromise; + }); +} +\ No newline at end of file diff --git a/test/install.rdf b/test/install.rdf @@ -0,0 +1,26 @@ +<?xml version="1.0"?> +<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:em="http://www.mozilla.org/2004/em-rdf#"> + + <Description about="urn:mozilla:install-manifest"> + + <em:id>zotero-unit@zotero.org</em:id> + <em:name>Zotero Unit Tests</em:name> + <em:version>1.0</em:version> + <em:creator>Center for History and New Media</em:creator> + <em:developer>Simon Kornblith</em:developer> + <em:homepageURL>http://www.zotero.org</em:homepageURL> + <em:iconURL>chrome://zotero/skin/zotero-new-z-48px.png</em:iconURL> + <em:type>2</em:type> <!-- type=extension --> + + <!-- Firefox --> + <em:targetApplication> + <Description> + <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> + <em:minVersion>31.0</em:minVersion> + <em:maxVersion>38.*</em:maxVersion> + </Description> + </em:targetApplication> + + </Description> +</RDF> diff --git a/test/resource/EventUtils.jsm b/test/resource/EventUtils.jsm @@ -0,0 +1,835 @@ +/* Taken from MozMill 6c0948d80eebcbb104ce7a776c65aeae634970dd + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, you can obtain one at http://mozilla.org/MPL/2.0/. */ + + // Export all available functions for Mozmill +var EXPORTED_SYMBOLS = ["disableNonTestMouseEvents","sendMouseEvent", "sendChar", + "sendString", "sendKey", "synthesizeMouse", "synthesizeTouch", + "synthesizeMouseAtPoint", "synthesizeTouchAtPoint", + "synthesizeMouseAtCenter", "synthesizeTouchAtCenter", + "synthesizeWheel", "synthesizeKey", + "synthesizeMouseExpectEvent", "synthesizeKeyExpectEvent", + "synthesizeText", + "synthesizeComposition", "synthesizeQuerySelectedText"]; + +const Ci = Components.interfaces; +const Cc = Components.classes; + +var window = Cc["@mozilla.org/appshell/appShellService;1"] + .getService(Ci.nsIAppShellService).hiddenDOMWindow; + +var _EU_Ci = Ci; +var navigator = window.navigator; +var KeyEvent = window.KeyEvent; +var parent = window.parent; + +function is(aExpression1, aExpression2, aMessage) { + if (aExpression1 !== aExpression2) { + throw new Error(aMessage); + } +} + +/** + * EventUtils provides some utility methods for creating and sending DOM events. + * Current methods: + * sendMouseEvent + * sendChar + * sendString + * sendKey + * synthesizeMouse + * synthesizeMouseAtCenter + * synthesizeWheel + * synthesizeKey + * synthesizeMouseExpectEvent + * synthesizeKeyExpectEvent + * + * When adding methods to this file, please add a performance test for it. + */ + +/** + * Send a mouse event to the node aTarget (aTarget can be an id, or an + * actual node) . The "event" passed in to aEvent is just a JavaScript + * object with the properties set that the real mouse event object should + * have. This includes the type of the mouse event. + * E.g. to send an click event to the node with id 'node' you might do this: + * + * sendMouseEvent({type:'click'}, 'node'); + */ +function getElement(id) { + return ((typeof(id) == "string") ? + document.getElementById(id) : id); +}; + +this.$ = this.getElement; + +function sendMouseEvent(aEvent, aTarget, aWindow) { + if (['click', 'dblclick', 'mousedown', 'mouseup', 'mouseover', 'mouseout'].indexOf(aEvent.type) == -1) { + throw new Error("sendMouseEvent doesn't know about event type '" + aEvent.type + "'"); + } + + if (!aWindow) { + aWindow = window; + } + + if (!(aTarget instanceof aWindow.Element)) { + aTarget = aWindow.document.getElementById(aTarget); + } + + var event = aWindow.document.createEvent('MouseEvent'); + + var typeArg = aEvent.type; + var canBubbleArg = true; + var cancelableArg = true; + var viewArg = aWindow; + var detailArg = aEvent.detail || (aEvent.type == 'click' || + aEvent.type == 'mousedown' || + aEvent.type == 'mouseup' ? 1 : + aEvent.type == 'dblclick'? 2 : 0); + var screenXArg = aEvent.screenX || 0; + var screenYArg = aEvent.screenY || 0; + var clientXArg = aEvent.clientX || 0; + var clientYArg = aEvent.clientY || 0; + var ctrlKeyArg = aEvent.ctrlKey || false; + var altKeyArg = aEvent.altKey || false; + var shiftKeyArg = aEvent.shiftKey || false; + var metaKeyArg = aEvent.metaKey || false; + var buttonArg = aEvent.button || 0; + var relatedTargetArg = aEvent.relatedTarget || null; + + event.initMouseEvent(typeArg, canBubbleArg, cancelableArg, viewArg, detailArg, + screenXArg, screenYArg, clientXArg, clientYArg, + ctrlKeyArg, altKeyArg, shiftKeyArg, metaKeyArg, + buttonArg, relatedTargetArg); + + aTarget.dispatchEvent(event); +} + +/** + * Send the char aChar to the focused element. This method handles casing of + * chars (sends the right charcode, and sends a shift key for uppercase chars). + * No other modifiers are handled at this point. + * + * For now this method only works for ASCII characters and emulates the shift + * key state on US keyboard layout. + */ +function sendChar(aChar, aWindow) { + var hasShift; + // Emulate US keyboard layout for the shiftKey state. + switch (aChar) { + case "!": + case "@": + case "#": + case "$": + case "%": + case "^": + case "&": + case "*": + case "(": + case ")": + case "_": + case "+": + case "{": + case "}": + case ":": + case "\"": + case "|": + case "<": + case ">": + case "?": + hasShift = true; + break; + default: + hasShift = (aChar == aChar.toUpperCase()); + break; + } + synthesizeKey(aChar, { shiftKey: hasShift }, aWindow); +} + +/** + * Send the string aStr to the focused element. + * + * For now this method only works for ASCII characters and emulates the shift + * key state on US keyboard layout. + */ +function sendString(aStr, aWindow) { + for (var i = 0; i < aStr.length; ++i) { + sendChar(aStr.charAt(i), aWindow); + } +} + +/** + * Send the non-character key aKey to the focused node. + * The name of the key should be the part that comes after "DOM_VK_" in the + * KeyEvent constant name for this key. + * No modifiers are handled at this point. + */ +function sendKey(aKey, aWindow) { + var keyName = "VK_" + aKey.toUpperCase(); + synthesizeKey(keyName, { shiftKey: false }, aWindow); +} + +/** + * Parse the key modifier flags from aEvent. Used to share code between + * synthesizeMouse and synthesizeKey. + */ +function _parseModifiers(aEvent) +{ + const nsIDOMWindowUtils = _EU_Ci.nsIDOMWindowUtils; + var mval = 0; + if (aEvent.shiftKey) { + mval |= nsIDOMWindowUtils.MODIFIER_SHIFT; + } + if (aEvent.ctrlKey) { + mval |= nsIDOMWindowUtils.MODIFIER_CONTROL; + } + if (aEvent.altKey) { + mval |= nsIDOMWindowUtils.MODIFIER_ALT; + } + if (aEvent.metaKey) { + mval |= nsIDOMWindowUtils.MODIFIER_META; + } + if (aEvent.accelKey) { + mval |= (navigator.platform.indexOf("Mac") >= 0) ? + nsIDOMWindowUtils.MODIFIER_META : nsIDOMWindowUtils.MODIFIER_CONTROL; + } + if (aEvent.altGrKey) { + mval |= nsIDOMWindowUtils.MODIFIER_ALTGRAPH; + } + if (aEvent.capsLockKey) { + mval |= nsIDOMWindowUtils.MODIFIER_CAPSLOCK; + } + if (aEvent.fnKey) { + mval |= nsIDOMWindowUtils.MODIFIER_FN; + } + if (aEvent.numLockKey) { + mval |= nsIDOMWindowUtils.MODIFIER_NUMLOCK; + } + if (aEvent.scrollLockKey) { + mval |= nsIDOMWindowUtils.MODIFIER_SCROLLLOCK; + } + if (aEvent.symbolLockKey) { + mval |= nsIDOMWindowUtils.MODIFIER_SYMBOLLOCK; + } + if (aEvent.osKey) { + mval |= nsIDOMWindowUtils.MODIFIER_OS; + } + + return mval; +} + +/** + * Synthesize a mouse event on a target. The actual client point is determined + * by taking the aTarget's client box and offseting it by aOffsetX and + * aOffsetY. This allows mouse clicks to be simulated by calling this method. + * + * aEvent is an object which may contain the properties: + * shiftKey, ctrlKey, altKey, metaKey, accessKey, clickCount, button, type + * + * If the type is specified, an mouse event of that type is fired. Otherwise, + * a mousedown followed by a mouse up is performed. + * + * aWindow is optional, and defaults to the current window object. + * + * Returns whether the event had preventDefault() called on it. + */ +function synthesizeMouse(aTarget, aOffsetX, aOffsetY, aEvent, aWindow) +{ + var rect = aTarget.getBoundingClientRect(); + return synthesizeMouseAtPoint(rect.left + aOffsetX, rect.top + aOffsetY, + aEvent, aWindow); +} +function synthesizeTouch(aTarget, aOffsetX, aOffsetY, aEvent, aWindow) +{ + var rect = aTarget.getBoundingClientRect(); + synthesizeTouchAtPoint(rect.left + aOffsetX, rect.top + aOffsetY, + aEvent, aWindow); +} + +/* + * Synthesize a mouse event at a particular point in aWindow. + * + * aEvent is an object which may contain the properties: + * shiftKey, ctrlKey, altKey, metaKey, accessKey, clickCount, button, type + * + * If the type is specified, an mouse event of that type is fired. Otherwise, + * a mousedown followed by a mouse up is performed. + * + * aWindow is optional, and defaults to the current window object. + */ +function synthesizeMouseAtPoint(left, top, aEvent, aWindow) +{ + var utils = _getDOMWindowUtils(aWindow); + var defaultPrevented = false; + + if (utils) { + var button = aEvent.button || 0; + var clickCount = aEvent.clickCount || 1; + var modifiers = _parseModifiers(aEvent); + var pressure = ("pressure" in aEvent) ? aEvent.pressure : 0; + var inputSource = ("inputSource" in aEvent) ? aEvent.inputSource : 0; + + if (("type" in aEvent) && aEvent.type) { + defaultPrevented = utils.sendMouseEvent(aEvent.type, left, top, button, clickCount, modifiers, false, pressure, inputSource); + } + else { + utils.sendMouseEvent("mousedown", left, top, button, clickCount, modifiers, false, pressure, inputSource); + utils.sendMouseEvent("mouseup", left, top, button, clickCount, modifiers, false, pressure, inputSource); + } + } + + return defaultPrevented; +} +function synthesizeTouchAtPoint(left, top, aEvent, aWindow) +{ + var utils = _getDOMWindowUtils(aWindow); + + if (utils) { + var id = aEvent.id || 0; + var rx = aEvent.rx || 1; + var ry = aEvent.rx || 1; + var angle = aEvent.angle || 0; + var force = aEvent.force || 1; + var modifiers = _parseModifiers(aEvent); + + if (("type" in aEvent) && aEvent.type) { + utils.sendTouchEvent(aEvent.type, [id], [left], [top], [rx], [ry], [angle], [force], 1, modifiers); + } + else { + utils.sendTouchEvent("touchstart", [id], [left], [top], [rx], [ry], [angle], [force], 1, modifiers); + utils.sendTouchEvent("touchend", [id], [left], [top], [rx], [ry], [angle], [force], 1, modifiers); + } + } +} +// Call synthesizeMouse with coordinates at the center of aTarget. +function synthesizeMouseAtCenter(aTarget, aEvent, aWindow) +{ + var rect = aTarget.getBoundingClientRect(); + synthesizeMouse(aTarget, rect.width / 2, rect.height / 2, aEvent, + aWindow); +} +function synthesizeTouchAtCenter(aTarget, aEvent, aWindow) +{ + var rect = aTarget.getBoundingClientRect(); + synthesizeTouch(aTarget, rect.width / 2, rect.height / 2, aEvent, + aWindow); +} + +/** + * Synthesize a wheel event on a target. The actual client point is determined + * by taking the aTarget's client box and offseting it by aOffsetX and + * aOffsetY. + * + * aEvent is an object which may contain the properties: + * shiftKey, ctrlKey, altKey, metaKey, accessKey, deltaX, deltaY, deltaZ, + * deltaMode, lineOrPageDeltaX, lineOrPageDeltaY, isMomentum, isPixelOnlyDevice, + * isCustomizedByPrefs, expectedOverflowDeltaX, expectedOverflowDeltaY + * + * deltaMode must be defined, others are ok even if undefined. + * + * expectedOverflowDeltaX and expectedOverflowDeltaY take integer value. The + * value is just checked as 0 or positive or negative. + * + * aWindow is optional, and defaults to the current window object. + */ +function synthesizeWheel(aTarget, aOffsetX, aOffsetY, aEvent, aWindow) +{ + var utils = _getDOMWindowUtils(aWindow); + if (!utils) { + return; + } + + var modifiers = _parseModifiers(aEvent); + var options = 0; + if (aEvent.isPixelOnlyDevice && + (aEvent.deltaMode == WheelEvent.DOM_DELTA_PIXEL)) { + options |= utils.WHEEL_EVENT_CAUSED_BY_PIXEL_ONLY_DEVICE; + } + if (aEvent.isMomentum) { + options |= utils.WHEEL_EVENT_CAUSED_BY_MOMENTUM; + } + if (aEvent.isCustomizedByPrefs) { + options |= utils.WHEEL_EVENT_CUSTOMIZED_BY_USER_PREFS; + } + if (typeof aEvent.expectedOverflowDeltaX !== "undefined") { + if (aEvent.expectedOverflowDeltaX === 0) { + options |= utils.WHEEL_EVENT_EXPECTED_OVERFLOW_DELTA_X_ZERO; + } else if (aEvent.expectedOverflowDeltaX > 0) { + options |= utils.WHEEL_EVENT_EXPECTED_OVERFLOW_DELTA_X_POSITIVE; + } else { + options |= utils.WHEEL_EVENT_EXPECTED_OVERFLOW_DELTA_X_NEGATIVE; + } + } + if (typeof aEvent.expectedOverflowDeltaY !== "undefined") { + if (aEvent.expectedOverflowDeltaY === 0) { + options |= utils.WHEEL_EVENT_EXPECTED_OVERFLOW_DELTA_Y_ZERO; + } else if (aEvent.expectedOverflowDeltaY > 0) { + options |= utils.WHEEL_EVENT_EXPECTED_OVERFLOW_DELTA_Y_POSITIVE; + } else { + options |= utils.WHEEL_EVENT_EXPECTED_OVERFLOW_DELTA_Y_NEGATIVE; + } + } + var isPixelOnlyDevice = + aEvent.isPixelOnlyDevice && aEvent.deltaMode == WheelEvent.DOM_DELTA_PIXEL; + + // Avoid the JS warnings "reference to undefined property" + if (!aEvent.deltaX) { + aEvent.deltaX = 0; + } + if (!aEvent.deltaY) { + aEvent.deltaY = 0; + } + if (!aEvent.deltaZ) { + aEvent.deltaZ = 0; + } + + var lineOrPageDeltaX = + aEvent.lineOrPageDeltaX != null ? aEvent.lineOrPageDeltaX : + aEvent.deltaX > 0 ? Math.floor(aEvent.deltaX) : + Math.ceil(aEvent.deltaX); + var lineOrPageDeltaY = + aEvent.lineOrPageDeltaY != null ? aEvent.lineOrPageDeltaY : + aEvent.deltaY > 0 ? Math.floor(aEvent.deltaY) : + Math.ceil(aEvent.deltaY); + + var rect = aTarget.getBoundingClientRect(); + utils.sendWheelEvent(rect.left + aOffsetX, rect.top + aOffsetY, + aEvent.deltaX, aEvent.deltaY, aEvent.deltaZ, + aEvent.deltaMode, modifiers, + lineOrPageDeltaX, lineOrPageDeltaY, options); +} + +function _computeKeyCodeFromChar(aChar) +{ + if (aChar.length != 1) { + return 0; + } + const nsIDOMKeyEvent = _EU_Ci.nsIDOMKeyEvent; + if (aChar >= 'a' && aChar <= 'z') { + return nsIDOMKeyEvent.DOM_VK_A + aChar.charCodeAt(0) - 'a'.charCodeAt(0); + } + if (aChar >= 'A' && aChar <= 'Z') { + return nsIDOMKeyEvent.DOM_VK_A + aChar.charCodeAt(0) - 'A'.charCodeAt(0); + } + if (aChar >= '0' && aChar <= '9') { + return nsIDOMKeyEvent.DOM_VK_0 + aChar.charCodeAt(0) - '0'.charCodeAt(0); + } + // returns US keyboard layout's keycode + switch (aChar) { + case '~': + case '`': + return nsIDOMKeyEvent.DOM_VK_BACK_QUOTE; + case '!': + return nsIDOMKeyEvent.DOM_VK_1; + case '@': + return nsIDOMKeyEvent.DOM_VK_2; + case '#': + return nsIDOMKeyEvent.DOM_VK_3; + case '$': + return nsIDOMKeyEvent.DOM_VK_4; + case '%': + return nsIDOMKeyEvent.DOM_VK_5; + case '^': + return nsIDOMKeyEvent.DOM_VK_6; + case '&': + return nsIDOMKeyEvent.DOM_VK_7; + case '*': + return nsIDOMKeyEvent.DOM_VK_8; + case '(': + return nsIDOMKeyEvent.DOM_VK_9; + case ')': + return nsIDOMKeyEvent.DOM_VK_0; + case '-': + case '_': + return nsIDOMKeyEvent.DOM_VK_SUBTRACT; + case '+': + case '=': + return nsIDOMKeyEvent.DOM_VK_EQUALS; + case '{': + case '[': + return nsIDOMKeyEvent.DOM_VK_OPEN_BRACKET; + case '}': + case ']': + return nsIDOMKeyEvent.DOM_VK_CLOSE_BRACKET; + case '|': + case '\\': + return nsIDOMKeyEvent.DOM_VK_BACK_SLASH; + case ':': + case ';': + return nsIDOMKeyEvent.DOM_VK_SEMICOLON; + case '\'': + case '"': + return nsIDOMKeyEvent.DOM_VK_QUOTE; + case '<': + case ',': + return nsIDOMKeyEvent.DOM_VK_COMMA; + case '>': + case '.': + return nsIDOMKeyEvent.DOM_VK_PERIOD; + case '?': + case '/': + return nsIDOMKeyEvent.DOM_VK_SLASH; + default: + return 0; + } +} + +/** + * isKeypressFiredKey() returns TRUE if the given key should cause keypress + * event when widget handles the native key event. Otherwise, FALSE. + * + * aDOMKeyCode should be one of consts of nsIDOMKeyEvent::DOM_VK_*, or a key + * name begins with "VK_", or a character. + */ +function isKeypressFiredKey(aDOMKeyCode) +{ + if (typeof(aDOMKeyCode) == "string") { + if (aDOMKeyCode.indexOf("VK_") == 0) { + aDOMKeyCode = KeyEvent["DOM_" + aDOMKeyCode]; + if (!aDOMKeyCode) { + throw "Unknown key: " + aDOMKeyCode; + } + } else { + // If the key generates a character, it must cause a keypress event. + return true; + } + } + switch (aDOMKeyCode) { + case KeyEvent.DOM_VK_SHIFT: + case KeyEvent.DOM_VK_CONTROL: + case KeyEvent.DOM_VK_ALT: + case KeyEvent.DOM_VK_CAPS_LOCK: + case KeyEvent.DOM_VK_NUM_LOCK: + case KeyEvent.DOM_VK_SCROLL_LOCK: + case KeyEvent.DOM_VK_META: + return false; + default: + return true; + } +} + +/** + * Synthesize a key event. It is targeted at whatever would be targeted by an + * actual keypress by the user, typically the focused element. + * + * aKey should be either a character or a keycode starting with VK_ such as + * VK_ENTER. + * + * aEvent is an object which may contain the properties: + * shiftKey, ctrlKey, altKey, metaKey, accessKey, type, location + * + * Sets one of KeyboardEvent.DOM_KEY_LOCATION_* to location. Otherwise, + * DOMWindowUtils will choose good location from the keycode. + * + * If the type is specified, a key event of that type is fired. Otherwise, + * a keydown, a keypress and then a keyup event are fired in sequence. + * + * aWindow is optional, and defaults to the current window object. + */ +function synthesizeKey(aKey, aEvent, aWindow) +{ + var utils = _getDOMWindowUtils(aWindow); + if (utils) { + var keyCode = 0, charCode = 0; + if (aKey.indexOf("VK_") == 0) { + keyCode = KeyEvent["DOM_" + aKey]; + if (!keyCode) { + throw "Unknown key: " + aKey; + } + } else { + charCode = aKey.charCodeAt(0); + keyCode = _computeKeyCodeFromChar(aKey.charAt(0)); + } + + var modifiers = _parseModifiers(aEvent); + var flags = 0; + if (aEvent.location != undefined) { + switch (aEvent.location) { + case KeyboardEvent.DOM_KEY_LOCATION_STANDARD: + flags |= utils.KEY_FLAG_LOCATION_STANDARD; + break; + case KeyboardEvent.DOM_KEY_LOCATION_LEFT: + flags |= utils.KEY_FLAG_LOCATION_LEFT; + break; + case KeyboardEvent.DOM_KEY_LOCATION_RIGHT: + flags |= utils.KEY_FLAG_LOCATION_RIGHT; + break; + case KeyboardEvent.DOM_KEY_LOCATION_NUMPAD: + flags |= utils.KEY_FLAG_LOCATION_NUMPAD; + break; + case KeyboardEvent.DOM_KEY_LOCATION_MOBILE: + flags |= utils.KEY_FLAG_LOCATION_MOBILE; + break; + case KeyboardEvent.DOM_KEY_LOCATION_JOYSTICK: + flags |= utils.KEY_FLAG_LOCATION_JOYSTICK; + break; + } + } + + if (!("type" in aEvent) || !aEvent.type) { + // Send keydown + (optional) keypress + keyup events. + var keyDownDefaultHappened = + utils.sendKeyEvent("keydown", keyCode, 0, modifiers, flags); + if (isKeypressFiredKey(keyCode)) { + if (!keyDownDefaultHappened) { + flags |= utils.KEY_FLAG_PREVENT_DEFAULT; + } + utils.sendKeyEvent("keypress", keyCode, charCode, modifiers, flags); + } + utils.sendKeyEvent("keyup", keyCode, 0, modifiers, flags); + } else if (aEvent.type == "keypress") { + // Send standalone keypress event. + utils.sendKeyEvent(aEvent.type, keyCode, charCode, modifiers, flags); + } else { + // Send other standalone event than keypress. + utils.sendKeyEvent(aEvent.type, keyCode, 0, modifiers, flags); + } + } +} + +var _gSeenEvent = false; + +/** + * Indicate that an event with an original target of aExpectedTarget and + * a type of aExpectedEvent is expected to be fired, or not expected to + * be fired. + */ +function _expectEvent(aExpectedTarget, aExpectedEvent, aTestName) +{ + if (!aExpectedTarget || !aExpectedEvent) + return null; + + _gSeenEvent = false; + + var type = (aExpectedEvent.charAt(0) == "!") ? + aExpectedEvent.substring(1) : aExpectedEvent; + var eventHandler = function(event) { + var epassed = (!_gSeenEvent && event.originalTarget == aExpectedTarget && + event.type == type); + is(epassed, true, aTestName + " " + type + " event target " + (_gSeenEvent ? "twice" : "")); + _gSeenEvent = true; + }; + + aExpectedTarget.addEventListener(type, eventHandler, false); + return eventHandler; +} + +/** + * Check if the event was fired or not. The event handler aEventHandler + * will be removed. + */ +function _checkExpectedEvent(aExpectedTarget, aExpectedEvent, aEventHandler, aTestName) +{ + if (aEventHandler) { + var expectEvent = (aExpectedEvent.charAt(0) != "!"); + var type = expectEvent ? aExpectedEvent : aExpectedEvent.substring(1); + aExpectedTarget.removeEventListener(type, aEventHandler, false); + var desc = type + " event"; + if (!expectEvent) + desc += " not"; + is(_gSeenEvent, expectEvent, aTestName + " " + desc + " fired"); + } + + _gSeenEvent = false; +} + +/** + * Similar to synthesizeMouse except that a test is performed to see if an + * event is fired at the right target as a result. + * + * aExpectedTarget - the expected originalTarget of the event. + * aExpectedEvent - the expected type of the event, such as 'select'. + * aTestName - the test name when outputing results + * + * To test that an event is not fired, use an expected type preceded by an + * exclamation mark, such as '!select'. This might be used to test that a + * click on a disabled element doesn't fire certain events for instance. + * + * aWindow is optional, and defaults to the current window object. + */ +function synthesizeMouseExpectEvent(aTarget, aOffsetX, aOffsetY, aEvent, + aExpectedTarget, aExpectedEvent, aTestName, + aWindow) +{ + var eventHandler = _expectEvent(aExpectedTarget, aExpectedEvent, aTestName); + synthesizeMouse(aTarget, aOffsetX, aOffsetY, aEvent, aWindow); + _checkExpectedEvent(aExpectedTarget, aExpectedEvent, eventHandler, aTestName); +} + +/** + * Similar to synthesizeKey except that a test is performed to see if an + * event is fired at the right target as a result. + * + * aExpectedTarget - the expected originalTarget of the event. + * aExpectedEvent - the expected type of the event, such as 'select'. + * aTestName - the test name when outputing results + * + * To test that an event is not fired, use an expected type preceded by an + * exclamation mark, such as '!select'. + * + * aWindow is optional, and defaults to the current window object. + */ +function synthesizeKeyExpectEvent(key, aEvent, aExpectedTarget, aExpectedEvent, + aTestName, aWindow) +{ + var eventHandler = _expectEvent(aExpectedTarget, aExpectedEvent, aTestName); + synthesizeKey(key, aEvent, aWindow); + _checkExpectedEvent(aExpectedTarget, aExpectedEvent, eventHandler, aTestName); +} + +function disableNonTestMouseEvents(aDisable) +{ + var domutils = _getDOMWindowUtils(); + domutils.disableNonTestMouseEvents(aDisable); +} + +function _getDOMWindowUtils(aWindow) +{ + if (!aWindow) { + aWindow = window; + } + + // we need parent.SpecialPowers for: + // layout/base/tests/test_reftests_with_caret.html + // chrome: toolkit/content/tests/chrome/test_findbar.xul + // chrome: toolkit/content/tests/chrome/test_popup_anchor.xul + if ("SpecialPowers" in window && window.SpecialPowers != undefined) { + return SpecialPowers.getDOMWindowUtils(aWindow); + } + if ("SpecialPowers" in parent && parent.SpecialPowers != undefined) { + return parent.SpecialPowers.getDOMWindowUtils(aWindow); + } + + //TODO: this is assuming we are in chrome space + return aWindow.QueryInterface(_EU_Ci.nsIInterfaceRequestor). + getInterface(_EU_Ci.nsIDOMWindowUtils); +} + +// Must be synchronized with nsIDOMWindowUtils. +const COMPOSITION_ATTR_RAWINPUT = 0x02; +const COMPOSITION_ATTR_SELECTEDRAWTEXT = 0x03; +const COMPOSITION_ATTR_CONVERTEDTEXT = 0x04; +const COMPOSITION_ATTR_SELECTEDCONVERTEDTEXT = 0x05; + +/** + * Synthesize a composition event. + * + * @param aEvent The composition event information. This must + * have |type| member. The value must be + * "compositionstart", "compositionend" or + * "compositionupdate". + * And also this may have |data| and |locale| which + * would be used for the value of each property of + * the composition event. Note that the data would + * be ignored if the event type were + * "compositionstart". + * @param aWindow Optional (If null, current |window| will be used) + */ +function synthesizeComposition(aEvent, aWindow) +{ + var utils = _getDOMWindowUtils(aWindow); + if (!utils) { + return; + } + + utils.sendCompositionEvent(aEvent.type, aEvent.data ? aEvent.data : "", + aEvent.locale ? aEvent.locale : ""); +} +/** + * Synthesize a text event. + * + * @param aEvent The text event's information, this has |composition| + * and |caret| members. |composition| has |string| and + * |clauses| members. |clauses| must be array object. Each + * object has |length| and |attr|. And |caret| has |start| and + * |length|. See the following tree image. + * + * aEvent + * +-- composition + * | +-- string + * | +-- clauses[] + * | +-- length + * | +-- attr + * +-- caret + * +-- start + * +-- length + * + * Set the composition string to |composition.string|. Set its + * clauses information to the |clauses| array. + * + * When it's composing, set the each clauses' length to the + * |composition.clauses[n].length|. The sum of the all length + * values must be same as the length of |composition.string|. + * Set nsIDOMWindowUtils.COMPOSITION_ATTR_* to the + * |composition.clauses[n].attr|. + * + * When it's not composing, set 0 to the + * |composition.clauses[0].length| and + * |composition.clauses[0].attr|. + * + * Set caret position to the |caret.start|. It's offset from + * the start of the composition string. Set caret length to + * |caret.length|. If it's larger than 0, it should be wide + * caret. However, current nsEditor doesn't support wide + * caret, therefore, you should always set 0 now. + * + * @param aWindow Optional (If null, current |window| will be used) + */ +function synthesizeText(aEvent, aWindow) +{ + var utils = _getDOMWindowUtils(aWindow); + if (!utils) { + return; + } + + if (!aEvent.composition || !aEvent.composition.clauses || + !aEvent.composition.clauses[0]) { + return; + } + + var firstClauseLength = aEvent.composition.clauses[0].length; + var firstClauseAttr = aEvent.composition.clauses[0].attr; + var secondClauseLength = 0; + var secondClauseAttr = 0; + var thirdClauseLength = 0; + var thirdClauseAttr = 0; + if (aEvent.composition.clauses[1]) { + secondClauseLength = aEvent.composition.clauses[1].length; + secondClauseAttr = aEvent.composition.clauses[1].attr; + if (aEvent.composition.clauses[2]) { + thirdClauseLength = aEvent.composition.clauses[2].length; + thirdClauseAttr = aEvent.composition.clauses[2].attr; + } + } + + var caretStart = -1; + var caretLength = 0; + if (aEvent.caret) { + caretStart = aEvent.caret.start; + caretLength = aEvent.caret.length; + } + + utils.sendTextEvent(aEvent.composition.string, + firstClauseLength, firstClauseAttr, + secondClauseLength, secondClauseAttr, + thirdClauseLength, thirdClauseAttr, + caretStart, caretLength); +} + +/** + * Synthesize a query selected text event. + * + * @param aWindow Optional (If null, current |window| will be used) + * @return An nsIQueryContentEventResult object. If this failed, + * the result might be null. + */ +function synthesizeQuerySelectedText(aWindow) +{ + var utils = _getDOMWindowUtils(aWindow); + if (!utils) { + return null; + } + + return utils.sendQueryContentEvent(utils.QUERY_SELECTED_TEXT, 0, 0, 0, 0); +} diff --git a/test/resource/chai b/test/resource/chai @@ -0,0 +1 @@ +Subproject commit d7cafca0232756f767275bb00e66930a7823b027 diff --git a/test/resource/mocha b/test/resource/mocha @@ -0,0 +1 @@ +Subproject commit 65fc80ecd96ca2159a792aff089bbc273d4bd86d diff --git a/test/runtests.sh b/test/runtests.sh @@ -0,0 +1,71 @@ +#!/bin/bash +CWD="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +DEBUG=false +if [ "`uname`" == "Darwin" ]; then + FX_EXECUTABLE="/Applications/Firefox.app/Contents/MacOS/firefox" +else + FX_EXECUTABLE="firefox" +fi +FX_ARGS="" + +function usage { + cat >&2 <<DONE +Usage: $0 [-x FX_EXECUTABLE] [TESTS...] +Options + -x FX_EXECUTABLE path to Firefox executable (default: $FX_EXECUTABLE) + -d enable debug logging + -c open JavaScript console and don't quit on completion + TESTS set of tests to run (default: all) +DONE + exit 1 +} + +while getopts "x:dc" opt; do + case $opt in + x) + FX_EXECUTABLE="$OPTARG" + ;; + d) + DEBUG=true + ;; + c) + FX_ARGS="-jsconsole -noquit" + ;; + *) + usage + ;; + esac + shift $((OPTIND-1)); OPTIND=1 +done + +if [ -z $1 ]; then + TESTS="all" +else + ARGS=("${@:1}") + function join { local IFS="$1"; shift; echo "$*"; } + TESTS="$(join , "${ARGS[@]}")" +fi + +# Set up profile directory +PROFILE="`mktemp -d 2>/dev/null || mktemp -d -t 'zotero-unit'`" +mkdir "$PROFILE/extensions" +echo "$CWD" > "$PROFILE/extensions/zotero-unit@zotero.org" +echo "`dirname "$CWD"`" > "$PROFILE/extensions/zotero@chnm.gmu.edu" +cat <<EOF > "$PROFILE/prefs.js" +user_pref("extensions.autoDisableScopes", 0); +user_pref("extensions.zotero.debug.log", $DEBUG); +user_pref("extensions.zotero.firstRunGuidance", false); +user_pref("extensions.zotero.firstRun2", false); +EOF + +MOZ_NO_REMOTE=1 NO_EM_RESTART=1 "$FX_EXECUTABLE" -profile "$PROFILE" \ + -chrome chrome://zotero-unit/content/runtests.html -test "$TESTS" $FX_ARGS + +# Check for success +test -e "$PROFILE/success" +STATUS=$? + +# Clean up +rm -rf "$PROFILE" +exit $STATUS +\ No newline at end of file diff --git a/test/tests/data/recognizePDF_test_DOI.pdf b/test/tests/data/recognizePDF_test_DOI.pdf Binary files differ. diff --git a/test/tests/data/recognizePDF_test_GS.pdf b/test/tests/data/recognizePDF_test_GS.pdf Binary files differ. diff --git a/test/tests/lookup.js b/test/tests/lookup.js @@ -0,0 +1,50 @@ +function lookupIdentifier(win, identifier) { + var textbox = win.document.getElementById("zotero-lookup-textbox"); + textbox.value = identifier; + win.Zotero_Lookup.accept(textbox); + return waitForItemEvent("add"); +} + +describe("Add Item by Identifier", function() { + var win; + before(function() { + this.timeout(5000); + // Load a Zotero pane and update the translators (needed to + // make sure they're available before we run the tests) + return loadZoteroPane().then(function(w) { + win = w; + }); + }); + after(function() { + win.close(); + }); + + it("should add an ISBN-10", function() { + this.timeout(20000); + return lookupIdentifier(win, "0838985890").then(function(ids) { + var item = Zotero.Items.get(ids[0]); + assert.equal(item.getField("title"), "Zotero: a guide for librarians, researchers, and educators"); + }); + }); + it("should add an ISBN-13", function() { + this.timeout(20000); + return lookupIdentifier(win, "978-0838985892").then(function(ids) { + var item = Zotero.Items.get(ids[0]); + assert.equal(item.getField("title"), "Zotero: a guide for librarians, researchers, and educators"); + }); + }); + it("should add a DOI", function() { + this.timeout(10000); + return lookupIdentifier(win, "10.4103/0976-500X.85940").then(function(ids) { + var item = Zotero.Items.get(ids[0]); + assert.equal(item.getField("title"), "Zotero: A bibliographic assistant to researcher"); + }); + }); + it("should add a PMID", function() { + this.timeout(10000); + return lookupIdentifier(win, "24297125").then(function(ids) { + var item = Zotero.Items.get(ids[0]); + assert.equal(item.getField("title"), "Taking control of your digital library: how modern citation managers do more than just referencing"); + }); + }); +}); +\ No newline at end of file diff --git a/test/tests/recognizePDF.js b/test/tests/recognizePDF.js @@ -0,0 +1,57 @@ +describe("PDF Recognition", function() { + Components.utils.import("resource://gre/modules/FileUtils.jsm"); + + var win; + before(function() { + this.timeout(60000); + // Load Zotero pane, install PDF tools, and load the + // translators + return Q.all([loadZoteroPane().then(function(w) { + win = w; + }), installPDFTools()]); + }); + afterEach(function() { + for(let win of getWindows("chrome://zotero/content/pdfProgress.xul")) { + win.close(); + } + }); + after(function() { + win.close(); + }); + + it("should recognize a PDF with a DOI", function() { + this.timeout(30000); + // Import the PDF + var testdir = getTestDataDirectory(); + testdir.append("recognizePDF_test_DOI.pdf"); + var id = Zotero.Attachments.importFromFile(testdir); + + // Recognize the PDF + win.ZoteroPane.selectItem(id); + win.Zotero_RecognizePDF.recognizeSelected(); + + return waitForItemEvent("add").then(function(ids) { + var item = Zotero.Items.get(ids[0]); + assert.equal(item.getField("title"), "Shaping the Research Agenda"); + assert.equal(item.getField("libraryCatalog"), "CrossRef"); + }); + }); + + it("should recognize a PDF without a DOI", function() { + this.timeout(30000); + // Import the PDF + var testdir = getTestDataDirectory(); + testdir.append("recognizePDF_test_GS.pdf"); + var id = Zotero.Attachments.importFromFile(testdir); + + // Recognize the PDF + win.ZoteroPane.selectItem(id); + win.Zotero_RecognizePDF.recognizeSelected(); + + return waitForItemEvent("add").then(function(ids) { + var item = Zotero.Items.get(ids[0]); + assert.equal(item.getField("title"), "Scaling study of an improved fermion action on quenched lattices"); + assert.equal(item.getField("libraryCatalog"), "Google Scholar"); + }); + }); +}); +\ No newline at end of file diff --git a/test/tests/support.js b/test/tests/support.js @@ -0,0 +1,12 @@ +describe("Support Functions for Unit Testing", function() { + describe("resetDB", function() { + it("should restore the DB to factory settings", function() { + this.timeout(10000); + var quickstart = Zotero.Items.erase(1); + assert.equal(Zotero.Items.get(1), false); + return resetDB().then(function() { + assert.equal(Zotero.Items.get(1).getField("url"), "http://zotero.org/support/quick_start_guide"); + }); + }); + }); +}); diff --git a/test/tests/utilities.js b/test/tests/utilities.js @@ -0,0 +1,20 @@ +describe("Zotero.Utilities", function() { + describe("cleanAuthor", function() { + it('should parse author names', function() { + for(let useComma of [false, true]) { + for(let first_expected of [["First", "First"], + ["First Middle", "First Middle"], + ["F. R. S.", "F. R. S."], + ["F.R.S.", "F. R. S."], + ["F R S", "F. R. S."], + ["FRS", "F. R. S."]]) { + let [first, expected] = first_expected; + let str = useComma ? "Last, "+first : first+" Last"; + let author = Zotero.Utilities.cleanAuthor(str, "author", useComma); + assert.equal(author.firstName, expected); + assert.equal(author.lastName, "Last"); + } + } + }); + }); +}); diff --git a/update.rdf b/update.rdf @@ -12,7 +12,7 @@ <RDF:Description> <id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</id> <minVersion>31.0</minVersion> - <maxVersion>35.*</maxVersion> + <maxVersion>36.*</maxVersion> <updateLink>http://download.zotero.org/extension/zotero.xpi</updateLink> <updateHash>sha1:</updateHash> </RDF:Description>