From fe9afc8952ba5eb2538af162b816ca32f46fb34e Mon Sep 17 00:00:00 2001 From: Simon Date: Tue, 6 Mar 2018 14:07:04 +0100 Subject: [PATCH] extracted all strings from html lines --- browser/lib/i18n.js | 2 +- browser/main/Detail/InfoPanel.js | 2 +- browser/main/Detail/InfoPanelTrashed.js | 9 +- browser/main/Detail/PermanentDeleteButton.js | 3 +- browser/main/Detail/RestoreButton.js | 3 +- browser/main/Detail/ToggleModeButton.js | 3 +- browser/main/Detail/TrashButton.js | 3 +- browser/main/NewNoteButton/index.js | 3 +- browser/main/SideNav/ListButton.js | 3 +- browser/main/SideNav/PreferenceButton.js | 3 +- browser/main/SideNav/TagButton.js | 3 +- browser/main/StatusBar/index.js | 3 +- browser/main/TopBar/index.js | 3 +- browser/main/modals/NewNoteModal.js | 11 ++- .../modals/PreferencesModal/Crowdfunding.js | 21 +++-- .../modals/PreferencesModal/FolderItem.js | 11 ++- .../main/modals/PreferencesModal/InfoTab.js | 37 ++++---- .../modals/PreferencesModal/StorageItem.js | 7 +- .../modals/PreferencesModal/StoragesTab.js | 25 ++--- browser/main/modals/PreferencesModal/UiTab.js | 71 +++++++------- browser/main/modals/PreferencesModal/index.js | 3 +- browser/main/modals/RenameFolderModal.js | 3 +- locales/de.js | 94 ++++++++++++++++++- locales/en.js | 87 ++++++++++++++++- 24 files changed, 302 insertions(+), 111 deletions(-) diff --git a/browser/lib/i18n.js b/browser/lib/i18n.js index aa2f0a89..0b51ea54 100644 --- a/browser/lib/i18n.js +++ b/browser/lib/i18n.js @@ -2,6 +2,6 @@ const i18n = new (require('i18n-2'))({ // setup some locales - other locales default to the first locale locales: ['en', 'de', 'fr'] - }); +}); export default i18n; \ No newline at end of file diff --git a/browser/main/Detail/InfoPanel.js b/browser/main/Detail/InfoPanel.js index 629f0b97..4ce610fa 100644 --- a/browser/main/Detail/InfoPanel.js +++ b/browser/main/Detail/InfoPanel.js @@ -82,7 +82,7 @@ class InfoPanel extends React.Component { ) diff --git a/browser/main/Detail/RestoreButton.js b/browser/main/Detail/RestoreButton.js index 0f9c992e..5d0186db 100644 --- a/browser/main/Detail/RestoreButton.js +++ b/browser/main/Detail/RestoreButton.js @@ -2,6 +2,7 @@ import PropTypes from 'prop-types' import React from 'react' import CSSModules from 'browser/lib/CSSModules' import styles from './RestoreButton.styl' +import i18n from 'browser/lib/i18n' const RestoreButton = ({ onClick @@ -10,7 +11,7 @@ const RestoreButton = ({ onClick={onClick} > - Restore + {i18n.__('Restore')} ) diff --git a/browser/main/Detail/ToggleModeButton.js b/browser/main/Detail/ToggleModeButton.js index e2d143d4..c414a3e5 100644 --- a/browser/main/Detail/ToggleModeButton.js +++ b/browser/main/Detail/ToggleModeButton.js @@ -2,6 +2,7 @@ import PropTypes from 'prop-types' import React from 'react' import CSSModules from 'browser/lib/CSSModules' import styles from './ToggleModeButton.styl' +import i18n from 'browser/lib/i18n' const ToggleModeButton = ({ onClick, editorType @@ -13,7 +14,7 @@ const ToggleModeButton = ({
onClick('EDITOR_PREVIEW')}>
- Toggle Mode + {i18n.__('Toggle Mode')} ) diff --git a/browser/main/Detail/TrashButton.js b/browser/main/Detail/TrashButton.js index 474eb9e5..473c2d0b 100644 --- a/browser/main/Detail/TrashButton.js +++ b/browser/main/Detail/TrashButton.js @@ -2,6 +2,7 @@ import PropTypes from 'prop-types' import React from 'react' import CSSModules from 'browser/lib/CSSModules' import styles from './TrashButton.styl' +import i18n from 'browser/lib/i18n' const TrashButton = ({ onClick @@ -10,7 +11,7 @@ const TrashButton = ({ onClick={(e) => onClick(e)} > - Trash + {i18n.__('Trash')} ) diff --git a/browser/main/NewNoteButton/index.js b/browser/main/NewNoteButton/index.js index 633433df..b2d8cec6 100644 --- a/browser/main/NewNoteButton/index.js +++ b/browser/main/NewNoteButton/index.js @@ -6,6 +6,7 @@ import _ from 'lodash' import modal from 'browser/main/lib/modal' import NewNoteModal from 'browser/main/modals/NewNoteModal' import eventEmitter from 'browser/main/lib/eventEmitter' +import i18n from 'browser/lib/i18n' const { remote } = require('electron') const { dialog } = remote @@ -86,7 +87,7 @@ class NewNoteButton extends React.Component { onClick={(e) => this.handleNewNoteButtonClick(e)}> - Make a note {OSX ? '⌘' : 'Ctrl'} + N + {i18n.__('Make a note')} {OSX ? '⌘' : i18n.__('Ctrl')} + N diff --git a/browser/main/SideNav/ListButton.js b/browser/main/SideNav/ListButton.js index 1365c4cb..b5bc1488 100644 --- a/browser/main/SideNav/ListButton.js +++ b/browser/main/SideNav/ListButton.js @@ -2,6 +2,7 @@ import PropTypes from 'prop-types' import React from 'react' import CSSModules from 'browser/lib/CSSModules' import styles from './SwitchButton.styl' +import i18n from 'browser/lib/i18n' const ListButton = ({ onClick, isTagActive @@ -12,7 +13,7 @@ const ListButton = ({ : '../resources/icon/icon-list-active.svg' } /> - Notes + {i18n.__('Notes')} ) diff --git a/browser/main/SideNav/PreferenceButton.js b/browser/main/SideNav/PreferenceButton.js index 9f483a28..187171f4 100644 --- a/browser/main/SideNav/PreferenceButton.js +++ b/browser/main/SideNav/PreferenceButton.js @@ -2,13 +2,14 @@ import PropTypes from 'prop-types' import React from 'react' import CSSModules from 'browser/lib/CSSModules' import styles from './PreferenceButton.styl' +import i18n from 'browser/lib/i18n' const PreferenceButton = ({ onClick }) => ( ) diff --git a/browser/main/SideNav/TagButton.js b/browser/main/SideNav/TagButton.js index 87d92c49..d91ae2c4 100644 --- a/browser/main/SideNav/TagButton.js +++ b/browser/main/SideNav/TagButton.js @@ -2,6 +2,7 @@ import PropTypes from 'prop-types' import React from 'react' import CSSModules from 'browser/lib/CSSModules' import styles from './SwitchButton.styl' +import i18n from 'browser/lib/i18n' const TagButton = ({ onClick, isTagActive @@ -12,7 +13,7 @@ const TagButton = ({ : '../resources/icon/icon-tag.svg' } /> - Tags + {i18n.__('Tags')} ) diff --git a/browser/main/StatusBar/index.js b/browser/main/StatusBar/index.js index 49c1b40c..e3dd8fac 100644 --- a/browser/main/StatusBar/index.js +++ b/browser/main/StatusBar/index.js @@ -3,6 +3,7 @@ import React from 'react' import CSSModules from 'browser/lib/CSSModules' import styles from './StatusBar.styl' import ZoomManager from 'browser/main/lib/ZoomManager' +import i18n from 'browser/lib/i18n' const electron = require('electron') const { remote, ipcRenderer } = electron @@ -62,7 +63,7 @@ class StatusBar extends React.Component { {status.updateReady ? : null } diff --git a/browser/main/TopBar/index.js b/browser/main/TopBar/index.js index 246ef614..860d5b0d 100644 --- a/browser/main/TopBar/index.js +++ b/browser/main/TopBar/index.js @@ -5,6 +5,7 @@ import styles from './TopBar.styl' import _ from 'lodash' import ee from 'browser/main/lib/eventEmitter' import NewNoteButton from 'browser/main/NewNoteButton' +import i18n from 'browser/lib/i18n' class TopBar extends React.Component { constructor (props) { @@ -185,7 +186,7 @@ class TopBar extends React.Component { onClick={(e) => this.handleSearchClearButton(e)} > - Clear Search + {i18n.__('Clear Search')} } diff --git a/browser/main/modals/NewNoteModal.js b/browser/main/modals/NewNoteModal.js index 8322d99f..641c348d 100644 --- a/browser/main/modals/NewNoteModal.js +++ b/browser/main/modals/NewNoteModal.js @@ -6,6 +6,7 @@ import { hashHistory } from 'react-router' import ee from 'browser/main/lib/eventEmitter' import ModalEscButton from 'browser/components/ModalEscButton' import AwsMobileAnalyticsConfig from 'browser/main/lib/AwsMobileAnalyticsConfig' +import i18n from 'browser/lib/i18n' class NewNoteModal extends React.Component { constructor (props) { @@ -122,8 +123,8 @@ class NewNoteModal extends React.Component {
- Markdown Note
- This format is for creating text documents. Checklists, code blocks and Latex blocks are available. + {i18n.__('Markdown Note')}
+ {i18n.__('This format is for creating text documents. Checklists, code blocks and Latex blocks are available.')} -
Tab to switch format
+
{i18n.__('Tab to switch format')}
) diff --git a/browser/main/modals/PreferencesModal/Crowdfunding.js b/browser/main/modals/PreferencesModal/Crowdfunding.js index 048520b0..196c1cb3 100644 --- a/browser/main/modals/PreferencesModal/Crowdfunding.js +++ b/browser/main/modals/PreferencesModal/Crowdfunding.js @@ -1,6 +1,7 @@ import React from 'react' import CSSModules from 'browser/lib/CSSModules' import styles from './Crowdfunding.styl' +import i18n from 'browser/lib/i18n' const electron = require('electron') const { shell } = electron @@ -21,22 +22,22 @@ class Crowdfunding extends React.Component { render () { return (
-
Crowdfunding
-

Dear everyone,

+
{i18n.__('Crowdfunding')}
+

{i18n.__('Dear everyone,')}


-

Thank you for using Boostnote!

-

Boostnote is used in about 200 different countries and regions by an awesome community of developers.

+

{i18n.__('Thank you for using Boostnote!')}

+

{i18n.__('Boostnote is used in about 200 different countries and regions by an awesome community of developers.')}


-

To continue supporting this growth, and to satisfy community expectations,

-

we would like to invest more time and resources in this project.

+

{i18n.__('To continue supporting this growth, and to satisfy community expectations,')}

+

{i18n.__('we would like to invest more time and resources in this project.')}


-

If you like this project and see its potential, you can help by supporting us on OpenCollective!

+

{i18n.__('If you like this project and see its potential, you can help by supporting us on OpenCollective!')}


-

Thanks,

-

Boostnote maintainers

+

{i18n.__('Thanks,')}

+

{i18n.__('Boostnote maintainers')}


) diff --git a/browser/main/modals/PreferencesModal/FolderItem.js b/browser/main/modals/PreferencesModal/FolderItem.js index 9d1cd08f..779ad0be 100644 --- a/browser/main/modals/PreferencesModal/FolderItem.js +++ b/browser/main/modals/PreferencesModal/FolderItem.js @@ -7,6 +7,7 @@ import dataApi from 'browser/main/lib/dataApi' import store from 'browser/main/store' import { SketchPicker } from 'react-color' import { SortableElement, SortableHandle } from 'react-sortable-hoc' +import i18n from 'browser/lib/i18n' class FolderItem extends React.Component { constructor (props) { @@ -179,18 +180,18 @@ class FolderItem extends React.Component { return (
- Are you sure to delete this folder? + {i18n.__('Are you sure to ')} {i18n.__(' delete')} {i18n.__('this folder?')}
@@ -231,12 +232,12 @@ class FolderItem extends React.Component { diff --git a/browser/main/modals/PreferencesModal/InfoTab.js b/browser/main/modals/PreferencesModal/InfoTab.js index 25c0b255..964b02f3 100644 --- a/browser/main/modals/PreferencesModal/InfoTab.js +++ b/browser/main/modals/PreferencesModal/InfoTab.js @@ -5,6 +5,7 @@ import ConfigManager from 'browser/main/lib/ConfigManager' import store from 'browser/main/store' import AwsMobileAnalyticsConfig from 'browser/main/lib/AwsMobileAnalyticsConfig' import _ from 'lodash' +import i18n from 'browser/lib/i18n' const electron = require('electron') const { shell, remote } = electron @@ -69,48 +70,48 @@ class InfoTab extends React.Component { return (
-
Community
+
{i18n.__('Community')}

-
About
+
{i18n.__('About')}
-
Boostnote {appVersion}
+
{i18n.__('Boostnote')} {appVersion}
- An open source note-taking app made for programmers just like you. + {i18n.__('An open source note-taking app made for programmers just like you.')}
@@ -120,34 +121,34 @@ class InfoTab extends React.Component {
  • this.handleLinkClick(e)} - >Website + >{i18n.__('Website')}
  • this.handleLinkClick(e)} - >Development : Development configurations for Boostnote. + >{i18n.__('Development')}{i18n.__(' : Development configurations for Boostnote.')}
  • - Copyright (C) 2017 - 2018 BoostIO + {i18n.__('Copyright (C) 2017 - 2018 BoostIO')}
  • - License: GPL v3 + {i18n.__('License: GPL v3')}

  • -
    Analytics
    -
    Boostnote collects anonymous data for the sole purpose of improving the application, and strictly does not collect any personal information such the contents of your notes.
    -
    You can see how it works on this.handleLinkClick(e)}>GitHub.
    +
    {i18n.__('Analytics')}
    +
    {i18n.__('Boostnote collects anonymous data for the sole purpose of improving the application, and strictly does not collect any personal information such the contents of your notes.')}
    +
    {i18n.__('You can see how it works on ')} this.handleLinkClick(e)}>GitHub.

    -
    You can choose to enable or disable this option.
    +
    {i18n.__('You can choose to enable or disable this option.')}
    this.handleConfigChange(e)} checked={this.state.config.amaEnabled} ref='amaEnabled' type='checkbox' /> - Enable analytics to help improve Boostnote
    + {i18n.__('Enable analytics to help improve Boostnote')}

    {this.infoMessage()} diff --git a/browser/main/modals/PreferencesModal/StorageItem.js b/browser/main/modals/PreferencesModal/StorageItem.js index f2092835..28675860 100644 --- a/browser/main/modals/PreferencesModal/StorageItem.js +++ b/browser/main/modals/PreferencesModal/StorageItem.js @@ -6,6 +6,7 @@ import consts from 'browser/lib/consts' import dataApi from 'browser/main/lib/dataApi' import store from 'browser/main/store' import FolderList from './FolderList' +import i18n from 'browser/lib/i18n' const { shell, remote } = require('electron') const { dialog } = remote @@ -127,7 +128,7 @@ class StorageItem extends React.Component { Add Folder + >{i18n.__('Add Folder')}
    diff --git a/browser/main/modals/PreferencesModal/StoragesTab.js b/browser/main/modals/PreferencesModal/StoragesTab.js index f66a617e..a6be9555 100644 --- a/browser/main/modals/PreferencesModal/StoragesTab.js +++ b/browser/main/modals/PreferencesModal/StoragesTab.js @@ -4,6 +4,7 @@ import CSSModules from 'browser/lib/CSSModules' import styles from './StoragesTab.styl' import dataApi from 'browser/main/lib/dataApi' import StorageItem from './StorageItem' +import i18n from 'browser/lib/i18n' const electron = require('electron') const { shell, remote } = electron @@ -69,16 +70,16 @@ class StoragesTab extends React.Component { }) return (
    -
    Storages
    +
    {i18n.__('Storages')}
    {storageList.length > 0 ? storageList - :
    No storage found.
    + :
    {i18n.__('No storage found.')}
    }
    @@ -140,13 +141,13 @@ class StoragesTab extends React.Component { return (
    -
    Add Storage
    +
    {i18n.__('Add Storage')}
    - Name + {i18n.__('Name')}
    -
    Type
    +
    {i18n.__('Type')}
    - Setting up 3rd-party cloud storage integration:{' '} + {i18n.__('Setting up 3rd-party cloud storage integration:')}{' '} this.handleLinkClick(e)} - >Cloud-Syncing-and-Backup + >{i18n.__('Cloud-Syncing-and-Backup')}
    -
    Location +
    {i18n.__('Location')}
    + >{i18n.__('Add')} + >{i18n.__('Cancel')}
    diff --git a/browser/main/modals/PreferencesModal/UiTab.js b/browser/main/modals/PreferencesModal/UiTab.js index 50e13f6c..2e6ae7e1 100644 --- a/browser/main/modals/PreferencesModal/UiTab.js +++ b/browser/main/modals/PreferencesModal/UiTab.js @@ -9,6 +9,7 @@ import ReactCodeMirror from 'react-codemirror' import CodeMirror from 'codemirror' import 'codemirror-mode-elixir' import _ from 'lodash' +import i18n from 'browser/lib/i18n' const OSX = global.process.platform === 'darwin' @@ -151,19 +152,19 @@ class UiTab extends React.Component { return (
    -
    Interface
    +
    {i18n.__('Interface')}
    - Interface Theme + {i18n.__('Interface Theme')}
    @@ -174,7 +175,7 @@ class UiTab extends React.Component { ref='showCopyNotification' type='checkbox' />  - Show "Saved to Clipboard" notification when copying + {i18n.__('Show "Saved to Clipboard" notification when copying')}
    @@ -184,7 +185,7 @@ class UiTab extends React.Component { ref='confirmDeletion' type='checkbox' />  - Show a confirmation dialog when deleting notes + {i18n.__('Show a confirmation dialog when deleting notes')}
    { @@ -206,7 +207,7 @@ class UiTab extends React.Component {
    - Editor Theme + {i18n.__('Editor Theme')}
    - Editor Font Family + {i18n.__('Editor Font Family')}
    - Editor Indent Style + {i18n.__('Editor Indent Style')}
    - Switch to Preview + {i18n.__('Switch to Preview')}
    - Editor Keymap + {i18n.__('Editor Keymap')}
    -

    ⚠️ Please restart boostnote after you change the keymap

    +

    {i18n.__('⚠️ Please restart boostnote after you change the keymap')}

    @@ -314,7 +315,7 @@ class UiTab extends React.Component { ref='editorDisplayLineNumbers' type='checkbox' />  - Show line numbers in the editor + {i18n.__('Show line numbers in the editor')}
    @@ -325,7 +326,7 @@ class UiTab extends React.Component { ref='scrollPastEnd' type='checkbox' />  - Allow editor to scroll past the last line + {i18n.__('Allow editor to scroll past the last line')}
    @@ -336,14 +337,14 @@ class UiTab extends React.Component { ref='editorFetchUrlTitle' type='checkbox' />  - Bring in web page title when pasting URL on editor + {i18n.__('Bring in web page title when pasting URL on editor')}
    Preview
    - Preview Font Size + {i18n.__('Preview Font Size')}
    - Preview Font Family + {i18n.__('Preview Font Family')}
    -
    Code block Theme
    +
    {i18n.__('Code block Theme')}
    - LaTeX Inline Close Delimiter + {i18n.__('LaTeX Inline Close Delimiter')}
    - LaTeX Block Open Delimiter + {i18n.__('LaTeX Block Open Delimiter')}
    - LaTeX Block Close Delimiter + {i18n.__('LaTeX Block Close Delimiter')}
    this.handleKeyDown(e)} >
    -

    Your preferences for Boostnote

    +

    {i18n.__('Your preferences for Boostnote')}

    this.handleEscButtonClick(e)} />
    diff --git a/browser/main/modals/RenameFolderModal.js b/browser/main/modals/RenameFolderModal.js index bb08f36d..f4197196 100644 --- a/browser/main/modals/RenameFolderModal.js +++ b/browser/main/modals/RenameFolderModal.js @@ -5,6 +5,7 @@ import styles from './RenameFolderModal.styl' import dataApi from 'browser/main/lib/dataApi' import store from 'browser/main/store' import ModalEscButton from 'browser/components/ModalEscButton' +import i18n from 'browser/lib/i18n' class RenameFolderModal extends React.Component { constructor (props) { @@ -72,7 +73,7 @@ class RenameFolderModal extends React.Component { onKeyDown={(e) => this.handleKeyDown(e)} >
    -
    Rename Folder
    +
    {i18n.__('Rename Folder')}
    this.handleCloseButtonClick(e)} /> diff --git a/locales/de.js b/locales/de.js index 23d80003..6bd695e0 100644 --- a/locales/de.js +++ b/locales/de.js @@ -1,4 +1,94 @@ { - "Ctrl(^)": "Strg", - "to create a new note": "um eine neue Notiz zu erstellen" + "Notes": "Notes", + "Tags": "Tags", + "Preferences": "Preferences", + "Make a note": "Make a note", + "Ctrl": "Ctrl", + "Ctrl(^)": "Ctrl(^)", + "to create a new note": "to create a new note", + "Toggle Mode": "Toggle Mode", + "Trash": "Trash", + "MODIFICATION DATE": "MODIFICATION DATE", + "Words": "Words", + "Letters": "Letters", + "STORAGE": "STORAGE", + "FOLDER": "FOLDER", + "CREATION DATE": "CREATION DATE", + "NOTE LINK": "NOTE LINK", + ".md": ".md", + ".txt": ".txt", + ".html": ".html", + "Print": "Print", + "Your preferences for Boostnote": "Deine Boostnote Einstellungen", + "Storages": "Storages", + "Add Storage Location": "Add Storage Location", + "Add Folder": "Add Folder", + "Open Storage folder": "Open Storage folder", + "Unlink": "Unlink", + "Edit": "Edit", + "Delete": "Delete", + "Interface": "Interface", + "Interface Theme": "Interface Theme", + "Default": "Default", + "White": "White", + "Solarized Dark": "Solarized Dark", + "Dark": "Dark", + "Show "Saved to Clipboard" notification when copying": "Show "Saved to Clipboard" notification when copying", + "Show a confirmation dialog when deleting notes": "Show a confirmation dialog when deleting notes", + "Editor Theme": "Editor Theme", + "Editor Font Size": "Editor Font Size", + "Editor Font Family": "Editor Font Family", + "Editor Indent Style": "Editor Indent Style", + "Spaces": "Spaces", + "Tabs": "Tabs", + "Switch to Preview": "Switch to Preview", + "When Editor Blurred": "When Editor Blurred", + "When Editor Blurred, Edit On Double Click": "When Editor Blurred, Edit On Double Click", + "On Right Click": "On Right Click", + "Editor Keymap": "Editor Keymap", + "default": "default", + "vim": "vim", + "emacs": "emacs", + "⚠️ Please restart boostnote after you change the keymap": "⚠️ Please restart boostnote after you change the keymap", + "Show line numbers in the editor": "Show line numbers in the editor", + "Allow editor to scroll past the last line": "Allow editor to scroll past the last line", + "Bring in web page title when pasting URL on editor": "Bring in web page title when pasting URL on editor", + "Preview Font Size": "Preview Font Size", + "Preview Font Family": "Preview Font Family", + "Code block Theme": "Code block Theme", + "Allow preview to scroll past the last line": "Allow preview to scroll past the last line", + "Show line numbers for preview code blocks": "Show line numbers for preview code blocks", + "LaTeX Inline Open Delimiter": "LaTeX Inline Open Delimiter", + "LaTeX Inline Close Delimiter": "LaTeX Inline Close Delimiter", + "LaTeX Block Open Delimiter": "LaTeX Block Open Delimiter", + "LaTeX Block Close Delimiter": "LaTeX Block Close Delimiter", + "Community": "Community", + "Subscribe to Newsletter": "Subscribe to Newsletter", + "GitHub": "GitHub", + "Blog": "Blog", + "Facebook Group": "Facebook Group", + "Twitter": "Twitter", + "About": "About", + "Boostnote": "Boostnote", + "An open source note-taking app made for programmers just like you.": "An open source note-taking app made for programmers just like you.", + "Website": "Website", + "Development": "Development", + " : Development configurations for Boostnote.": " : Development configurations for Boostnote.", + "Copyright (C) 2017 - 2018 BoostIO": "Copyright (C) 2017 - 2018 BoostIO", + "License: GPL v3": "License: GPL v3", + "Analytics": "Analytics", + "Boostnote collects anonymous data for the sole purpose of improving the application, and strictly does not collect any personal information such the contents of your notes.": "Boostnote collects anonymous data for the sole purpose of improving the application, and strictly does not collect any personal information such the contents of your notes.", + "You can see how it works on ": "You can see how it works on ", + "You can choose to enable or disable this option.": "You can choose to enable or disable this option.", + "Enable analytics to help improve Boostnote": "Enable analytics to help improve Boostnote", + "Crowdfunding": "Crowdfunding", + "Dear everyone,": "Dear everyone,", + "Thank you for using Boostnote!": "Thank you for using Boostnote!", + "Boostnote is used in about 200 different countries and regions by an awesome community of developers.": "Boostnote is used in about 200 different countries and regions by an awesome community of developers.", + "To continue supporting this growth, and to satisfy community expectations,": "To continue supporting this growth, and to satisfy community expectations,", + "we would like to invest more time and resources in this project.": "we would like to invest more time and resources in this project.", + "If you like this project and see its potential, you can help by supporting us on OpenCollective!": "If you like this project and see its potential, you can help by supporting us on OpenCollective!", + "Thanks,": "Thanks,", + "Boostnote maintainers": "Boostnote maintainers", + "Support via OpenCollective": "Support via OpenCollective" } \ No newline at end of file diff --git a/locales/en.js b/locales/en.js index bf5d5513..d78c361f 100644 --- a/locales/en.js +++ b/locales/en.js @@ -1,5 +1,5 @@ { - "Ctrl(^)": "Ctrl(^)", + "Ctrl(^)": "Ctrl", "to create a new note": "to create a new note", "MODIFICATION DATE": "MODIFICATION DATE", "Words": "Words", @@ -10,6 +10,87 @@ "NOTE LINK": "NOTE LINK", ".md": ".md", ".txt": ".txt", - ".html