update: support Zotero 7 localization

This commit is contained in:
windingwind 2023-06-19 17:28:39 +08:00
parent 3f9d02d95c
commit 02bf0f23b0
19 changed files with 520 additions and 469 deletions

View File

@ -1,3 +0,0 @@
content __addonRef__ chrome/content/
locale __addonRef__ en-US chrome/locale/en-US/
locale __addonRef__ zh-CN chrome/locale/zh-CN/

View File

@ -1,13 +1,17 @@
<linkset>
<html:link rel="localization" href="__addonRef__-preferences.ftl" />
</linkset>
<vbox
id="zotero-prefpane-__addonRef__"
onload="Zotero.__addonInstance__.hooks.onPrefsEvent('load', {window})"
>
<groupbox>
<label><html:h2>&zotero.__addonRef__.pref.workspace.title;</html:h2></label>
<label><html:h2 data-l10n-id="workspace-title"></html:h2></label>
<hbox>
<html:label for="__addonRef__-workspace-expandLevel"
>&zotero.__addonRef__.pref.workspace.expandLevel.label;</html:label
>
<html:label
for="__addonRef__-workspace-expandLevel"
data-l10n-id="workspace-expandLevel-label"
></html:label>
<html:input
type="number"
min="1"
@ -19,11 +23,12 @@
</hbox>
</groupbox>
<groupbox>
<label><html:h2>&zotero.__addonRef__.pref.sync.title;</html:h2></label>
<label><html:h2 data-l10n-id="sync-title"></html:h2></label>
<hbox>
<html:label for="__addonRef__-sync-period"
>&zotero.__addonRef__.pref.sync.period.label;</html:label
>
<html:label
for="__addonRef__-sync-period"
data-l10n-id="sync-period-label"
></html:label>
<html:input
type="number"
min="-1"
@ -37,26 +42,24 @@
<hbox>
<button
onclick="Zotero.__addonInstance__.hooks.onShowSyncManager()"
label="&zotero.__addonRef__.pref.sync.manager.label;"
data-l10n-id="sync-manager"
></button>
</hbox>
</groupbox>
<groupbox>
<label><html:h2>&zotero.__addonRef__.pref.template.title;</html:h2></label>
<label><html:h2 data-l10n-id="template-title"></html:h2></label>
<hbox>
<button
onclick="Zotero.__addonInstance__.hooks.onShowTemplateEditor()"
label="&zotero.__addonRef__.pref.template.editor.label;"
data-l10n-id="template-editor"
></button>
</hbox>
</groupbox>
<groupbox>
<label
><html:h2>&zotero.__addonRef__.pref.annotation.title;</html:h2></label
>
<label><html:h2 data-l10n-id="annotation-title"></html:h2></label>
<!-- <checkbox
id="__addonRef__-enableAddToNote"
label="&zotero.__addonRef__.pref.annotation.autoAnnotation.label;"
data-l10n-id="annotation-autoAnnotation"
native="true"
preference="__prefsPrefix__.autoAnnotation"
/> -->
@ -64,6 +67,7 @@
</vbox>
<vbox>
<label
value="&zotero.__addonRef__.help.version.label; &zotero.__addonRef__.help.releasetime.label;"
data-l10n-id="help"
data-l10n-args='{"time": "__buildTime__","name": "__addonName__","version":"__buildVersion__"}'
></label>
</vbox>

View File

@ -1,119 +0,0 @@
pref.title=BNotes
menuItem.setMainNote=As Workspace Note
menuItem.exportNote=Export Note
menuEdit.insertTemplate=Insert Template to Workspace Note
menuEdit.exportTemplate=Export Template to File...
menuEdit.templateEditor=Template Editor
menuEdit.importTemplate=New Template from Clipboard
menuTools.syncManager=Sync Manager
menuAddNote.newMainNote=New Workspace Note
menuAddNote.newMainNote.confirmHead=Will create a new note in collection
menuAddNote.newMainNote.confirmTail=and set it the workspace note. Continue?
menuAddNote.newMainNote.enterNoteTitle=Enter new note title:
menuAddNote.newMainNote.openWorkspaceTab=Open note workspace now?
menuAddNote.newTemplateStandaloneNote=New Standalone Note from Template
menuAddNote.newTemplateItemNote=New Item Note from Template
menuAddReaderNote.newTemplateNote=New Item Note from Template
menuEditor.resizeImage=Resize Image
templateEditor.title=Template Editor
templateEditor.templateName=Template Name
templateEditor.previewContainer=Preview
templateEditor.create=New
templateEditor.import=Import Note
templateEditor.more=More Templates
templateEditor.save=Save
templateEditor.delete=Delete
templateEditor.reset=Reset
templateEditor.help=Help
tab.name=Note Workspace
tab.openInWindow=Drag and drop here to open workspace in new window
workspaceWindow.name=Note Workspace
export.title=Export Notes
export.options.linkMode=Linked Notes Mode
export.options.MD=MarkDown(.md)
export.options.Docx=MS Word(.docx)
export.options.PDF=PDF(.pdf)
export.options.mm=Mind Map
export.options.note=Zotero Note
export.embedLink=All Embeded in One Export
export.standaloneLink=Each Converted to Standalone Exports
export.keepLink=Keep Zotero Links(zotero://note/)
export.exportMD=Export MD File(s)
export.setAutoSync=Set Auto-Sync
export.withYAMLHeader=With YAML Header
export.exportDocx=Export Docx File
export.exportPDF=Export PDF File
export.exportFreeMind=Export FreeMind File
export.exportNote=Export to New Zotero Note Item
export.confirm=Export
export.cancel=Close
export.target=Target
syncManager.title=Sync Manager
syncManager.refresh=Refresh
syncManager.sync=Sync
syncManager.syncDetail=Check and sync immedietly
syncManager.unSync=UnSync
syncManager.unSyncDetail=Remove selected notes from syncing list
syncManager.noteName=Note Name
syncManager.lastSync=Last Sync
syncManager.filePath=MarkDown Path
syncInfo.syncTo=MarkDown Path
syncInfo.lastSync=Last Sync
syncInfo.sync=Sync
syncInfo.unSync=UnSync
syncInfo.reveal=Show in Folder
syncInfo.manager=Sync Manager
syncInfo.export=Export As...
syncInfo.cancel=Close
fileInterface.sync=Sync to
sync.start.hint=Note Auto-Sync is enabled every
sync.stop.hint=Note Auto-Sync is disabled
sync.running.hint.title=Note Syncing
sync.running.hint.check=Check Status
sync.running.hint.updateMD=Update MarkDown
sync.running.hint.updateNote=Update Note
sync.running.hint.diff=Confirm Merge
sync.running.hint.finish=Finish
sync.running.hint.synced=Synced
sync.running.hint.upToDate=Up To Date
workspace.notesPane.hint=PDF NotePane is not accesible if no PDF files are opened.
workspace.switchOutline=Swith Outline Mode
workspace.saveOutlineImage=Save Image
workspace.saveOutlineFreeMind=Save MindMap
editor.toolbar.main=Workspace Note
editor.toolbar.settings.title=Workspace Settings
editor.toolbar.settings.openWorkspace=Open Note Workspace
editor.toolbar.settings.setWorkspace=Set as Workspace Note
editor.toolbar.settings.previewInWorkspace=Preview in Workspace
editor.toolbar.settings.insertTemplate=Insert Template to Cursor Line
editor.toolbar.settings.copyLink=Copy Note Link
editor.toolbar.settings.openParent=Open Attachment
editor.toolbar.settings.export=Export Current Note...
editor.toolbar.settings.refreshSyncing=Sync Now
editor.toolbar.link.title=Link current note to workspace
editor.toolbar.link.popup.nodata=Workspace note is invalid
templatePicker.itemData.info=are selected in library. Please choose the data source:
templatePicker.itemData.useLibrary=Use selected items in library
templatePicker.itemData.useCustom=Choose another...
templatePicker.itemData.title=Choose Item Template Data Source
alert.notValidCollectionError=Please select a valid collection.
alert.notValidParentItemError=No valid parent item.
alert.notValidWorkspaceNote=Workspace note is not set. Create one?

View File

@ -1,12 +0,0 @@
<!ENTITY zotero.__addonRef__.pref.workspace.title "Workspace">
<!ENTITY zotero.__addonRef__.pref.workspace.expandLevel.label "Outline expand to heading level">
<!ENTITY zotero.__addonRef__.pref.sync.title "Sync">
<!ENTITY zotero.__addonRef__.pref.sync.period.label "Auto-sync period (seconds)">
<!ENTITY zotero.__addonRef__.pref.sync.manager.label "Open Sync Manager">
<!ENTITY zotero.__addonRef__.pref.template.title "Template">
<!ENTITY zotero.__addonRef__.pref.template.editor.label "Open Template Editor">
<!ENTITY zotero.__addonRef__.pref.annotation.title "PDF Annotation">
<!ENTITY zotero.__addonRef__.pref.annotation.autoAnnotation.label "Automatically add new annotations to workspace note">
<!ENTITY zotero.__addonRef__.help.version.label "__addonName__ VERSION __buildVersion__">
<!ENTITY zotero.__addonRef__.help.releasetime.label "Build __buildTime__">

View File

@ -1,119 +0,0 @@
pref.title=BNotes
menuItem.setMainNote=Как заметка раб. пространства
menuItem.exportNote=Экспорт заметки
menuEdit.insertTemplate=Вставить шаблон в заметку раб. пространства
menuEdit.exportTemplate=Экспорт шаблона в файл...
menuEdit.templateEditor=Редактор шаблонов
menuEdit.importTemplate=New Template from Clipboard
menuTools.syncManager=Синк менеджер
menuAddNote.newMainNote=Новая заметка раб. пространства
menuAddNote.newMainNote.confirmHead=Создать новую заметку в коллекции
menuAddNote.newMainNote.confirmTail=и установить её как заметку раб. пространства. Продолжить?
menuAddNote.newMainNote.enterNoteTitle=Ввести имя новой заметки:
menuAddNote.newMainNote.openWorkspaceTab=Открыть пространство заметок?
menuAddNote.newTemplateStandaloneNote=Новая отдельная заметка из шаблона
menuAddNote.newTemplateItemNote=Новая элементная заметка из шаблона
menuAddReaderNote.newTemplateNote=Новая элементная заметка из шаблона
menuEditor.resizeImage=Изменить размер изображения
templateEditor.title=Редактор шаблонов
templateEditor.templateName=Имя шаблона
templateEditor.previewContainer=Предпросмотр
templateEditor.create=Новая
templateEditor.import=Импортировать заметку
templateEditor.more=Больше шаблонов
templateEditor.save=Сохранить
templateEditor.delete=Удалить
templateEditor.reset=Сброс
templateEditor.help=Помощь
tab.name=Рабочее пространство заметок
tab.openInWindow=Перетащите сюда для открытия раб. пространства в новом окне
workspaceWindow.name=Раб. пространство заметок
export.title=Экспорт заметок
export.options.linkMode=Режим связанных заметок
export.options.MD=MarkDown(.md)
export.options.Docx=MS Word(.docx)
export.options.PDF=PDF(.pdf)
export.options.mm=Mind Map
export.options.note=Zotero Note
export.embedLink=Все внедрённые в одном экспорте
export.standaloneLink=Каждый конвертированный в отдельный экспорт
export.keepLink=Сохранять Zotero ссылки(zotero://note/)
export.exportMD=Экспорт MD файл(-ов)
export.setAutoSync=Установить Авто-синк
export.withYAMLHeader=С YAML заголовком
export.exportDocx=Экспорт Docx файл
export.exportPDF=Экспорт PDF файл
export.exportFreeMind=Экспорт FreeMind файл
export.exportNote=Экспорт в новый пункт Zotero Note
export.confirm=Экспорт
export.cancel=Закрыть
export.target=Цель
syncManager.title=Синк Менеджер
syncManager.refresh=Обновить
syncManager.sync=Синк
syncManager.syncDetail=Проверить и синкнуть немедленно
syncManager.unSync=ДеСинк
syncManager.unSyncDetail=Удалить выделенные заметки из списка синхронизации
syncManager.noteName=Имя заметки
syncManager.lastSync=Последний Синк
syncManager.filePath=MarkDown путь
syncInfo.syncTo=MarkDown путь
syncInfo.lastSync=Последний Синк
syncInfo.sync=Синк
syncInfo.unSync=ДеСинк
syncInfo.reveal=Показать в папке
syncInfo.manager=Синк Менеджер
syncInfo.export=Экспортировать как...
syncInfo.cancel=Закрыть
fileInterface.sync=Синк to
sync.start.hint=Авто-Синк заметок включен каждые
sync.stop.hint=Авто-Синк заметок отключен
sync.running.hint.title=Синхронизация заметок
sync.running.hint.check=Проверить статус
sync.running.hint.updateMD=Обновить MarkDown
sync.running.hint.updateNote=Обновить заметку
sync.running.hint.diff=Подтвердить слияние
sync.running.hint.finish=Финиш
sync.running.hint.synced=Синхронизировано
sync.running.hint.upToDate=Обновить
workspace.notesPane.hint=PDF панель заметок недоступна если PDF файлы не открыты.
workspace.switchOutline=Переключить режим Набросок
workspace.saveOutlineImage=Сохранить изображение
workspace.saveOutlineFreeMind=Сохранить MindMap
editor.toolbar.main=Заметка рабочего пространства
editor.toolbar.settings.title=Настройки рабочего пространства
editor.toolbar.settings.openWorkspace=Открыть пространство заметок
editor.toolbar.settings.setWorkspace=Установить как заметку раб. пространства
editor.toolbar.settings.previewInWorkspace=Предпросмотр в рабочем пространстве
editor.toolbar.settings.insertTemplate=Вставить шаблон в строку курсора
editor.toolbar.settings.copyLink=Скопировать ссылку заметки
editor.toolbar.settings.openParent=Открыть вложение
editor.toolbar.settings.export=Экспортировать текущую заметку...
editor.toolbar.settings.refreshSyncing=Синхронизировать сейчас
editor.toolbar.link.title=Ссылка текущей заметки в рабочее пространство
editor.toolbar.link.popup.nodata=Workspace note is invalid
templatePicker.itemData.info=are selected in library. Please choose the data source:
templatePicker.itemData.useLibrary=Use selected items in library
templatePicker.itemData.useCustom=Choose another...
templatePicker.itemData.title=Choose Item Template Data Source
alert.notValidCollectionError=Выберите валидную коллекцию.
alert.notValidParentItemError=Нет валидного родительского элемента.
alert.notValidWorkspaceNote=Заметка рабочего пространства не установлена. Создать?

View File

@ -1,12 +0,0 @@
<!ENTITY zotero.__addonRef__.pref.workspace.title "Рабочее пространство">
<!ENTITY zotero.__addonRef__.pref.workspace.expandLevel.label "Outline расширить до уровня заголовка">
<!ENTITY zotero.__addonRef__.pref.sync.title "Синк">
<!ENTITY zotero.__addonRef__.pref.sync.period.label "Авто-синк период (сек)">
<!ENTITY zotero.__addonRef__.pref.sync.manager.label "Открыть Синк менеджер">
<!ENTITY zotero.__addonRef__.pref.template.title "Шаблон">
<!ENTITY zotero.__addonRef__.pref.template.editor.label "Открыть редактор шаблонов">
<!ENTITY zotero.__addonRef__.pref.annotation.title "PDF Аннотация">
<!ENTITY zotero.__addonRef__.pref.annotation.autoAnnotation.label "Автодобавлять новые аннотации к заметкам раб.пространства">
<!ENTITY zotero.__addonRef__.help.version.label "__addonName__ VERSION __buildVersion__">
<!ENTITY zotero.__addonRef__.help.releasetime.label "Build __buildTime__">

View File

@ -1,119 +0,0 @@
pref.title=BNotes
menuItem.setMainNote=设为工作区主笔记
menuItem.exportNote=导出笔记
menuEdit.insertTemplate=插入模板到工作区笔记
menuEdit.exportTemplate=导出模板到文件...
menuEdit.templateEditor=模板编辑器
menuEdit.importTemplate=从剪贴板导入新模板
menuTools.syncManager=同步管理器
menuAddNote.newMainNote=新建工作区笔记
menuAddNote.newMainNote.confirmHead=将在当前分类
menuAddNote.newMainNote.confirmTail=下创建新笔记并将它设为工作区笔记。确认继续吗?
menuAddNote.newMainNote.enterNoteTitle=请输入新笔记的标题:
menuAddNote.newMainNote.openWorkspaceTab=现在打开笔记工作区吗?
menuAddNote.newTemplateStandaloneNote=从模板新建独立笔记
menuAddNote.newTemplateItemNote=从模板新建条目子笔记
menuAddReaderNote.newTemplateNote=从模板新建条目子笔记
menuEditor.resizeImage=缩放图片
templateEditor.title=模板编辑器
templateEditor.templateName=模板名称
templateEditor.previewContainer=预览
templateEditor.create=新建
templateEditor.import=导入笔记
templateEditor.more=更多模板
templateEditor.save=保存
templateEditor.delete=删除
templateEditor.reset=重置
templateEditor.help=帮助
tab.name=笔记工作区
tab.openInWindow=拖放到此处以在新窗口打开
workspaceWindow.name=笔记工作区
export.title=导出笔记
export.options.linkMode=链接笔记模式
export.options.MD=MarkDown(.md)
export.options.Docx=MS Word(.docx)
export.options.PDF=PDF(.pdf)
export.options.mm=思维导图
export.options.note=Zotero笔记
export.embedLink=全部嵌入为一个导出
export.standaloneLink=分别单独导出
export.keepLink=保留Zotero链接(zotero://note/)
export.exportMD=导出MD文件
export.setAutoSync=设置自动同步
export.withYAMLHeader=带有YAML头
export.exportDocx=导出Word文件
export.exportPDF=导出PDF文件
export.exportFreeMind=导出FreeMind文件
export.exportNote=导出为Zotero笔记条目
export.confirm=导出
export.cancel=关闭
export.target=目标
syncManager.title=同步管理
syncManager.refresh=刷新
syncManager.sync=同步
syncManager.syncDetail=检查并立即同步
syncManager.unSync=取消同步
syncManager.unSyncDetail=从同步列表中移除选中的笔记
syncManager.noteName=笔记名称
syncManager.lastSync=最近同步
syncManager.filePath=MarkDown路径
syncInfo.syncTo=MarkDown路径
syncInfo.lastSync=最近同步
syncInfo.sync=同步
syncInfo.unSync=取消同步
syncInfo.reveal=在文件夹中显示
syncInfo.manager=同步管理
syncInfo.export=导出为...
syncInfo.cancel=关闭
sync.start.hint=自动同步已启用, 间隔
sync.stop.hint=自动同步已停止
sync.running.hint.title=笔记同步
sync.running.hint.check=检查状态
sync.running.hint.updateMD=更新MarkDown
sync.running.hint.updateNote=更新笔记
sync.running.hint.diff=确认合并
sync.running.hint.finish=同步完成
sync.running.hint.synced=已同步
sync.running.hint.upToDate=已最新
fileInterface.sync=同步到
workspace.notesPane.hint=PDF笔记侧栏在没有PDF文件打开时不可访问.
workspace.switchOutline=切换大纲模式
workspace.saveOutlineImage=保存图片
workspace.saveOutlineFreeMind=保存思维导图
editor.toolbar.main=工作区笔记
editor.toolbar.settings.title=工作区选项
editor.toolbar.settings.openWorkspace=打开笔记工作区
editor.toolbar.settings.setWorkspace=设为工作区笔记
editor.toolbar.settings.previewInWorkspace=在工作区预览
editor.toolbar.settings.insertTemplate=插入模板到光标行
editor.toolbar.settings.copyLink=复制笔记链接
editor.toolbar.settings.openParent=打开附件
editor.toolbar.settings.export=导出当前笔记...
editor.toolbar.settings.refreshSyncing=立即同步
editor.toolbar.link.title=链接当前笔记到工作区
editor.toolbar.link.popup.nodata=工作区笔记不可用
templatePicker.itemData.info=在文库中被选中。请选择模板数据源:
templatePicker.itemData.useLibrary=使用文库中选中的条目
templatePicker.itemData.useCustom=另作选择...
templatePicker.itemData.title=选择条目模板数据源
alert.notValidCollectionError=请选择一个有效的分类。
alert.notValidParentItemError=无效的父条目。
alert.notValidWorkspaceNote=工作区笔记未设置。创建一个吗?

View File

@ -1,12 +0,0 @@
<!ENTITY zotero.__addonRef__.pref.workspace.title "工作区">
<!ENTITY zotero.__addonRef__.pref.workspace.expandLevel.label "大纲展开至标题层级">
<!ENTITY zotero.__addonRef__.pref.sync.title "同步">
<!ENTITY zotero.__addonRef__.pref.sync.period.label "自动同步周期 (秒)">
<!ENTITY zotero.__addonRef__.pref.sync.manager.label "打开同步管理器">
<!ENTITY zotero.__addonRef__.pref.template.title "模板">
<!ENTITY zotero.__addonRef__.pref.template.editor.label "打开模板编辑器">
<!ENTITY zotero.__addonRef__.pref.annotation.title "PDF批注">
<!ENTITY zotero.__addonRef__.pref.annotation.autoAnnotation.label "自动添加新批注到工作区笔记">
<!ENTITY zotero.__addonRef__.help.version.label "__addonName__ 版本 __buildVersion__">
<!ENTITY zotero.__addonRef__.help.releasetime.label "Build __buildTime__">

View File

@ -1,35 +0,0 @@
<?xml version="1.0"?>
<RDF:RDF
xmlns:em="http://www.mozilla.org/2004/em-rdf#"
xmlns:NC="http://home.netscape.com/NC-rdf#"
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<RDF:Description
RDF:about="urn:mozilla:install-manifest"
em:id="__addonID__"
em:name="__addonName__"
em:version="__buildVersion__"
em:type="2"
em:creator="__author__"
em:description="__description__"
em:homepageURL="__homepage__"
em:iconURL="chrome://__addonRef__/content/icons/favicon.png"
em:optionsURL="chrome://__addonRef__/content/preferences.xul"
em:updateURL="__updaterdf__"
em:multiprocessCompatible="true"
em:bootstrap="true">
<em:targetApplication>
<Description>
<em:id>zotero@chnm.gmu.edu</em:id>
<em:minVersion>5.0</em:minVersion>
<em:maxVersion>*</em:maxVersion>
</Description>
</em:targetApplication>
<em:targetApplication>
<Description>
<em:id>juris-m@juris-m.github.io</em:id>
<em:minVersion>5.0</em:minVersion>
<em:maxVersion>*</em:maxVersion>
</Description>
</em:targetApplication>
</RDF:Description>
</RDF:RDF>

View File

@ -0,0 +1,119 @@
pref-title = BNotes
menuItem-setMainNote = As Workspace Note
menuItem-exportNote = Export Note
menuEdit-insertTemplate = Insert Template to Workspace Note
menuEdit-exportTemplate = Export Template to File...
menuEdit-templateEditor = Template Editor
menuEdit-importTemplate = New Template from Clipboard
menuTools-syncManager = Sync Manager
menuAddNote-newMainNote = New Workspace Note
menuAddNote-newMainNote-confirmHead = Will create a new note in collection
menuAddNote-newMainNote-confirmTail = and set it the workspace note. Continue?
menuAddNote-newMainNote-enterNoteTitle = Enter new note title:
menuAddNote-newMainNote-openWorkspaceTab = Open note workspace now?
menuAddNote-newTemplateStandaloneNote = New Standalone Note from Template
menuAddNote-newTemplateItemNote = New Item Note from Template
menuAddReaderNote-newTemplateNote = New Item Note from Template
menuEditor-resizeImage = Resize Image
templateEditor-title = Template Editor
templateEditor-templateName = Template Name
templateEditor-previewContainer = Preview
templateEditor-create = New
templateEditor-import = Import Note
templateEditor-more = More Templates
templateEditor-save = Save
templateEditor-delete = Delete
templateEditor-reset = Reset
templateEditor-help = Help
tab-name = Note Workspace
tab-openInWindow = Drag and drop here to open workspace in new window
workspaceWindow-name = Note Workspace
export-title = Export Notes
export-options-linkMode = Linked Notes Mode
export-options-MD = MarkDown(.md)
export-options-Docx = MS Word(.docx)
export-options-PDF = PDF(.pdf)
export-options-mm = Mind Map
export-options-note = Zotero Note
export-embedLink = All Embeded in One Export
export-standaloneLink = Each Converted to Standalone Exports
export-keepLink = Keep Zotero Links(zotero://note/)
export-exportMD = Export MD File(s)
export-setAutoSync = Set Auto-Sync
export-withYAMLHeader = With YAML Header
export-exportDocx = Export Docx File
export-exportPDF = Export PDF File
export-exportFreeMind = Export FreeMind File
export-exportNote = Export to New Zotero Note Item
export-confirm = Export
export-cancel = Close
export-target = Target
syncManager-title = Sync Manager
syncManager-refresh = Refresh
syncManager-sync = Sync
syncManager-syncDetail = Check and sync immedietly
syncManager-unSync = UnSync
syncManager-unSyncDetail = Remove selected notes from syncing list
syncManager-noteName = Note Name
syncManager-lastSync = Last Sync
syncManager-filePath = MarkDown Path
syncInfo-syncTo = MarkDown Path
syncInfo-lastSync = Last Sync
syncInfo-sync = Sync
syncInfo-unSync = UnSync
syncInfo-reveal = Show in Folder
syncInfo-manager = Sync Manager
syncInfo-export = Export As...
syncInfo-cancel = Close
fileInterface-sync = Sync to
sync-start-hint = Note Auto-Sync is enabled every
sync-stop-hint = Note Auto-Sync is disabled
sync-running-hint-title = Note Syncing
sync-running-hint-check = Check Status
sync-running-hint-updateMD = Update MarkDown
sync-running-hint-updateNote = Update Note
sync-running-hint-diff = Confirm Merge
sync-running-hint-finish = Finish
sync-running-hint-synced = Synced
sync-running-hint-upToDate = Up To Date
workspace-notesPane-hint = PDF NotePane is not accesible if no PDF files are opened.
workspace-switchOutline = Swith Outline Mode
workspace-saveOutlineImage = Save Image
workspace-saveOutlineFreeMind = Save MindMap
editor-toolbar-main = Workspace Note
editor-toolbar-settings-title = Workspace Settings
editor-toolbar-settings-openWorkspace = Open Note Workspace
editor-toolbar-settings-setWorkspace = Set as Workspace Note
editor-toolbar-settings-previewInWorkspace = Preview in Workspace
editor-toolbar-settings-insertTemplate = Insert Template to Cursor Line
editor-toolbar-settings-copyLink = Copy Note Link
editor-toolbar-settings-openParent = Open Attachment
editor-toolbar-settings-export = Export Current Note...
editor-toolbar-settings-refreshSyncing = Sync Now
editor-toolbar-link-title = Link current note to workspace
editor-toolbar-link-popup-nodata = Workspace note is invalid
templatePicker-itemData-info = are selected in library. Please choose the data source:
templatePicker-itemData-useLibrary = Use selected items in library
templatePicker-itemData-useCustom = Choose another.
templatePicker-itemData-title = Choose Item Template Data Source
alert-notValidCollectionError = Please select a valid collection.
alert-notValidParentItemError = No valid parent item.
alert-notValidWorkspaceNote = Workspace note is not set. Create one?

View File

@ -0,0 +1,14 @@
workspace-title = Workspace
workspace-expandLevel-label = Outline expand to heading level
sync-title = Sync
sync-period-label = Auto-sync period (seconds)
sync-manager =
.label = Open Sync Manager
template-title = Template
template-editor =
.label = Open Template Editor
annotation-title = PDF Annotation
annotation-autoAnnotation =
.label = Automatically add new annotations to workspace note
help =
.value = { $name } VERSION { $version } Build { $time }

View File

@ -0,0 +1,119 @@
pref-title=BNotes
menuItem-setMainNote=Как заметка раб. пространства
menuItem-exportNote=Экспорт заметки
menuEdit-insertTemplate=Вставить шаблон в заметку раб. пространства
menuEdit-exportTemplate=Экспорт шаблона в файл...
menuEdit-templateEditor=Редактор шаблонов
menuEdit-importTemplate=New Template from Clipboard
menuTools-syncManager=Синк менеджер
menuAddNote-newMainNote=Новая заметка раб. пространства
menuAddNote-newMainNote-confirmHead=Создать новую заметку в коллекции
menuAddNote-newMainNote-confirmTail=и установить её как заметку раб. пространства. Продолжить?
menuAddNote-newMainNote-enterNoteTitle=Ввести имя новой заметки:
menuAddNote-newMainNote-openWorkspaceTab=Открыть пространство заметок?
menuAddNote-newTemplateStandaloneNote=Новая отдельная заметка из шаблона
menuAddNote-newTemplateItemNote=Новая элементная заметка из шаблона
menuAddReaderNote-newTemplateNote=Новая элементная заметка из шаблона
menuEditor-resizeImage=Изменить размер изображения
templateEditor-title=Редактор шаблонов
templateEditor-templateName=Имя шаблона
templateEditor-previewContainer=Предпросмотр
templateEditor-create=Новая
templateEditor-import=Импортировать заметку
templateEditor-more=Больше шаблонов
templateEditor-save=Сохранить
templateEditor-delete=Удалить
templateEditor-reset=Сброс
templateEditor-help=Помощь
tab-name=Рабочее пространство заметок
tab-openInWindow=Перетащите сюда для открытия раб. пространства в новом окне
workspaceWindow-name=Раб. пространство заметок
export-title=Экспорт заметок
export-options-linkMode=Режим связанных заметок
export-options-MD=MarkDown(.md)
export-options-Docx=MS Word(.docx)
export-options-PDF=PDF(.pdf)
export-options-mm=Mind Map
export-options-note=Zotero Note
export-embedLink=Все внедрённые в одном экспорте
export-standaloneLink=Каждый конвертированный в отдельный экспорт
export-keepLink=Сохранять Zotero ссылки(zotero://note/)
export-exportMD=Экспорт MD файл(-ов)
export-setAutoSync=Установить Авто-синк
export-withYAMLHeader=С YAML заголовком
export-exportDocx=Экспорт Docx файл
export-exportPDF=Экспорт PDF файл
export-exportFreeMind=Экспорт FreeMind файл
export-exportNote=Экспорт в новый пункт Zotero Note
export-confirm=Экспорт
export-cancel=Закрыть
export-target=Цель
syncManager-title=Синк Менеджер
syncManager-refresh=Обновить
syncManager-sync=Синк
syncManager-syncDetail=Проверить и синкнуть немедленно
syncManager-unSync=ДеСинк
syncManager-unSyncDetail=Удалить выделенные заметки из списка синхронизации
syncManager-noteName=Имя заметки
syncManager-lastSync=Последний Синк
syncManager-filePath=MarkDown путь
syncInfo-syncTo=MarkDown путь
syncInfo-lastSync=Последний Синк
syncInfo-sync=Синк
syncInfo-unSync=ДеСинк
syncInfo-reveal=Показать в папке
syncInfo-manager=Синк Менеджер
syncInfo-export=Экспортировать как...
syncInfo-cancel=Закрыть
fileInterface-sync=Синк to
sync-start-hint=Авто-Синк заметок включен каждые
sync-stop-hint=Авто-Синк заметок отключен
sync-running-hint-title=Синхронизация заметок
sync-running-hint-check=Проверить статус
sync-running-hint-updateMD=Обновить MarkDown
sync-running-hint-updateNote=Обновить заметку
sync-running-hint-diff=Подтвердить слияние
sync-running-hint-finish=Финиш
sync-running-hint-synced=Синхронизировано
sync-running-hint-upToDate=Обновить
workspace-notesPane-hint=PDF панель заметок недоступна если PDF файлы не открыты.
workspace-switchOutline=Переключить режим Набросок
workspace-saveOutlineImage=Сохранить изображение
workspace-saveOutlineFreeMind=Сохранить MindMap
editor-toolbar-main=Заметка рабочего пространства
editor-toolbar-settings-title=Настройки рабочего пространства
editor-toolbar-settings-openWorkspace=Открыть пространство заметок
editor-toolbar-settings-setWorkspace=Установить как заметку раб. пространства
editor-toolbar-settings-previewInWorkspace=Предпросмотр в рабочем пространстве
editor-toolbar-settings-insertTemplate=Вставить шаблон в строку курсора
editor-toolbar-settings-copyLink=Скопировать ссылку заметки
editor-toolbar-settings-openParent=Открыть вложение
editor-toolbar-settings-export=Экспортировать текущую заметку...
editor-toolbar-settings-refreshSyncing=Синхронизировать сейчас
editor-toolbar-link-title=Ссылка текущей заметки в рабочее пространство
editor-toolbar-link-popup-nodata=Workspace note is invalid
templatePicker-itemData-info=are selected in library. Please choose the data source:
templatePicker-itemData-useLibrary=Use selected items in library
templatePicker-itemData-useCustom=Choose another...
templatePicker-itemData-title=Choose Item Template Data Source
alert-notValidCollectionError=Выберите валидную коллекцию.
alert-notValidParentItemError=Нет валидного родительского элемента.
alert-notValidWorkspaceNote=Заметка рабочего пространства не установлена. Создать?

View File

@ -0,0 +1,14 @@
workspace-title = Рабочее пространство
workspace-expandLevel-label = Outline расширить до уровня заголовка
sync-title = Синк
sync-period-label = Авто-синк период (сек)
sync-manager =
.label = Открыть Синк менеджер
template-title = Шаблон
template-editor =
.label = Открыть редактор шаблонов
annotation-title = PDF Аннотация
annotation-autoAnnotation =
.label = Автодобавлять новые аннотации к заметкам раб.пространства
help =
.value = { $name } VERSION { $version } Build { $time }

View File

@ -0,0 +1,119 @@
pref-title=BNotes
menuItem-setMainNote=设为工作区主笔记
menuItem-exportNote=导出笔记
menuEdit-insertTemplate=插入模板到工作区笔记
menuEdit-exportTemplate=导出模板到文件...
menuEdit-templateEditor=模板编辑器
menuEdit-importTemplate=从剪贴板导入新模板
menuTools-syncManager=同步管理器
menuAddNote-newMainNote=新建工作区笔记
menuAddNote-newMainNote-confirmHead=将在当前分类
menuAddNote-newMainNote-confirmTail=下创建新笔记并将它设为工作区笔记。确认继续吗?
menuAddNote-newMainNote-enterNoteTitle=请输入新笔记的标题:
menuAddNote-newMainNote-openWorkspaceTab=现在打开笔记工作区吗?
menuAddNote-newTemplateStandaloneNote=从模板新建独立笔记
menuAddNote-newTemplateItemNote=从模板新建条目子笔记
menuAddReaderNote-newTemplateNote=从模板新建条目子笔记
menuEditor-resizeImage=缩放图片
templateEditor-title=模板编辑器
templateEditor-templateName=模板名称
templateEditor-previewContainer=预览
templateEditor-create=新建
templateEditor-import=导入笔记
templateEditor-more=更多模板
templateEditor-save=保存
templateEditor-delete=删除
templateEditor-reset=重置
templateEditor-help=帮助
tab-name=笔记工作区
tab-openInWindow=拖放到此处以在新窗口打开
workspaceWindow-name=笔记工作区
export-title=导出笔记
export-options-linkMode=链接笔记模式
export-options-MD=MarkDown(.md)
export-options-Docx=MS Word(.docx)
export-options-PDF=PDF(.pdf)
export-options-mm=思维导图
export-options-note=Zotero笔记
export-embedLink=全部嵌入为一个导出
export-standaloneLink=分别单独导出
export-keepLink=保留Zotero链接(zotero://note/)
export-exportMD=导出MD文件
export-setAutoSync=设置自动同步
export-withYAMLHeader=带有YAML头
export-exportDocx=导出Word文件
export-exportPDF=导出PDF文件
export-exportFreeMind=导出FreeMind文件
export-exportNote=导出为Zotero笔记条目
export-confirm=导出
export-cancel=关闭
export-target=目标
syncManager-title=同步管理
syncManager-refresh=刷新
syncManager-sync=同步
syncManager-syncDetail=检查并立即同步
syncManager-unSync=取消同步
syncManager-unSyncDetail=从同步列表中移除选中的笔记
syncManager-noteName=笔记名称
syncManager-lastSync=最近同步
syncManager-filePath=MarkDown路径
syncInfo-syncTo=MarkDown路径
syncInfo-lastSync=最近同步
syncInfo-sync=同步
syncInfo-unSync=取消同步
syncInfo-reveal=在文件夹中显示
syncInfo-manager=同步管理
syncInfo-export=导出为---
syncInfo-cancel=关闭
sync-start-hint=自动同步已启用, 间隔
sync-stop-hint=自动同步已停止
sync-running-hint-title=笔记同步
sync-running-hint-check=检查状态
sync-running-hint-updateMD=更新MarkDown
sync-running-hint-updateNote=更新笔记
sync-running-hint-diff=确认合并
sync-running-hint-finish=同步完成
sync-running-hint-synced=已同步
sync-running-hint-upToDate=已最新
fileInterface-sync=同步到
workspace-notesPane-hint=PDF笔记侧栏在没有PDF文件打开时不可访问-
workspace-switchOutline=切换大纲模式
workspace-saveOutlineImage=保存图片
workspace-saveOutlineFreeMind=保存思维导图
editor-toolbar-main=工作区笔记
editor-toolbar-settings-title=工作区选项
editor-toolbar-settings-openWorkspace=打开笔记工作区
editor-toolbar-settings-setWorkspace=设为工作区笔记
editor-toolbar-settings-previewInWorkspace=在工作区预览
editor-toolbar-settings-insertTemplate=插入模板到光标行
editor-toolbar-settings-copyLink=复制笔记链接
editor-toolbar-settings-openParent=打开附件
editor-toolbar-settings-export=导出当前笔记...
editor-toolbar-settings-refreshSyncing=立即同步
editor-toolbar-link-title=链接当前笔记到工作区
editor-toolbar-link-popup-nodata=工作区笔记不可用
templatePicker-itemData-info=在文库中被选中。请选择模板数据源:
templatePicker-itemData-useLibrary=使用文库中选中的条目
templatePicker-itemData-useCustom=另作选择...
templatePicker-itemData-title=选择条目模板数据源
alert-notValidCollectionError=请选择一个有效的分类。
alert-notValidParentItemError=无效的父条目。
alert-notValidWorkspaceNote=工作区笔记未设置。创建一个吗?

View File

@ -0,0 +1,14 @@
workspace-title = 工作区
workspace-expandLevel-label = 大纲展开至标题层级
sync-title = 同步
sync-period-label = 自动同步周期 (秒)
sync-manager =
.label = 打开同步管理器
template-title = 模板
template-editor =
.label = 打开模板编辑器
annotation-title = PDF批注
annotation-autoAnnotation =
.label = 自动添加新批注到工作区笔记
help =
.value = { $name } 版本 { $version } 构建 { $time }

View File

@ -9,6 +9,7 @@ import {
mkdirSync,
readdirSync,
rmSync,
renameSync,
} from "fs";
import { env, exit } from "process";
import replaceInFile from "replace-in-file";
@ -146,15 +147,10 @@ async function main() {
const optionsAddon = {
files: [
join(buildDir, "**/*.rdf"),
join(buildDir, "**/*.dtd"),
join(buildDir, "**/*.xul"),
join(buildDir, "**/*.html"),
join(buildDir, "**/*.xhtml"),
join(buildDir, "**/*.json"),
join(buildDir, "addon/prejs"),
join(buildDir, "addon/chrome.manifest"),
join(buildDir, "addon/manifest.json"),
join(buildDir, "addon/prefs.js"),
join(buildDir, "addon/bootstrap.js"),
"update.json",
"update.rdf",
@ -174,6 +170,30 @@ async function main() {
console.log("[Build] Replace OK");
// Walk the builds/addon/locale folder's sub folders and rename *.ftl to addonRef-*.ftl
const localeDir = join(buildDir, "addon/locale");
const localeFolders = readdirSync(localeDir, { withFileTypes: true })
.filter((dirent) => dirent.isDirectory())
.map((dirent) => dirent.name);
for (const localeSubFolder of localeFolders) {
const localeSubDir = join(localeDir, localeSubFolder);
const localeSubFiles = readdirSync(localeSubDir, {
withFileTypes: true,
})
.filter((dirent) => dirent.isFile())
.map((dirent) => dirent.name);
for (const localeSubFile of localeSubFiles) {
if (localeSubFile.endsWith(".ftl")) {
renameSync(
join(localeSubDir, localeSubFile),
join(localeSubDir, `${config.addonRef}-${localeSubFile}`)
);
}
}
}
console.log("[Build] Addon prepare OK");
zip.compressDir(join(buildDir, "addon"), join(buildDir, `${name}.xpi`), {

View File

@ -31,7 +31,7 @@ class Addon {
ztoolkit: MyToolkit;
// ztoolkit: ZoteroToolkit;
locale?: {
stringBundle: any;
current: any;
};
prefs?: {
window: Window;

View File

@ -1,23 +1,80 @@
import { config } from "../../package.json";
export function initLocale() {
export { initLocale, getString };
/**
* Initialize locale data
*/
function initLocale() {
const l10n = new (
typeof Localization === "undefined"
? ztoolkit.getGlobal("Localization")
: Localization
)([`${config.addonRef}-addon.ftl`], true);
addon.data.locale = {
stringBundle: Components.classes["@mozilla.org/intl/stringbundle;1"]
.getService(Components.interfaces.nsIStringBundleService)
.createBundle(`chrome://${config.addonRef}/locale/addon.properties`),
current: l10n,
};
}
export function getString(localeString: string): string {
switch (localeString) {
case "alt":
return Zotero.isMac ? "⌥" : "Alt";
case "ctrl":
return Zotero.isMac ? "⌘" : "Ctrl";
}
try {
return addon.data.locale?.stringBundle.GetStringFromName(localeString);
} catch (e) {
return localeString;
/**
* Get locale string, see https://firefox-source-docs.mozilla.org/l10n/fluent/tutorial.html#fluent-translation-list-ftl
* @param localString ftl key
* @param options.branch branch name
* @param options.args args
* @example
* ```ftl
* # addon.ftl
* addon-static-example = This is default branch!
* .branch-example = This is a branch under addon-static-example!
* addon-dynamic-example =
{ $count ->
[one] I have { $count } apple
*[other] I have { $count } apples
}
* ```
* ```js
* getString("addon-static-example"); // This is default branch!
* getString("addon-static-example", { branch: "branch-example" }); // This is a branch under addon-static-example!
* getString("addon-dynamic-example", { args: { count: 1 } }); // I have 1 apple
* getString("addon-dynamic-example", { args: { count: 2 } }); // I have 2 apples
* ```
*/
function getString(localeString: string): string;
function getString(localeString: string, branch: string): string;
function getString(
localeString: string,
options: { branch?: string | undefined; args?: Record<string, unknown> }
): string;
function getString(...inputs: any[]) {
// Old .properties uses . while .ftl uses -
const localeString = (inputs[0] as string).replace(/\./g, "-");
if (inputs.length === 1) {
return _getString(localeString);
} else if (inputs.length === 2) {
if (typeof inputs[1] === "string") {
return _getString(localeString, { branch: inputs[1] });
} else {
return _getString(localeString, inputs[1]);
}
} else {
throw new Error("Invalid arguments");
}
}
function _getString(
localeString: string,
options: { branch?: string | undefined; args?: Record<string, unknown> } = {}
): string {
const { branch, args } = options;
const pattern = addon.data.locale?.current.formatMessagesSync([
{ id: localeString, args },
])[0];
if (!pattern) {
return localeString;
}
if (branch && pattern.attributes) {
return pattern.attributes[branch] || localeString;
} else {
return pattern.value || localeString;
}
}

2
typing/global.d.ts vendored
View File

@ -30,3 +30,5 @@ declare const addon: import("../src/addon").default;
declare const __env__: "production" | "development";
declare const ChromeUtils: any;
declare class Localization {}