mirror of
https://github.com/hedgedoc/hedgedoc.git
synced 2024-11-24 10:46:30 -05:00
d10c6d3290
Co-authored-by: Tilman Vatteroth <git@tilmanvatteroth.de> Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de> Signed-off-by: Erik Michelson <github@erik.michelson.eu>
914 lines
39 KiB
JSON
914 lines
39 KiB
JSON
{
|
|
"app": {
|
|
"slogan": "The best platform to write and share markdown.",
|
|
"title": "Collaborative markdown notes",
|
|
"icon": "HedgeDoc logo with text"
|
|
},
|
|
"notificationTest": {
|
|
"title": "Test",
|
|
"content": "It works!"
|
|
},
|
|
"navigation": {
|
|
"newNote": "New Note"
|
|
},
|
|
"renderer": {
|
|
"highlightCode": {
|
|
"copyCode": "Copy code to clipboard"
|
|
},
|
|
"plantuml": {
|
|
"notConfigured": "PlantUML plugin is enabled but not properly configured."
|
|
},
|
|
"flowchart": {
|
|
"invalidSyntax": "Invalid flowchart.js syntax!"
|
|
},
|
|
"mermaid": {
|
|
"unknownError": "Unknown rendering error. Please check your browser console."
|
|
},
|
|
"vega-lite": {
|
|
"png": "Save as PNG",
|
|
"svg": "Save as SVG",
|
|
"errorJson": "Error parsing the JSON"
|
|
},
|
|
"clickShield": {
|
|
"previewHoverText": "Click to load content from {{target}}"
|
|
},
|
|
"uploadIndicator": {
|
|
"uploadMessage": "Uploading file"
|
|
}
|
|
},
|
|
"noteLoadingBoundary": {
|
|
"createNote": {
|
|
"question": "Do you want to create a note with alias '{{aliasName}}'?",
|
|
"create": "Create note",
|
|
"creating": "Creating note...",
|
|
"error": "Note couldn't be created.",
|
|
"success": "Note has been created."
|
|
},
|
|
"error": {
|
|
"notFound": {
|
|
"title": "Note not found",
|
|
"description": "The requested note doesn't exist."
|
|
},
|
|
"forbidden": {
|
|
"title": "Access denied",
|
|
"description": "You don't have the needed permission to access this note"
|
|
}
|
|
}
|
|
},
|
|
"landing": {
|
|
"intro": {
|
|
"markdownWhileLoading": "Loading...",
|
|
"markdownLoadingError": "Error while fetching intro content"
|
|
},
|
|
"history": {
|
|
"error": {
|
|
"getHistory": {
|
|
"title": "Load History Error",
|
|
"text": "While trying to load the history form the server an error occurred"
|
|
},
|
|
"deleteHistory": {
|
|
"title": "Delete History Error",
|
|
"text": "While trying to delete the history on the server an error occurred"
|
|
},
|
|
"setHistory": {
|
|
"title": "Upload History Error",
|
|
"text": "While trying to upload the history to the server an error occurred"
|
|
},
|
|
"deleteNote": {
|
|
"title": "Delete Note Error",
|
|
"text": "While trying to delete a note on the server an error occurred"
|
|
},
|
|
"updateEntry": {
|
|
"title": "Update History Entry Error",
|
|
"text": "While trying to update a history entry on the server an error occurred"
|
|
},
|
|
"deleteEntry": {
|
|
"title": "Delete History Entry Error",
|
|
"text": "While trying to delete a history entry on the server an error occurred"
|
|
},
|
|
"notFoundEntry": {
|
|
"title": "History Entry not found",
|
|
"text": "We can't find the history entry you requested."
|
|
}
|
|
},
|
|
"noHistory": "No history",
|
|
"localHistory": "Below is history from this browser",
|
|
"toolbar": {
|
|
"cards": "Cards",
|
|
"table": "Table",
|
|
"selectTags": "Select tags…",
|
|
"searchKeywords": "Search keyword…",
|
|
"sortByTitle": "Sort by title",
|
|
"sortByLastVisited": "Sort by time",
|
|
"export": "Export history",
|
|
"import": "Import history",
|
|
"clear": "Clear history",
|
|
"refresh": "Refresh history",
|
|
"uploadAll": "Sync the complete history to the server"
|
|
},
|
|
"modal": {
|
|
"clearHistory": {
|
|
"title": "Delete history",
|
|
"question": "Do you want to clear the history?",
|
|
"disclaimer": "This won't delete any notes."
|
|
},
|
|
"importHistoryError": {
|
|
"title": "An error occurred",
|
|
"textWithFile": "While trying to import history from '{{fileName}}' an error occurred.",
|
|
"textWithoutFile": "You did not provide any files to upload the history from.",
|
|
"tooNewVersion": "The file '{{fileName}}' comes from a newer client and can't be imported."
|
|
},
|
|
"removeNote": {
|
|
"title": "Remove note from history",
|
|
"question": "Do you really want to remove this note from your history?",
|
|
"warning": "This just removes the history entry and won't delete the note itself.",
|
|
"button": "Remove note from history"
|
|
}
|
|
},
|
|
"tableHeader": {
|
|
"title": "Title",
|
|
"actions": "Actions",
|
|
"tags": "Tags",
|
|
"lastVisit": "Last Visit"
|
|
},
|
|
"menu": {
|
|
"recentNotes": "Recent notes",
|
|
"entryLocal": "Saved in your browser history",
|
|
"entryRemote": "Saved in your user history",
|
|
"removeEntry": "Remove from history",
|
|
"deleteNote": "Delete note"
|
|
}
|
|
},
|
|
"navigation": {
|
|
"intro": "Intro",
|
|
"history": "History",
|
|
"newGuestNote": "New guest note",
|
|
"newNote": "New note"
|
|
},
|
|
"footer": {
|
|
"releases": "Releases",
|
|
"poweredBy": "Powered by <0></0>"
|
|
},
|
|
"versionInfo": {
|
|
"issueTracker": "Found a bug? Fill an issue!",
|
|
"sourceCode": "Read the source code",
|
|
"versionInfo": "Running Version",
|
|
"title": "Running HedgeDoc on version"
|
|
}
|
|
},
|
|
"profile": {
|
|
"userProfile": "User profile",
|
|
"displayName": "Display name",
|
|
"displayNameInfo": "This name will be shown publicly on notes you created or edited.",
|
|
"changePassword": {
|
|
"title": "Change password",
|
|
"old": "Old password",
|
|
"new": "New password",
|
|
"newAgain": "New password again",
|
|
"info": "Your new password should contain at least 6 characters.",
|
|
"failed": "Changing your password failed. Check your old password and try again.",
|
|
"successTitle": "Password changed",
|
|
"successText": "Your password has been changed successfully."
|
|
},
|
|
"changeDisplayNameFailed": "There was an error changing your display name.",
|
|
"accountManagement": "Account management",
|
|
"deleteUser": "Delete user",
|
|
"exportUserData": "Export user data",
|
|
"accessTokens": {
|
|
"title": "Access tokens",
|
|
"info": "Access tokens are an password-less authentication method for the CLI or third-party applications.",
|
|
"infoDev": "Developers can use these to access the public API.",
|
|
"noTokens": "You don't have any tokens generated yet.",
|
|
"createToken": "Create token",
|
|
"label": "Token label",
|
|
"created": "created {{time}}",
|
|
"lastUsed": "last used {{time}}",
|
|
"neverUsed": "never used",
|
|
"loadingFailed": "Fetching your access tokens has failed. Try reloading this page.",
|
|
"creationFailed": "Creating the access token failed.",
|
|
"expiry": "Expiry date"
|
|
},
|
|
"modal": {
|
|
"deleteUser": {
|
|
"title": "Delete user",
|
|
"message": "Do you really want to delete your user account?",
|
|
"subMessage": "This will delete your account, all notes that are owned by you and remove all references to your account from other notes.",
|
|
"failed": "There was an error deleting your account. Please try it again or contact your instance's administrator.",
|
|
"notificationTitle": "Account deleted",
|
|
"notificationText": "Your account has been successfully deleted."
|
|
},
|
|
"addedAccessToken": {
|
|
"title": "Token added",
|
|
"message": "The access token '{{label}}' was created. Copy it from the field below now, as you won't be able to view it again."
|
|
},
|
|
"deleteAccessToken": {
|
|
"title": "Really delete token?",
|
|
"message": "When deleting the access token '{{label}}', the applications that used it won't have access to your account anymore. You eventually need a new token to continue using those applications.",
|
|
"notificationTitle": "Access token deleted",
|
|
"notificationText": "The access token '{{label}}' has been deleted.",
|
|
"failed": "There was an error deleting the access token. Please try it again or contact your instance's administrator."
|
|
}
|
|
}
|
|
},
|
|
"editor": {
|
|
"linter": {
|
|
"defaultAction": "Fix",
|
|
"sequence": "The use of 'sequence' as code block language is deprecated and will be removed in a future release.",
|
|
"shortcode": "The {{shortcode}} short-code is deprecated and will be removed in a future release. Use a single line URL instead.",
|
|
"frontmatter": "The yaml-metadata is invalid.",
|
|
"frontmatter-tags": "The comma-separated definition of tags in the yaml-metadata is deprecated. Use a yaml-array instead.",
|
|
"fork-awesome": "The usage of Fork Awesome is deprecated and has been removed. Please use bootstrap icons instead. See {{link}} for more information."
|
|
},
|
|
"upload": {
|
|
"uploadFile": {
|
|
"withoutDescription": "Uploading file {{fileName}}",
|
|
"withDescription": "Uploading file {{fileName}} - {{description}}"
|
|
},
|
|
"dropImage": "Drop Image to insert",
|
|
"failed": "Error while uploading {{fileName}}"
|
|
},
|
|
"untitledNote": "Untitled",
|
|
"placeholder": "← Start by entering a title here\n===\nVisit {{host}}features if you don't know what to do.\nHappy hacking :)",
|
|
"infoToc": "Structure your note with headings to see a table-of-contents here.",
|
|
"onlineStatus": {
|
|
"online": "Online",
|
|
"you": "(You)"
|
|
},
|
|
"error": {
|
|
"locked": {
|
|
"title": "This note is locked",
|
|
"description": "Sorry, only the owner can edit this note."
|
|
},
|
|
"limitReached": {
|
|
"title": "Reached the limit",
|
|
"description": "Sorry, this note reached its maximum length. Notes can be up to {{maxLength}} characters long.",
|
|
"advice": "Please shorten the note."
|
|
},
|
|
"incompatible": {
|
|
"title": "Your client's version is incompatible.",
|
|
"description": "The server requires a newer version of the editor.",
|
|
"advice": "Refresh to update."
|
|
},
|
|
"newVersion": {
|
|
"title": "New version available!",
|
|
"description": "A new version of HedgeDoc is available",
|
|
"linkText": "See releases notes here",
|
|
"advice": "Refresh to enjoy new features."
|
|
},
|
|
"userStateChanged": {
|
|
"title": "Your user state has changed.",
|
|
"description": "Refresh to load new user state."
|
|
}
|
|
},
|
|
"viewMode": {
|
|
"edit": "Edit",
|
|
"view": "View",
|
|
"both": "Both"
|
|
},
|
|
"appBar": {
|
|
"new": "New"
|
|
},
|
|
"editorToolbar": {
|
|
"bold": "Bold",
|
|
"italic": "Italic",
|
|
"underline": "Underline",
|
|
"strikethrough": "Strikethrough",
|
|
"subscript": "Subscript",
|
|
"superscript": "Superscript",
|
|
"header": "Heading",
|
|
"code": "Code",
|
|
"blockquote": "Blockquote",
|
|
"unorderedList": "Unordered List",
|
|
"orderedList": "Ordered List",
|
|
"checkList": "Checklist",
|
|
"link": "Link",
|
|
"imageLink": "Image",
|
|
"uploadImage": "Upload Image",
|
|
"highlight": "Highlight",
|
|
"table": {
|
|
"titleWithoutSize": "Table",
|
|
"titleWithSize": "{{cols}}x{{rows}} Table",
|
|
"customSize": "Custom Size",
|
|
"cols": "Cols",
|
|
"rows": "Rows",
|
|
"create": "Create Custom Table"
|
|
},
|
|
"horizontalLine": "Horizontal line",
|
|
"collapsibleBlock": "Collapsible block",
|
|
"comment": "Comment",
|
|
"preferences": "Editor settings",
|
|
"emoji": "Open emoji picker"
|
|
},
|
|
"documentBar": {
|
|
"menu": "Menu",
|
|
"import": "Import",
|
|
"export": "Export",
|
|
"extra": "Extra",
|
|
"slideMode": "Slide Mode",
|
|
"readOnlyMode": "Read-only mode",
|
|
"download": "Download",
|
|
"help": "Help",
|
|
"deleteNote": "Delete note",
|
|
"pinNoteToHistory": "Pin note to history",
|
|
"pinnedToHistory": "Pinned to history"
|
|
},
|
|
"statusBar": {
|
|
"cursor": "Line {{line}}, Character {{columns}}",
|
|
"selection": {
|
|
"characters": "Selected {{count}} characters",
|
|
"lines": "Selected {{count}} lines"
|
|
},
|
|
"lines": "{{lines}} Lines",
|
|
"length": "Length {{length}}",
|
|
"lengthTooltip": {
|
|
"maximumReached": "You've reached the maximum length of this note.",
|
|
"remaining": "You may still write {{remaining}} characters until you reach the limit for this note.",
|
|
"exceeded": "You've exceeded the maximum length of this note by {{exceeded}} characters. Consider shortening it."
|
|
}
|
|
},
|
|
"export": {
|
|
"rawHtml": "Raw HTML",
|
|
"markdown-file": "Markdown file"
|
|
},
|
|
"import": {
|
|
"clipboard": "Clipboard",
|
|
"file": "Markdown file"
|
|
},
|
|
"autocompletions": {
|
|
"link": "Link",
|
|
"icon": "Icon",
|
|
"emoji": "Emoji",
|
|
"image": "Image",
|
|
"imageWithDimensions": "Image with dimensions",
|
|
"toc": "Table of contents",
|
|
"successBox": "Success box",
|
|
"infoBox": "Info box",
|
|
"warningBox": "Warning box",
|
|
"errorBox": "Error box",
|
|
"tagName": "Name tag",
|
|
"tagColor": "Color tag",
|
|
"tagTime": "Time tag",
|
|
"spoiler": "Spoiler"
|
|
},
|
|
"noteInfo": {
|
|
"title": "Note info",
|
|
"created": "Note created",
|
|
"lastUpdated": "Last updated",
|
|
"lastUpdatedBy": "Last updated by",
|
|
"contributors": "Count of contributors",
|
|
"wordCount": "Count of words"
|
|
},
|
|
"modal": {
|
|
"snippetImport": {
|
|
"title": "Import from Snippet",
|
|
"selectProject": "Select From Available Projects",
|
|
"selectSnippet": "Select From Available Snippets"
|
|
},
|
|
"gistImport": {
|
|
"title": "Import from Gist",
|
|
"insertGistUrl": "Paste your gist url here…"
|
|
},
|
|
"snippetExport": {
|
|
"title": "Export to Snippet",
|
|
"visibilityLevel": "Select Visibility Level"
|
|
},
|
|
"revision": {
|
|
"title": "Revisions",
|
|
"revertButton": "Revert",
|
|
"error": "An error occurred while fetching the revisions of this note.",
|
|
"errorUser": "An error occurred while fetching the user information for this revision.",
|
|
"length": "Length",
|
|
"download": "Download selected revision",
|
|
"guestCount": "Anonymous authors or guests"
|
|
},
|
|
"clipboardImport": {
|
|
"title": "Import from clipboard",
|
|
"insertMarkdown": "Paste your markdown or webpage here…"
|
|
},
|
|
"deleteNote": {
|
|
"title": "Delete note",
|
|
"question": "Do you really want to delete this note?",
|
|
"warning": "All users will lose their connection. This process is irreversible.",
|
|
"button": "Delete note"
|
|
},
|
|
"permissions": {
|
|
"title": "Permissions",
|
|
"owner": "Owner",
|
|
"sharedWithUsers": "Shared with users",
|
|
"sharedWithGroups": "Shared with groups",
|
|
"sharedWithElse": "Shared with else...",
|
|
"editUser": "Change {{name}}'s permissions to view and edit",
|
|
"viewOnlyUser": "Change {{name}}'s permissions to view only",
|
|
"removeUser": "Remove {{name}}'s permissions",
|
|
"addUser": "Add user",
|
|
"editGroup": "Change permissions of group \"{{name}}\" to view & edit",
|
|
"viewOnlyGroup": "Change permissions of group \"{{name}}\" to view only",
|
|
"removeGroup": "Remove permissions of group \"{{name}}\"",
|
|
"denyGroup": "Deny access to group \"{{name}}\"",
|
|
"addGroup": "Add group",
|
|
"allUser": "Everyone",
|
|
"allLoggedInUser": "All logged-in users",
|
|
"error": "An error occurred while updating the permissions of this note.",
|
|
"ownerChange": {
|
|
"error": "There was an error changing the owner of this note.",
|
|
"placeholder": "Enter username of new note owner",
|
|
"button": "Change the owner of this note"
|
|
}
|
|
},
|
|
"shareLink": {
|
|
"title": "Share link",
|
|
"editorDescription": "This link points to this note in the editor as you currently see it.",
|
|
"viewOnlyDescription": "This link points to a read-only version of this note. You can use this e.g. for feedback from friends and colleagues.",
|
|
"slidesDescription": "This link points to the presentation view of the slides."
|
|
},
|
|
"aliases": {
|
|
"title": "Aliases",
|
|
"explanation": "Aliases are alternative names for this note. You may access this note under all the listed names below.",
|
|
"addAlias": "Add alias",
|
|
"makePrimary": "Mark this alias as primary",
|
|
"isPrimary": "This is the primary alias",
|
|
"removeAlias": "Remove this alias",
|
|
"errorAddingAlias": "The chosen alias can not be added to this note",
|
|
"errorRemovingAlias": "There was an error removing the alias",
|
|
"errorMakingPrimary": "There was an error marking the alias as primary"
|
|
},
|
|
"preferences": {
|
|
"title": "Preferences",
|
|
"theme": {
|
|
"label": "Editor theme",
|
|
"one-dark": "Dark",
|
|
"neat": "Light"
|
|
},
|
|
"keyMap": {
|
|
"label": "Keymap",
|
|
"sublime": "Sublime",
|
|
"emacs": "Emacs",
|
|
"vim": "Vim"
|
|
},
|
|
"indentWithTabs": {
|
|
"label": "Tab character",
|
|
"on": "Tabs",
|
|
"off": "Spaces"
|
|
},
|
|
"indentUnit": "Number of spaces per tab",
|
|
"spellcheck": {
|
|
"label": "Spell checking"
|
|
},
|
|
"ligatures": {
|
|
"label": "Show ligatures"
|
|
},
|
|
"smartPaste": {
|
|
"label": "Auto format pasted content"
|
|
}
|
|
}
|
|
},
|
|
"embeddings": {
|
|
"clickToLoad": "Click to load",
|
|
"placeholderImage": {
|
|
"placeholderText": "Placeholder",
|
|
"upload": "Upload image"
|
|
}
|
|
},
|
|
"abcJs": {
|
|
"errorWhileRendering": "Error while rendering your score. Please check if the code is correct."
|
|
}
|
|
},
|
|
"views": {
|
|
"presentation": {},
|
|
"readOnly": {
|
|
"viewCount": "views",
|
|
"editNote": "Edit this note"
|
|
}
|
|
},
|
|
"appbar": {
|
|
"editor": {
|
|
"readOnly": "read-only"
|
|
},
|
|
"help": {
|
|
"help": {
|
|
"header": "Help",
|
|
"shortcuts": "Shortcuts",
|
|
"cheatsheet": "Cheatsheet"
|
|
},
|
|
"instance": {
|
|
"header": "About this instance",
|
|
"versionInfo": "Running version"
|
|
},
|
|
"legal": {
|
|
"header": "Legal",
|
|
"privacy": "Privacy Policy",
|
|
"termsOfUse": "Terms of use",
|
|
"imprint": "Imprint"
|
|
},
|
|
"project": {
|
|
"header": "Project",
|
|
"github": "Project on GitHub",
|
|
"reportIssue": "Report an issue",
|
|
"helpTranslating": "Help us translating"
|
|
},
|
|
"social": {
|
|
"header": "Social",
|
|
"discourse": "Join the community",
|
|
"matrix": "Chat with us on Matrix",
|
|
"mastodon": "Follow us on Mastodon"
|
|
}
|
|
}
|
|
},
|
|
"common": {
|
|
"yes": "Yes",
|
|
"no": "No",
|
|
"on": "On",
|
|
"off": "Off",
|
|
"import": "Import",
|
|
"export": "Export",
|
|
"refresh": "Refresh",
|
|
"cancel": "Cancel",
|
|
"dismiss": "Dismiss",
|
|
"ok": "OK",
|
|
"close": "Close",
|
|
"save": "Save",
|
|
"delete": "Delete",
|
|
"or": "or",
|
|
"and": "and",
|
|
"avatarOf": "Avatar of '{{name}}'",
|
|
"why": "Why?",
|
|
"loading": "Loading ...",
|
|
"errorWhileLoading": "An unexpected error occurred while loading '{{name}}'.\nCheck the browser console for more information.\nReport this error only if it comes up again.",
|
|
"errorOccurred": "An error occurred",
|
|
"readForMoreInfo": "Read here for more information",
|
|
"guestUser": "Guest user"
|
|
},
|
|
"copyOverlay": {
|
|
"error": "Error while copying!",
|
|
"success": "Copied!"
|
|
},
|
|
"login": {
|
|
"chooseMethod": "Choose method",
|
|
"signInVia": "Sign in via {{service}}",
|
|
"signIn": "Sign In",
|
|
"signOut": "Sign Out",
|
|
"logoutFailed": "There was an error logging you out.\nClose your browser window to ensure session data is removed.",
|
|
"auth": {
|
|
"email": "Email",
|
|
"password": "Password",
|
|
"username": "Username",
|
|
"error": {
|
|
"usernamePassword": "Invalid username or password",
|
|
"loginDisabled": "The login is disabled",
|
|
"other": "There was an error logging you in."
|
|
}
|
|
},
|
|
"register": {
|
|
"question": "No account yet?",
|
|
"title": "Register",
|
|
"passwordAgain": "Password (again)",
|
|
"usernameInfo": "The username is your unique identifier for login.",
|
|
"passwordInfo": "Choose a unique and secure password.",
|
|
"infoTermsPrivacy": "With the registration of my user account I agree to the following terms:",
|
|
"success": {
|
|
"title": "Successfully registered",
|
|
"message": "Your account has been registered successfully. You can now log in with your username and password."
|
|
},
|
|
"error": {
|
|
"passwordTooWeak": "The password is too weak.",
|
|
"registrationDisabled": "The registration is disabled.",
|
|
"usernameExisting": "There is already an account with this username.",
|
|
"other": "There was an error while registering your account. Just try it again."
|
|
}
|
|
}
|
|
},
|
|
"motd": {
|
|
"title": "Information"
|
|
},
|
|
"errors": {
|
|
"notFound": {
|
|
"title": "Page not found",
|
|
"description": "The requested page either does not exist or you don't have permission to access it."
|
|
},
|
|
"noteCreationFailed": {
|
|
"title": "Note could not be created",
|
|
"description": "The note could not be created. Maybe you don't have permission to create notes."
|
|
}
|
|
},
|
|
"notifications": {
|
|
"noteDeleted": {
|
|
"title": "Note '{{noteTitle}}' deleted",
|
|
"text": "You were redirected to the history page, because the note you just edited was deleted."
|
|
}
|
|
},
|
|
"realtime": {
|
|
"connecting": "Connecting to realtime collaboration server…"
|
|
},
|
|
"settings": {
|
|
"title": "Settings",
|
|
"editor": {
|
|
"label": "Editor",
|
|
"ligatures": {
|
|
"label": "Ligatures",
|
|
"help": "Renders special character sequences as one symbol."
|
|
},
|
|
"smartPaste": {
|
|
"label": "Smart Paste",
|
|
"help": "Smart paste detects common formats (like tables) when pasting content into the editor and formats them as markdown."
|
|
},
|
|
"syncScroll": {
|
|
"label": "Sync Scrolling",
|
|
"help": "Synchronizes the scroll state of editor and rendering view."
|
|
},
|
|
"lineWrapping": {
|
|
"label": "Line Wrapping",
|
|
"help": "Breaks long lines so they're visible without scrolling."
|
|
}
|
|
},
|
|
"global": {
|
|
"label": "Global",
|
|
"darkMode": {
|
|
"label": "Dark mode",
|
|
"help": "Enforces the use of the dark mode for the app or lets the browser decide.",
|
|
"dark": {
|
|
"tooltip": "Switch to dark mode",
|
|
"label": "Dark"
|
|
},
|
|
"light": {
|
|
"tooltip": "Switch to light mode",
|
|
"label": "Light"
|
|
},
|
|
"browser": {
|
|
"tooltip": "Let browser decide",
|
|
"label": "Auto"
|
|
}
|
|
},
|
|
"language": {
|
|
"label": "Language",
|
|
"help": "The primary user interface language"
|
|
}
|
|
}
|
|
},
|
|
"shortcuts": {
|
|
"title": "Shortcuts",
|
|
"editor": {
|
|
"header": "Editor",
|
|
"bold": "Make selection bold",
|
|
"italic": "Make selection italic",
|
|
"underline": "Underline selection",
|
|
"strikethrough": "Strike selection through",
|
|
"mark": "Mark selection",
|
|
"link": "Add link around selection"
|
|
},
|
|
"viewMode": {
|
|
"header": "View Mode",
|
|
"view": "Show only View",
|
|
"both": "Show View and Edit",
|
|
"edit": "Show only Edit"
|
|
}
|
|
},
|
|
"cheatsheet": {
|
|
"search": "Search for Cheatsheets",
|
|
"modal": {
|
|
"popup": "Open in new tab",
|
|
"title": "Cheatsheet",
|
|
"headlines": {
|
|
"description": "Description",
|
|
"exampleInput": "Example Input",
|
|
"exampleOutput": "Example Output",
|
|
"selectTopic": "Select Topic",
|
|
"readMoreLink": "Read More"
|
|
},
|
|
"noSelection": "Select an entry on the left side to show the instructions."
|
|
},
|
|
"categories": {
|
|
"basic": "Basics",
|
|
"other": "Other",
|
|
"embedding": "Embedding",
|
|
"charts": "Charts & Diagrams"
|
|
},
|
|
"basics": {
|
|
"basicFormatting": {
|
|
"title": "Basic",
|
|
"description": "These are the basic markdown formatting rules.",
|
|
"example": "**Bold**\n__Bold__\n\n*Italic*\n_Italic_\n\n++Underline++\n~~Strikethrough~~\n\nSub~script~\n\nSuper^script^\n\n==Marked=="
|
|
},
|
|
"abbreviation": {
|
|
"title": "Abbreviation",
|
|
"description": "Abbreviation definitions create tooltips for matching words. They can be placed defined in the document.",
|
|
"example": "*[HTML]: Hyper Text Markup Language\n*[W3C]: World Wide Web Consortium\nThe HTML specification\nis maintained by the W3C."
|
|
},
|
|
"footnote": {
|
|
"title": "Footnotes",
|
|
"description": "Footnotes can be used to add extra information at the bottom of the page. They can be defined anywhere in the document.",
|
|
"example": "Here is a footnote reference,[^1] and another.[^longnote]\n\n[^1]: Here is the footnote.\n\n[^longnote]: Here's one with multiple blocks. Subsequent paragraphs are indented to show that they belong to the previous footnote."
|
|
},
|
|
"headlines": {
|
|
"title": "Headlines",
|
|
"hashtag": {
|
|
"title": "Hashtag",
|
|
"description": "Headlines can be used to structure your document into sections. Every headline creates a linkable anchor.",
|
|
"example": "# Headline 1\n\n## Headline 2\n\n### Headline 3\n\n#### Headline 4\n\n##### Headline 5\n\n###### Headline 6"
|
|
},
|
|
"equal": {
|
|
"title": "Equals sign",
|
|
"description": "An alternative form for the first and second level headline is to append a line of only equals signs or dashes after the headline text. ",
|
|
"example": "Headline 1\n==========\n\nHeadline 2\n----------"
|
|
}
|
|
},
|
|
"code": {
|
|
"title": "Code",
|
|
"inline": {
|
|
"title": "Inline",
|
|
"description": "You can define an inline code block by wrapping it in backticks.",
|
|
"example": "This is `code`."
|
|
},
|
|
"block": {
|
|
"title": "Block",
|
|
"description": "You can define a code block by putting a line of three backticks before and after the code part.\n\nIt is also possible to define a language for syntax highlighting. For more information check the entry \"Other > Code Highlighting\"",
|
|
"example": "```\nthis is a code block\n```"
|
|
}
|
|
},
|
|
"lists": {
|
|
"title": "Lists",
|
|
"unordered": {
|
|
"title": "Unordered",
|
|
"description": "You can create unordered lists by prepending lines with dashes or asterisks.",
|
|
"example": "- A\n- B\n- C\n\n* A\n* B\n* C"
|
|
},
|
|
"ordered": {
|
|
"title": "Ordered",
|
|
"description": "You can create ordered lists by prepending lines with numbers followed by a dot. Ordered lists will always start with one. Ordered lists that aren't separated by another element will continue the last list.",
|
|
"example": "1. A\n2. B\n3. C\n\n\n4. D\n5. E\n\nText\n\n100. A\n101. B\n102. C"
|
|
}
|
|
},
|
|
"images": {
|
|
"title": "Images",
|
|
"basic": {
|
|
"title": "Basic",
|
|
"description": "Images can be defined using the link syntax with an exclamation mark in front of it. The text in the brackets will be used as alt-text.",
|
|
"example": "![This is an icon](/icons/apple-touch-icon.png)"
|
|
},
|
|
"size": {
|
|
"title": "Size",
|
|
"description": "The size syntax allows you to set both dimensions of an image. If you omit one of the dimensions then image will be scaled to the relative size.",
|
|
"example": "![Image](/icons/apple-touch-icon.png =100x50)\n\n![Image](/icons/apple-touch-icon.png =60x)\n\n![Image](/icons/apple-touch-icon.png =x50)"
|
|
}
|
|
},
|
|
"links": {
|
|
"title": "Links",
|
|
"description": "You can create text links by either using the link syntax, by writing the plain URL or by writing it in angle brackets.",
|
|
"example": "[Example link](https://example.org)\n\nhttps://example.org\n\n<https://example.org>"
|
|
}
|
|
},
|
|
"abcjs": {
|
|
"title": "abcjs",
|
|
"description": "You can render music sheets with abcjs by using music standard notation in a codeblock with `abc` as language.",
|
|
"example": "```abc\nX:1\nT:Speed the Plough\nM:4/4\nC:Trad.\nK:G\n|:GABc dedB|dedB dedB|c2ec B2dB|c2A2 A2BA|\nGABc dedB|dedB dedB|c2ec B2dB|A2F2 G4:|\n|:g2gf gdBd|g2f2 e2d2|c2ec B2dB|c2A2 A2df|\ng2gf g2Bd|g2f2 e2d2|c2ec B2dB|A2F2 G4:|\n```"
|
|
},
|
|
"alert": {
|
|
"title": "Alert boxes",
|
|
"description": "Use alert boxes to bring extra attention to parts of your document.",
|
|
"example": ":::success\nThis is a success\n:::\n\n:::danger\nThis is a danger\n:::\n\n:::warning\nThis is a warning\n:::\n\n:::info\nThis is a info\n:::"
|
|
},
|
|
"blockquoteTags": {
|
|
"name": {
|
|
"title": "Name",
|
|
"description": "Use name tags to indicate who wrote a specific quote e.g. if you're commenting on the text.",
|
|
"example": "> Imagination is more important than knowledge.\n> [name=Albert Einstein]"
|
|
},
|
|
"color": {
|
|
"title": "Color",
|
|
"description": "Use color tags to tint the border of the quote.",
|
|
"example": "> This is the default color\n\n> This is red! [color=red]\n\n> This is blue! [color=#0000ff]"
|
|
},
|
|
"time": {
|
|
"title": "Time",
|
|
"description": "Use time tags to specify when a time stamp",
|
|
"example": "The password is: changeme\n\n> Please change it ASAP [time=2020-03-05]"
|
|
},
|
|
"title": "Blockquote Tags",
|
|
"description": "Use name, time or color tags to specify your blockquotes. Color tags modify the border color.",
|
|
"example": "> [name=Max] Named quote\n\n> [time=today] Time quote\n\n> [color=red] quote\n\n> [name=Max] [color=green] [time=today] Combined quote"
|
|
},
|
|
"bootstrapIcon": {
|
|
"title": "Bootstrap Icons",
|
|
"description": "You can use bootstrap icons in your document by putting the name of an icon between colons but prefixed with `bi-`. A listing of all bootstrap icons can be found on their website.",
|
|
"example": ":bi-music-note-beamed::bi-music-note-beamed::bi-music-note-beamed:\nAround the :bi-globe-americas:\nAround the :bi-globe-asia-australia:\nAround the :bi-globe-central-south-asia:\nAround the :bi-globe-europe-africa:"
|
|
},
|
|
"emoji": {
|
|
"title": "Emojis",
|
|
"description": "You can add colored emojis by either placing the unicode character or by using a shortcode. HedgeDoc supports every emoji that Twemoji supports. You can also use the emoji picker in the editor toolbar.",
|
|
"example": "I :heart: :hedgehog:"
|
|
},
|
|
"csv": {
|
|
"title": "CSV",
|
|
"table": {
|
|
"title": "Table",
|
|
"description": "You can render a CSV text as table by using a code block with `csv` as language. You must specify the delimiter.",
|
|
"example": "```csv delimiter=;\nUsername; Identifier;First name;Last name\n\"booker12; rbooker\";9012;Rachel;Booker\ngrey07;2070;Laura;Grey\njohnson81;4081;Craig;Johnson\njenkins46;9346;Mary;Jenkins\nsmith79;5079;Jamie;Smith\n```"
|
|
},
|
|
"header": {
|
|
"title": "Header",
|
|
"description": "By adding the header keyword you can define that the first line is used as table header",
|
|
"example": "```csv delimiter=; header\nUsername; Identifier;First name;Last name\n\"booker12; rbooker\";9012;Rachel;Booker\ngrey07;2070;Laura;Grey\njohnson81;4081;Craig;Johnson\njenkins46;9346;Mary;Jenkins\nsmith79;5079;Jamie;Smith\n```"
|
|
}
|
|
},
|
|
"flowchart": {
|
|
"title": "flowchart.js",
|
|
"description": "Render flowcharts diagrams using flowchart.js by using a code block with `flow` as language.",
|
|
"example": "```flow\nst=>start: Start\ne=>end: End\nop=>operation: My Operation\nop2=>operation: lalala\ncond=>condition: Yes or No?\n\nst->op->op2->cond\ncond(yes)->e\ncond(no)->op2\n```"
|
|
},
|
|
"gist": {
|
|
"title": "GitHub Gist",
|
|
"description": "Embed GitHub Gists by placing a gist URL on a single line.",
|
|
"example": "# This is my gist\nhttps://gist.github.com/schacon/1\nThis is just the link to a gist: https://gist.github.com/schacon/1\n[Using the link tag will also not trigger the embedding](https://gist.github.com/schacon/1)"
|
|
},
|
|
"graphviz": {
|
|
"title": "GraphViz",
|
|
"description": "Render GraphViz diagrams by using the DOT language in a code block with `graphviz` as language.",
|
|
"example": "```graphviz\ngraph {\n a -- b\n a -- b\n b -- a [color=blue]\n}\n```"
|
|
},
|
|
"katex": {
|
|
"title": "KaTeX",
|
|
"description": "You can render LaTeX mathematical expressions using KaTeX by encapsulating them in dollar signs.",
|
|
"example": "The *Gamma function* satisfying $\\Gamma(n) = (n-1)!\\quad\\forall n\\in\\mathbb N$ is via the Euler integral\n\n$$\nx = {-b \\pm \\sqrt{b^2-4ac} \\over 2a}.\n$$\n\n$$\n\\Gamma(z) = \\int_0^\\infty t^{z-1}e^{-t}dt\\,.\n$$"
|
|
},
|
|
"asciinema": {
|
|
"title": "Asciinema",
|
|
"description": "Embed an Asciinema video by placing the URL in a single line.",
|
|
"example": "https://asciinema.org/a/117928\n"
|
|
},
|
|
"mermaid": {
|
|
"title": "Mermaid",
|
|
"description": "Render diagrams and charts using mermaid.js by adding a code block with the language `mermaid`",
|
|
"example": "```mermaid\ngantt\n title A Gantt Diagram\n\n section Section\n A task: a1, 2014-01-01, 30d\n Another task: after a1, 20d\n\n section Another\n Task in sec: 2014-01-12, 12d\n Another task: 24d\n```"
|
|
},
|
|
"imagePlaceholder": {
|
|
"title": "Image Placeholder",
|
|
"description": "You can use image placeholders to indicate spots where images should be placed. To do this use an image link with `https://` as URL. You can upload the actual image directly from the renderer. Placeholders also support size definition, alt text and title.",
|
|
"example": "![This is a placeholder image](https://)"
|
|
},
|
|
"iframeCapsule": {
|
|
"title": "Iframe capsule",
|
|
"description": "To protect viewers every iframe has to be activated explicitly. Before this, no information is fetched. Adding additional privileges using the sandbox attribute is not allowed.",
|
|
"example": "<iframe src=\"https://example.org/\"></iframe>"
|
|
},
|
|
"plantuml": {
|
|
"title": "PlantUML",
|
|
"description": "Render diagrams and charts using PlantUML by adding a code block with the language `plantuml`. PlantUML diagrams are not rendered in your browser like the other charts, but by an external server.",
|
|
"example": "```plantuml\n@startuml\nparticipant Alice\nparticipant \"The **Famous** Bob\" as Bob\n\nAlice -> Bob : hello --there--\n... Some ~~long delay~~ ...\nBob -> Alice : ok\nnote left\n This is **bold**\n This is //italics//\n This is \"\"monospaced\"\"\n This is --stroked--\n This is __underlined__\n This is ~~waved~~\nend note\n\nAlice -> Bob : A //well formatted// message\nnote right of Alice\n This is <back:cadetblue><size:18>displayed</size></back>\n __left of__ Alice.\nend note\nnote left of Bob\n <u:red>This</u> is <color #118888>displayed</color>\n **<color purple>left of</color> <s:red>Alice</strike> Bob**.\nend note\nnote over Alice, Bob\n <w:#FF33FF>This is hosted</w> by <img sourceforge.jpg>\nend note\n@enduml\n```"
|
|
},
|
|
"spoiler": {
|
|
"title": "Spoiler",
|
|
"description": "Hide information by using a spoiler tag.",
|
|
"example": ":::spoiler This spoiler contains a surprise.\nSURPRISE!\n:::"
|
|
},
|
|
"toc": {
|
|
"title": "Table Of Contents",
|
|
"basic": {
|
|
"title": "Basic",
|
|
"description": "Add a table of contents that is automatically generated using your headlines by adding `[toc]` into a single line.",
|
|
"example": "[toc]\n\n# This is a first headline\n\n## This is a second headline"
|
|
},
|
|
"levelLimit": {
|
|
"title": "Level limits",
|
|
"description": "You can limit the levels of the headlines the TOC should show",
|
|
"example": "[toc:2:3]\n\n# This is a first headline\n\n## This is a second headline\n\n### This is a third headline\n\n#### This is a fourth headline"
|
|
}
|
|
},
|
|
"vegaLite": {
|
|
"title": "Vega Lite",
|
|
"description": "Render diagrams and charts using vega lite by adding a code block with the language `vega-lite`",
|
|
"example": "```vega-lite\n{\n \"$schema\": \"https://vega.github.io/schema/vega-lite/v5.json\",\n \"description\": \"Reproducing http://robslink.com/SAS/democd91/pyramid_pie.htm\",\n \"data\": {\n \"values\": [\n {\"category\": \"Sky\", \"value\": 75, \"order\": 3},\n {\"category\": \"Shady side of a pyramid\", \"value\": 10, \"order\": 1},\n {\"category\": \"Sunny side of a pyramid\", \"value\": 15, \"order\": 2}\n ]\n },\n \"mark\": {\"type\": \"arc\", \"outerRadius\": 80},\n \"encoding\": {\n \"theta\": {\n \"field\": \"value\", \"type\": \"quantitative\",\n \"scale\": {\"range\": [2.35619449, 8.639379797]},\n \"stack\": true\n },\n \"color\": {\n \"field\": \"category\", \"type\": \"nominal\",\n \"scale\": {\n \"domain\": [\"Sky\", \"Shady side of a pyramid\", \"Sunny side of a pyramid\"],\n \"range\": [\"#416D9D\", \"#674028\", \"#DEAC58\"]\n },\n \"legend\": {\n \"orient\": \"none\",\n \"title\": null,\n \"columns\": 1,\n \"legendX\": 200,\n \"legendY\": 80\n }\n },\n \"order\": {\n \"field\": \"order\"\n }\n },\n \"view\": {\"stroke\": null}\n}\n```"
|
|
},
|
|
"vimeo": {
|
|
"title": "Vimeo",
|
|
"description": "Embed a Vimeo video by placing the URL in a single line.",
|
|
"example": "https://vimeo.com/23237102"
|
|
},
|
|
"youtube": {
|
|
"title": "YouTube",
|
|
"description": "Embed a YouTube video by placing the URL in a single line.",
|
|
"example": "https://www.youtube.com/watch?v=YE7VzlLtp-4"
|
|
},
|
|
"taskList": {
|
|
"title": "Task Lists",
|
|
"description": "You can turn any listing into a task list by adding brackets. The checkboxes in the rendering change the markdown content if clicked.",
|
|
"example": "- [ ] ToDos\n - [X] Buy some salad\n - [ ] Brush teeth\n - [x] Drink some water\n - [ ] **Click my box** and see the source code, if you're allowed to edit!\n"
|
|
},
|
|
"codeHighlighting": {
|
|
"title": "Code Highlighting",
|
|
"language": {
|
|
"title": "Language",
|
|
"description": "Specify a language after the start tag of a code block to activate code highlighting.",
|
|
"example": "```js\nvar s = \"JavaScript syntax highlighting\";\nalert(s);\nfunction $initHighlight(block, cls) {\n try {\n if (cls.search(/\\bno\\-highlight\\b/) != -1)\n return process(block, true, 0x0F) +\n ' class=\"\"';\n } catch (e) {\n /* handle exception */\n }\n for (var i = 0 / 2; i < classes.length; i++) {\n if (checkCondition(classes[i]) === undefined)\n return /\\d+[\\s/]/g;\n }\n}\n```"
|
|
},
|
|
"lineWrapping": {
|
|
"title": "Line wrapping",
|
|
"description": "Set an exclamation mark to activate line wrapping",
|
|
"example": "```text\naaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n```\n\n```text!\naaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n```"
|
|
},
|
|
"lineNumbers": {
|
|
"title": "Line numbers",
|
|
"description": "Set a equals sign after the language to show line numbers. You can specify a start line number after the equal sign or a plus to continue the line numbers from the last code block.",
|
|
"example": "```markdown=12\nline1\n```\n```markdown=+\nline2\n```\n```markdown=\nline3\n```"
|
|
}
|
|
}
|
|
}
|
|
}
|