1
0
mirror of https://github.com/pavlobu/deskreen.git synced 2025-05-29 05:40:08 -07:00

more upcomming translations

This commit is contained in:
Pavlo Buidenkov 2021-02-11 17:02:33 +02:00
parent 1129b67c3a
commit 7448c11532
12 changed files with 325 additions and 99 deletions

View File

@ -29,6 +29,16 @@ Why this was made? Because a client served with `http` without SSL, which makes
## [Deskreen FAQ](https://deskreen.com/#faq)
<br/>
## Get Started for translators
Want to add a new language support for Deskreen?
Or you found a typo in existing translations of Deskreen App or website?
Here are step by step guides:
- [How to add a new language to Deskreen App and Website](doc/translations-docs/how-to-add-new-language-translation-to-Deskreen.md)
- [How to fix a typo in Deskreen App or Website](doc/translations-docs/fix-a-typo-in-existing-translation-of-Deskreen.md)
<br/>
## Deskreen Github Discussion Threads

View File

@ -6,31 +6,24 @@ Array [
"label": "Deskreen",
"submenu": Array [
Object {
"label": "About Deskreen",
"label": undefined,
"selector": "orderFrontStandardAboutPanel:",
},
Object {
"type": "separator",
},
Object {
"label": "Services",
"submenu": Array [],
},
Object {
"type": "separator",
},
Object {
"accelerator": "Command+H",
"label": "Hide Deskreen",
"label": undefined,
"selector": "hide:",
},
Object {
"accelerator": "Command+Shift+H",
"label": "Hide Others",
"label": undefined,
"selector": "hideOtherApplications:",
},
Object {
"label": "Show All",
"label": undefined,
"selector": "unhideAllApplications:",
},
Object {
@ -39,21 +32,21 @@ Array [
Object {
"accelerator": "Command+Q",
"click": [Function],
"label": "Quit",
"label": undefined,
},
],
},
Object {
"label": "Edit",
"label": undefined,
"submenu": Array [
Object {
"accelerator": "Command+Z",
"label": "Undo",
"label": undefined,
"selector": "undo:",
},
Object {
"accelerator": "Shift+Command+Z",
"label": "Redo",
"label": undefined,
"selector": "redo:",
},
Object {
@ -61,22 +54,22 @@ Array [
},
Object {
"accelerator": "Command+X",
"label": "Cut",
"label": undefined,
"selector": "cut:",
},
Object {
"accelerator": "Command+C",
"label": "Copy",
"label": undefined,
"selector": "copy:",
},
Object {
"accelerator": "Command+V",
"label": "Paste",
"label": undefined,
"selector": "paste:",
},
Object {
"accelerator": "Command+A",
"label": "Select All",
"label": undefined,
"selector": "selectAll:",
},
],
@ -87,50 +80,50 @@ Array [
Object {
"accelerator": "Ctrl+Command+F",
"click": [Function],
"label": "Toggle Full Screen",
"label": undefined,
},
],
},
Object {
"label": "Window",
"label": undefined,
"submenu": Array [
Object {
"accelerator": "Command+M",
"label": "Minimize",
"label": undefined,
"selector": "performMiniaturize:",
},
Object {
"accelerator": "Command+W",
"label": "Close",
"label": undefined,
"selector": "performClose:",
},
Object {
"type": "separator",
},
Object {
"label": "Bring All to Front",
"label": undefined,
"selector": "arrangeInFront:",
},
],
},
Object {
"label": "Help",
"label": undefined,
"submenu": Array [
Object {
"click": [Function],
"label": "Learn More",
"label": undefined,
},
Object {
"click": [Function],
"label": "Documentation",
"label": undefined,
},
Object {
"click": [Function],
"label": "Community Discussions",
"label": undefined,
},
Object {
"click": [Function],
"label": "Search Issues",
"label": undefined,
},
],
},

View File

@ -35,5 +35,11 @@
"OFF": "OFF",
"Default Video Player": "Default Video Player",
"Click to visit our website": "Click to visit our website",
"Video is flipped horizontally": "Video is flipped horizontally"
"Video is flipped horizontally": "Video is flipped horizontally",
"TRANSLATIONS BELOW ARE NOT ADDED TO UI YET, BUT YOUR TRANSLATIONS ARE WELCOME! THE FEATURES WILL BE ADDED SOON SO YOUR TRANSLATIONS ARE NEEDED": "",
"Click to see connection info": "Click to see connection info",
"Pair ID": "Pair ID",
"Unpair": "Unpair",
"Session ID": "Session ID",
"Click to boost video stream if it is lagging": "Click to boost video stream if it is lagging"
}

View File

@ -35,5 +35,11 @@
"OFF": "ВЫКЛ",
"Default Video Player": "Видеоплеер по умолчанию",
"Click to visit our website": "Нажмите, чтобы посетить наш сайт",
"Video is flipped horizontally": "Видео отзеркалено"
"Video is flipped horizontally": "Видео отзеркалено",
"TRANSLATIONS BELOW ARE NOT ADDED TO UI YET, BUT YOUR TRANSLATIONS ARE WELCOME! THE FEATURES WILL BE ADDED SOON SO YOUR TRANSLATIONS ARE NEEDED": "",
"Click to see connection info": "Click to see connection info",
"Pair ID": "Pair ID",
"Unpair": "Unpair",
"Session ID": "Session ID",
"Click to boost video stream if it is lagging": "Click to boost video stream if it is lagging"
}

View File

@ -35,5 +35,11 @@
"OFF": "ВИМК",
"Default Video Player": "Стандартний відеоплеєр браузера",
"Click to visit our website": "Клацніть, щоб відвідати наш веб-сайт",
"Video is flipped horizontally": "Відео віддзеркалено"
"Video is flipped horizontally": "Відео віддзеркалено",
"TRANSLATIONS BELOW ARE NOT ADDED TO UI YET, BUT YOUR TRANSLATIONS ARE WELCOME! THE FEATURES WILL BE ADDED SOON SO YOUR TRANSLATIONS ARE NEEDED": "",
"Click to see connection info": "Click to see connection info",
"Pair ID": "Pair ID",
"Unpair": "Unpair",
"Session ID": "Session ID",
"Click to boost video stream if it is lagging": "Click to boost video stream if it is lagging"
}

View File

@ -69,5 +69,74 @@
"General Settings": "General Settings",
"Disabled": "Disabled",
"Version": "Version",
"Copyright": "Copyright"
"Copyright": "Copyright",
"Edit": "Edit",
"Hide Deskreen": "Hide Deskreen",
"Hide Others": "Hide Others",
"Show All": "Show All",
"Quit": "Quit",
"Undo": "Undo",
"Redo": "Redo",
"Cut": "Cut",
"Copy": "Copy",
"Paste": "Paste",
"Select All": "Select All",
"View": "View",
"Reload": "Reload",
"Toggle Full Screen": "Toggle Full Screen",
"Toggle Developer Tools": "Toggle Developer Tools",
"Window": "Window",
"Minimize": "Minimize",
"Close": "Close",
"Bring All to Front": "Bring All to Front",
"Help": "Help",
"Learn More": "Learn More",
"Documentation": "Documentation",
"Community Discussions": "Community Discussions",
"Search Issues": "Search Issues",
"TRANSLATIONS BELOW ARE NOT ADDED TO UI YET, BUT YOUR TRANSLATIONS ARE WELCOME! THE FEATURES WILL BE ADDED SOON SO YOUR TRANSLATIONS ARE NEEDED": "",
"Available Trusted Devices": "Available Trusted Devices",
"Make this device trusted": "Make this device trusted",
"Click to select other screen source to share": "Click to select other screen source to share",
"Click to edit Device Alias": "Click to edit Device Alias",
"Trusted Device ID": "Trusted Device ID",
"Trusted": "Trusted",
"Make Trusted": "Make Trusted",
"Forget This Device": "Forget This Device",
"Device Alias": "Device Alias",
"Auto share last Entire Screen source when device is available": "Auto share last Entire Screen source when device is available",
"All devices are successfully disconnected": "All devices are successfully disconnected",
"Device was disconnected": "Device was disconnected",
"Networking": "Networking",
"Deskreen Application Port": "Deskreen Application Port",
"Port is already used by other App": "Port is already used by other App",
"Click to change Deskreen Application Port": "Click to change Deskreen Application Port",
"Type a number from 3000 to 64000 to use as a Deskreen Application Port": "Type a number from 3000 to 64000 to use as a Deskreen Application Port",
"Type another number in range from 3000 to 64000": "Type another number in range from 3000 to 64000",
"Select Network Interface": "Select Network Interface",
"I know IP of my computer and I want to type it manually": "I know IP of my computer and I want to type it manually",
"Type Your Computer IP": "Type Your Computer IP",
"Click to type IP manually": "Click to type IP manually",
"Banned IPs": "Banned IPs",
"Ban New IP": "Ban New IP",
"Type the IP you want to ban": "Type the IP you want to ban",
"Unban this IP": "Unban this IP",
"Unban all IPs": "Unban all IPs",
"Reset Deskreen settings to default": "Reset Deskreen settings to default",
"Ask user to enter password when connecting": "Ask user to enter password when connecting",
"Change Password": "Change Password",
"Type a New Password": "Type a New Password",
"Cancel": "Cancel",
"Device Status": "Device Status",
"Sharing Screen": "Sharing Screen",
"Available, no screen sharing": "Available, no screen sharing",
"Not Available": "Not Available",
"Autostart Deskreen App on login": "Autostart Deskreen App on login",
"Open Deskreen App window on login": "Open Deskreen App window on login",
"Use system tray": "Use system tray",
"Deskreen System Tray": "Deskreen System Tray",
"Open App Window": "Open App Window",
"Minimize To Tray": "Minimize To Tray",
"Show Connected Devices": "Show Connected Devices",
"Quit Deskreen": "Quit Deskreen"
}

View File

@ -69,5 +69,74 @@
"General Settings": "Общие настройки",
"Disabled": "Отключено",
"Version": "Версия",
"Copyright": "Авторские права"
"Copyright": "Авторские права",
"Edit": "Править",
"Hide Deskreen": "Скрыть Deskreen",
"Hide Others": "Скрыть Другие",
"Show All": "Показать все",
"Quit": "Выйти",
"Undo": "Отменить",
"Redo": "Повторить",
"Cut": "Вырезать",
"Copy": "Копировать",
"Paste": "Вставить",
"Select All": "Выбрать все",
"View": "Вид",
"Reload": "Перезагрузить",
"Toggle Full Screen": "Включить полноэкранный режим",
"Toggle Developer Tools": "Включить инструменты разработчика",
"Window": "Окно",
"Minimize": "Свернуть",
"Close": "Закрыть",
"Bring All to Front": "Вынести все на передний план",
"Help": "Помощь",
"Learn More": "Узнать больше",
"Documentation": "Документация",
"Community Discussions": "Обсуждения в сообществе",
"Search Issues": "Поиск проблем",
"TRANSLATIONS BELOW ARE NOT ADDED TO UI YET, BUT YOUR TRANSLATIONS ARE WELCOME! THE FEATURES WILL BE ADDED SOON SO YOUR TRANSLATIONS ARE NEEDED": "",
"Available Trusted Devices": "Available Trusted Devices",
"Make this device trusted": "Make this device trusted",
"Click to select other screen source to share": "Click to select other screen source to share",
"Click to edit Device Alias": "Click to edit Device Alias",
"Trusted Device ID": "Trusted Device ID",
"Trusted": "Trusted",
"Make Trusted": "Make Trusted",
"Forget This Device": "Forget This Device",
"Device Alias": "Device Alias",
"Auto share last Entire Screen source when device is available": "Auto share last Entire Screen source when device is available",
"All devices are successfully disconnected": "All devices are successfully disconnected",
"Device was disconnected": "Device was disconnected",
"Networking": "Networking",
"Deskreen Application Port": "Deskreen Application Port",
"Port is already used by other App": "Port is already used by other App",
"Click to change Deskreen Application Port": "Click to change Deskreen Application Port",
"Type a number from 3000 to 64000 to use as a Deskreen Application Port": "Type a number from 3000 to 64000 to use as a Deskreen Application Port",
"Type another number in range from 3000 to 64000": "Type another number in range from 3000 to 64000",
"Select Network Interface": "Select Network Interface",
"I know IP of my computer and I want to type it manually": "I know IP of my computer and I want to type it manually",
"Type Your Computer IP": "Type Your Computer IP",
"Click to type IP manually": "Click to type IP manually",
"Banned IPs": "Banned IPs",
"Ban New IP": "Ban New IP",
"Type the IP you want to ban": "Type the IP you want to ban",
"Unban this IP": "Unban this IP",
"Unban all IPs": "Unban all IPs",
"Reset Deskreen settings to default": "Reset Deskreen settings to default",
"Ask user to enter password when connecting": "Ask user to enter password when connecting",
"Change Password": "Change Password",
"Type a New Password": "Type a New Password",
"Cancel": "Cancel",
"Device Status": "Device Status",
"Sharing Screen": "Sharing Screen",
"Available, no screen sharing": "Available, no screen sharing",
"Not Available": "Not Available",
"Autostart Deskreen App on login": "Autostart Deskreen App on login",
"Open Deskreen App window on login": "Open Deskreen App window on login",
"Use system tray": "Use system tray",
"Deskreen System Tray": "Deskreen System Tray",
"Open App Window": "Open App Window",
"Minimize To Tray": "Minimize To Tray",
"Show Connected Devices": "Show Connected Devices",
"Quit Deskreen": "Quit Deskreen"
}

View File

@ -69,5 +69,74 @@
"General Settings": "Загальні налаштування",
"Disabled": "Відключено",
"Version": "Версія",
"Copyright": "Авторські права"
"Copyright": "Авторські права",
"Edit": "Правити",
"Hide Deskreen": "Сховати Deskreen",
"Hide Others": "Сховати інші",
"Show All": "Показати всі",
"Quit": "Вийти",
"Undo": "Скасувати",
"Redo": "Повторити",
"Cut": "Вирізати",
"Copy": "Копіювати",
"Paste": "Вставити",
"Select All": "Вибрати все",
"View": "Вид",
"Reload": "Перезавантажити",
"Toggle Full Screen": "Переключити на весь екран",
"Toggle Developer Tools": "Відкрити інструменти розробника",
"Window": "Вікно",
"Minimize": "Мінімізувати",
"Close": "Закрити",
"Bring All to Front": "Вивести всі наперед",
"Help": "Допомога",
"Learn More": "Дізнатися більше",
"Documentation": "Документація",
"Community Discussions": "Обговорення в спільноті",
"Search Issues": "Пошук проблем",
"TRANSLATIONS BELOW ARE NOT ADDED TO UI YET, BUT YOUR TRANSLATIONS ARE WELCOME! THE FEATURES WILL BE ADDED SOON SO YOUR TRANSLATIONS ARE NEEDED": "",
"Available Trusted Devices": "Available Trusted Devices",
"Make this device trusted": "Make this device trusted",
"Click to select other screen source to share": "Click to select other screen source to share",
"Click to edit Device Alias": "Click to edit Device Alias",
"Trusted Device ID": "Trusted Device ID",
"Trusted": "Trusted",
"Make Trusted": "Make Trusted",
"Forget This Device": "Forget This Device",
"Device Alias": "Device Alias",
"Auto share last Entire Screen source when device is available": "Auto share last Entire Screen source when device is available",
"All devices are successfully disconnected": "All devices are successfully disconnected",
"Device was disconnected": "Device was disconnected",
"Networking": "Networking",
"Deskreen Application Port": "Deskreen Application Port",
"Port is already used by other App": "Port is already used by other App",
"Click to change Deskreen Application Port": "Click to change Deskreen Application Port",
"Type a number from 3000 to 64000 to use as a Deskreen Application Port": "Type a number from 3000 to 64000 to use as a Deskreen Application Port",
"Type another number in range from 3000 to 64000": "Type another number in range from 3000 to 64000",
"Select Network Interface": "Select Network Interface",
"I know IP of my computer and I want to type it manually": "I know IP of my computer and I want to type it manually",
"Type Your Computer IP": "Type Your Computer IP",
"Click to type IP manually": "Click to type IP manually",
"Banned IPs": "Banned IPs",
"Ban New IP": "Ban New IP",
"Type the IP you want to ban": "Type the IP you want to ban",
"Unban this IP": "Unban this IP",
"Unban all IPs": "Unban all IPs",
"Reset Deskreen settings to default": "Reset Deskreen settings to default",
"Ask user to enter password when connecting": "Ask user to enter password when connecting",
"Change Password": "Change Password",
"Type a New Password": "Type a New Password",
"Cancel": "Cancel",
"Device Status": "Device Status",
"Sharing Screen": "Sharing Screen",
"Available, no screen sharing": "Available, no screen sharing",
"Not Available": "Not Available",
"Autostart Deskreen App on login": "Autostart Deskreen App on login",
"Open Deskreen App window on login": "Open Deskreen App window on login",
"Use system tray": "Use system tray",
"Deskreen System Tray": "Deskreen System Tray",
"Open App Window": "Open App Window",
"Minimize To Tray": "Minimize To Tray",
"Show Connected Devices": "Show Connected Devices",
"Quit Deskreen": "Quit Deskreen"
}

View File

@ -313,7 +313,7 @@ describe('app menu MenyBuilder tests', () => {
});
describe('when Help submenu Community Discussions was clicked', () => {
it('shoud call shell open external with proper link to https://github.com/pavlobu/deskreen/issues', () => {
it('shoud call shell open external with proper link to https://github.com/pavlobu/deskreen/discussions', () => {
const menu = menuBuilder.buildDarwinTemplate();
const submenuView = menu[4];
const learnMore =
@ -323,7 +323,7 @@ describe('app menu MenyBuilder tests', () => {
learnMore.click();
expect(shell.openExternal).toBeCalledWith(
'https://github.com/pavlobu/deskreen/issues'
'https://github.com/pavlobu/deskreen/discussions'
);
});
});

View File

@ -7,8 +7,6 @@ import {
MenuItemConstructorOptions,
} from 'electron';
// import config from './configs/app.lang.config';
import signalingServer from './server';
interface DarwinMenuItemConstructorOptions extends MenuItemConstructorOptions {
@ -63,26 +61,24 @@ export default class MenuBuilder {
label: 'Deskreen',
submenu: [
{
label: 'About Deskreen',
label: this.i18n.t('About Deskreen'),
selector: 'orderFrontStandardAboutPanel:',
},
{ type: 'separator' },
{ label: 'Services', submenu: [] },
{ type: 'separator' },
{
label: 'Hide Deskreen',
label: this.i18n.t('Hide Deskreen'),
accelerator: 'Command+H',
selector: 'hide:',
},
{
label: 'Hide Others',
label: this.i18n.t('Hide Others'),
accelerator: 'Command+Shift+H',
selector: 'hideOtherApplications:',
},
{ label: 'Show All', selector: 'unhideAllApplications:' },
{ label: this.i18n.t('Show All'), selector: 'unhideAllApplications:' },
{ type: 'separator' },
{
label: 'Quit',
label: this.i18n.t('Quit'),
accelerator: 'Command+Q',
click: () => {
signalingServer.stop();
@ -92,40 +88,60 @@ export default class MenuBuilder {
],
};
const subMenuEdit: DarwinMenuItemConstructorOptions = {
label: 'Edit',
label: this.i18n.t('Edit'),
submenu: [
{ label: 'Undo', accelerator: 'Command+Z', selector: 'undo:' },
{ label: 'Redo', accelerator: 'Shift+Command+Z', selector: 'redo:' },
{ type: 'separator' },
{ label: 'Cut', accelerator: 'Command+X', selector: 'cut:' },
{ label: 'Copy', accelerator: 'Command+C', selector: 'copy:' },
{ label: 'Paste', accelerator: 'Command+V', selector: 'paste:' },
{
label: 'Select All',
label: this.i18n.t('Undo'),
accelerator: 'Command+Z',
selector: 'undo:',
},
{
label: this.i18n.t('Redo'),
accelerator: 'Shift+Command+Z',
selector: 'redo:',
},
{ type: 'separator' },
{
label: this.i18n.t('Cut'),
accelerator: 'Command+X',
selector: 'cut:',
},
{
label: this.i18n.t('Copy'),
accelerator: 'Command+C',
selector: 'copy:',
},
{
label: this.i18n.t('Paste'),
accelerator: 'Command+V',
selector: 'paste:',
},
{
label: this.i18n.t('Select All'),
accelerator: 'Command+A',
selector: 'selectAll:',
},
],
};
const subMenuViewDev: MenuItemConstructorOptions = {
label: 'View',
label: this.i18n.t('View'),
submenu: [
{
label: 'Reload',
label: this.i18n.t('Reload'),
accelerator: 'Command+R',
click: () => {
this.mainWindow.webContents.reload();
},
},
{
label: 'Toggle Full Screen',
label: this.i18n.t('Toggle Full Screen'),
accelerator: 'Ctrl+Command+F',
click: () => {
this.mainWindow.setFullScreen(!this.mainWindow.isFullScreen());
},
},
{
label: 'Toggle Developer Tools',
label: this.i18n.t('Toggle Developer Tools'),
accelerator: 'Alt+Command+I',
click: () => {
this.mainWindow.webContents.toggleDevTools();
@ -137,7 +153,7 @@ export default class MenuBuilder {
label: 'View',
submenu: [
{
label: 'Toggle Full Screen',
label: this.i18n.t('Toggle Full Screen'),
accelerator: 'Ctrl+Command+F',
click: () => {
this.mainWindow.setFullScreen(!this.mainWindow.isFullScreen());
@ -146,29 +162,36 @@ export default class MenuBuilder {
],
};
const subMenuWindow: DarwinMenuItemConstructorOptions = {
label: 'Window',
label: this.i18n.t('Window'),
submenu: [
{
label: 'Minimize',
label: this.i18n.t('Minimize'),
accelerator: 'Command+M',
selector: 'performMiniaturize:',
},
{ label: 'Close', accelerator: 'Command+W', selector: 'performClose:' },
{
label: this.i18n.t('Close'),
accelerator: 'Command+W',
selector: 'performClose:',
},
{ type: 'separator' },
{ label: 'Bring All to Front', selector: 'arrangeInFront:' },
{
label: this.i18n.t('Bring All to Front'),
selector: 'arrangeInFront:',
},
],
};
const subMenuHelp: MenuItemConstructorOptions = {
label: 'Help',
label: this.i18n.t('Help'),
submenu: [
{
label: 'Learn More',
label: this.i18n.t('Learn More'),
click() {
shell.openExternal('https://www.deskreen.com/');
},
},
{
label: 'Documentation',
label: this.i18n.t('Documentation'),
click() {
shell.openExternal(
'https://github.com/pavlobu/deskreen/blob/master/README.md'
@ -176,13 +199,15 @@ export default class MenuBuilder {
},
},
{
label: 'Community Discussions',
label: this.i18n.t('Community Discussions'),
click() {
shell.openExternal('https://github.com/pavlobu/deskreen/issues');
shell.openExternal(
'https://github.com/pavlobu/deskreen/discussions'
);
},
},
{
label: 'Search Issues',
label: this.i18n.t('Search Issues'),
click() {
shell.openExternal('https://github.com/pavlobu/deskreen/issues');
},
@ -196,35 +221,6 @@ export default class MenuBuilder {
? subMenuViewDev
: subMenuViewProd;
// const languageSubmenu = config.languages.map((languageCode) => {
// return {
// label: this.i18n.t(languageCode),
// type: 'radio',
// checked: this.i18n.language === languageCode,
// click: () => {
// this.i18n.changeLanguage(languageCode);
// setTimeout(() => {
// // to fix for MacOS bug, not picking up new language on first click
// if (this.i18n.language !== languageCode) {
// this.i18n.changeLanguage(languageCode);
// }
// }, 500);
// },
// };
// });
// const languageMenu: MenuItemConstructorOptions = {
// label: this.i18n.t('Language'),
// submenu: languageSubmenu as MenuItemConstructorOptions[],
// };
return [
subMenuAbout,
subMenuEdit,
subMenuView,
subMenuWindow,
subMenuHelp,
// languageMenu,
];
return [subMenuAbout, subMenuEdit, subMenuView, subMenuWindow, subMenuHelp];
}
}

View File

@ -0,0 +1 @@
### Guide on how to fix a typo in translations of Deskreen

View File

@ -0,0 +1 @@
### Guide on how to add a new language translation to Deskreen