mirror of https://github.com/espruino/BangleApps
Removed auto /*LANG*/, Added more languages
parent
d54fdaa9e8
commit
187821bf49
|
@ -295,7 +295,7 @@ const SocketsMenu = new State({
|
|||
const startEnd = status => status ? "start" : "end";
|
||||
|
||||
/* translate status into english */
|
||||
const onOff= status => status ? "on" : /*LANG*/"off";
|
||||
const onOff= status => status ? "on" : "off";
|
||||
|
||||
|
||||
/* create watching functions that will change the global
|
||||
|
|
|
@ -53,7 +53,7 @@ function countDown() {
|
|||
g.reset().clearRect(0, 76, 44+44, g.getHeight()/2+6);
|
||||
|
||||
g.setFontAlign(0, -1, 0);
|
||||
g.setFont("6x8").drawString(/*LANG*/"Timer", 44, g.getHeight()/2-20);
|
||||
g.setFont("6x8").drawString("Timer", 44, g.getHeight()/2-20);
|
||||
g.setFont("Michroma16").drawString(timeToString(timervalue), 44, g.getHeight()/2-10);
|
||||
|
||||
if (timervalue <= 0) {
|
||||
|
|
|
@ -21,7 +21,7 @@ function getVersion(name,file) {
|
|||
}
|
||||
getVersion("Bootloader","boot.info");
|
||||
getVersion("Launcher","launch.info");
|
||||
getVersion(/*LANG*/"Settings","setting.info");
|
||||
getVersion("Settings","setting.info");
|
||||
|
||||
y+=h;
|
||||
g.drawString(MEM.total+" JS Variables available",0,y+=h);
|
||||
|
|
|
@ -23,7 +23,7 @@ function getVersion(name,file) {
|
|||
var versions = [
|
||||
getVersion("Bootloader","boot.info"),
|
||||
getVersion("Launcher","launch.info"),
|
||||
getVersion(/*LANG*/"Settings","setting.info")
|
||||
getVersion("Settings","setting.info")
|
||||
];
|
||||
var logo = E.toArrayBuffer(atob("PBwBAAAAAAAB/gAAAAAAAB/gAAAAAAAB/gAAAAAAAB/gAAAAAAAB/gAAAAAAAB/gAAAAAAAD/w+AAAAQAHA4hAAAAQAMAMhAAAAQAYBmhAAAAQAYBGiAAAAQAQCD/H74+R4wGDhoKJCSEwEDgoKJCT8wFDgoKJCSAwHDhoKJCSEQHj/H6I+R4YHmAAAACAAYEGAAABCAAMEMAAAA8AAHA4AAAAAAAD/wAAAAAAAB/gAAAAAAAB/gAAAAAAAB/gAAAAAAAB/gAAAAAAAB/gAAAAAAAB/g"));
|
||||
|
||||
|
@ -41,7 +41,7 @@ function drawInfo() {
|
|||
|
||||
getVersion("Bootloader","boot.info");
|
||||
getVersion("Launcher","launch.info");
|
||||
getVersion(/*LANG*/"Settings","setting.info");
|
||||
getVersion("Settings","setting.info");
|
||||
|
||||
g.drawString(MEM.total+" JS Vars",0,y+=h);
|
||||
g.drawString("Storage: "+(require("Storage").getFree()>>10)+"k free",0,y+=h);
|
||||
|
|
|
@ -108,7 +108,7 @@
|
|||
g.setFont("6x8", 2);
|
||||
g.setColor(1,1,1);
|
||||
require("graph").drawLine(g, steps, {
|
||||
//title: /*LANG*/"Steps",
|
||||
//title: "Steps",
|
||||
axes : true,
|
||||
gridy : gridyValue,
|
||||
y : 60, //offset on screen
|
||||
|
@ -118,7 +118,7 @@
|
|||
// show steps and duration of the chart
|
||||
g.setFont("6x8", 2);
|
||||
g.setColor(0,1,0);
|
||||
g.drawString(/*LANG*/"steps", 30, 24);
|
||||
g.drawString("steps", 30, 24);
|
||||
g.drawString(stepsLastEntry, 30, 44);
|
||||
g.drawString((history/3600000) + " hrs", 30, 64);
|
||||
|
||||
|
|
|
@ -69,7 +69,7 @@
|
|||
'stepGoal' : 10000,
|
||||
'stepLength' : 75,
|
||||
'lineOne' : "Distance",
|
||||
'lineTwo' : /*LANG*/"Steps",
|
||||
'lineTwo' : "Steps",
|
||||
};
|
||||
if (!settings) { loadSettings(); }
|
||||
return (key in settings) ? settings[key] : DEFAULTS[key];
|
||||
|
@ -169,7 +169,7 @@
|
|||
if (active == 1) g.setColor(0x07E0); //green
|
||||
else g.setColor(0xFFFF); //white
|
||||
g.setFont("6x8", 2);
|
||||
if (setting('lineOne') == /*LANG*/'Steps') {
|
||||
if (setting('lineOne') == 'Steps') {
|
||||
g.drawString(kFormatterSteps(stepsCounted),this.x+1,this.y); //first line, big number, steps
|
||||
}
|
||||
if (setting('lineOne') == 'Distance') {
|
||||
|
@ -177,7 +177,7 @@
|
|||
}
|
||||
g.setFont("6x8", 1);
|
||||
g.setColor(0xFFFF); //white
|
||||
if (setting('lineTwo') == /*LANG*/'Steps') {
|
||||
if (setting('lineTwo') == 'Steps') {
|
||||
g.drawString(stepsCounted,this.x+1,this.y+14); //second line, small number, steps
|
||||
}
|
||||
if (setting('lineTwo') == 'Distance') {
|
||||
|
|
|
@ -39,9 +39,9 @@ function showMainMenu() {
|
|||
};
|
||||
alarms.forEach((alarm,idx)=>{
|
||||
if (alarm.timer) {
|
||||
txt = /*LANG*/"TIMER "+(alarm.on?/*LANG*/"on ":/*LANG*//*LANG*/"off ")+formatMins(alarm.timer);
|
||||
txt = /*LANG*/"TIMER "+(alarm.on?/*LANG*/"on ":/*LANG*/"off ")+formatMins(alarm.timer);
|
||||
} else {
|
||||
txt = /*LANG*/"ALARM "+(alarm.on?/*LANG*/"on ":/*LANG*//*LANG*/"off ")+formatTime(alarm.hr);
|
||||
txt = /*LANG*/"ALARM "+(alarm.on?/*LANG*/"on ":/*LANG*/"off ")+formatTime(alarm.hr);
|
||||
if (alarm.rp) txt += /*LANG*/" (repeat)";
|
||||
}
|
||||
menu[txt] = function() {
|
||||
|
@ -82,7 +82,7 @@ function editAlarm(alarmIndex) {
|
|||
},
|
||||
/*LANG*/'Enabled': {
|
||||
value: en,
|
||||
format: v=>v?"On":/*LANG*/"Off",
|
||||
format: v=>v?"On":"Off",
|
||||
onchange: v=>en=v
|
||||
},
|
||||
/*LANG*/'Repeat': {
|
||||
|
@ -147,7 +147,7 @@ function editTimer(alarmIndex) {
|
|||
},
|
||||
/*LANG*/'Enabled': {
|
||||
value: en,
|
||||
format: v=>v?/*LANG*/"On":/*LANG*//*LANG*/"Off",
|
||||
format: v=>v?/*LANG*/"On":/*LANG*/"Off",
|
||||
onchange: v=>en=v
|
||||
}
|
||||
};
|
||||
|
|
|
@ -29,11 +29,11 @@
|
|||
},
|
||||
// {t:"musicstate", state:"play/pause",position,shuffle,repeat}
|
||||
"musicstate" : function() {
|
||||
require("messages").pushMessage({t:"modify",id:"music",title:/*LANG*/"Music",state:event.state});
|
||||
require("messages").pushMessage({t:"modify",id:"music",title:"Music",state:event.state});
|
||||
},
|
||||
// {t:"musicinfo", artist,album,track,dur,c(track count),n(track num}
|
||||
"musicinfo" : function() {
|
||||
require("messages").pushMessage(Object.assign(event, {t:"modify",id:"music",title:/*LANG*/"Music"}));
|
||||
require("messages").pushMessage(Object.assign(event, {t:"modify",id:"music",title:"Music"}));
|
||||
},
|
||||
// {"t":"call","cmd":"incoming/end","name":"Bob","number":"12421312"})
|
||||
"call" : function() {
|
||||
|
@ -63,7 +63,7 @@
|
|||
// Music control
|
||||
Bangle.musicControl = cmd => {
|
||||
// play/pause/next/previous/volumeup/volumedown
|
||||
gbSend({ t: /*LANG*/"music", n:cmd });
|
||||
gbSend({ t: "music", n:cmd });
|
||||
};
|
||||
// Message response
|
||||
Bangle.messageResponse = (msg,response) => {
|
||||
|
|
|
@ -37,7 +37,7 @@ require('Storage').writeJSON(SETTINGSFILE, {
|
|||
secondsColoured: true,
|
||||
secondsWithColon: true,
|
||||
dateOnMain: "Long", // "Short", "Long", "ISO8601"
|
||||
dateOnSecs: "Year", // "No", /*LANG*/"Year", "Weekday", LEGACY: true/false
|
||||
dateOnSecs: "Year", // "No", "Year", "Weekday", LEGACY: true/false
|
||||
weekDay: true,
|
||||
calWeek: true,
|
||||
upperCase: true,
|
||||
|
@ -60,7 +60,7 @@ function loadSettings() {
|
|||
secondsColoured = def(settings.secondsColoured, true);
|
||||
secondsWithColon = def(settings.secondsWithColon, true);
|
||||
dateOnMain = def(settings.dateOnMain, "Long");
|
||||
dateOnSecs = def(settings.dateOnSecs, /*LANG*/"Year");
|
||||
dateOnSecs = def(settings.dateOnSecs, "Year");
|
||||
weekDay = def(settings.weekDay, true);
|
||||
calWeek = def(settings.calWeek, false);
|
||||
upperCase = def(settings.upperCase, true);
|
||||
|
@ -68,7 +68,7 @@ function loadSettings() {
|
|||
|
||||
// Legacy
|
||||
if (dateOnSecs === true)
|
||||
dateOnSecs = /*LANG*/"Year";
|
||||
dateOnSecs = "Year";
|
||||
if (dateOnSecs === false)
|
||||
dateOnSecs = "No";
|
||||
}
|
||||
|
@ -153,7 +153,7 @@ function draw() {
|
|||
var md;
|
||||
var yearfirst;
|
||||
if (dateStr2.match(/\d\d\d\d$/)) { // formatted date ends with year
|
||||
year = (dateOnSecs === /*LANG*/"Year" ? dateStr2.slice(-4) : require("locale").dow(date, 1));
|
||||
year = (dateOnSecs === "Year" ? dateStr2.slice(-4) : require("locale").dow(date, 1));
|
||||
md = dateStr2.slice(0, -4);
|
||||
if (!md.endsWith(".")) // keep separator before the year only if it is a dot (31.12. but 31/12)
|
||||
md = md.slice(0, -1);
|
||||
|
@ -161,7 +161,7 @@ function draw() {
|
|||
} else { // formatted date begins with year
|
||||
if (!dateStr2.match(/^\d\d\d\d/)) // if year position cannot be detected...
|
||||
dateStr2 = isoStr(date); // ...use ISO date format instead
|
||||
year = (dateOnSecs === /*LANG*/"Year" ? dateStr2.slice(0, 4) : require("locale").dow(date, 1));
|
||||
year = (dateOnSecs === "Year" ? dateStr2.slice(0, 4) : require("locale").dow(date, 1));
|
||||
md = dateStr2.slice(5); // never keep separator directly after year
|
||||
yearfirst = true;
|
||||
}
|
||||
|
|
|
@ -1 +1 @@
|
|||
!function(){"use strict";var t;!function(t){t.Stopped="STOP",t.Paused="PAUSE",t.Running="RUN"}(t||(t={}));const n={STOP:63488,PAUSE:65504,RUN:2016};function e(t,n,e){g.setColor(0),g.fillRect(n-60,e,n+60,e+30),g.setColor(65535),g.drawString(t,n,e)}function i(i){var s;g.setFontVector(30),g.setFontAlign(0,-1,0),e((i.distance/1e3).toFixed(2),60,55),e(function(t){const n=Math.round(t),e=Math.floor(n/3600),i=Math.floor(n/60)%60,s=n%60;return(e?e+":":"")+("0"+i).substr(-2)+":"+("0"+s).substr(-2)}(i.duration),172,55),e(function(t){if(t<.1667)return"__'__\"";const n=Math.round(1e3/t),e=Math.floor(n/60),i=n%60;return("0"+e).substr(-2)+"'"+("0"+i).substr(-2)+'"'}(i.speed),60,115),e(i.hr.toFixed(0),172,115),e(i.steps.toFixed(0),60,175),e(i.cadence.toFixed(0),172,175),g.setFont("6x8",2),g.setColor(i.gpsValid?2016:63488),g.fillRect(0,216,80,240),g.setColor(0),g.drawString("GPS",40,220),g.setColor(65535),g.fillRect(80,216,160,240),g.setColor(0),g.drawString(("0"+(s=new Date).getHours()).substr(-2)+":"+("0"+s.getMinutes()).substr(-2),120,220),g.setColor(n[i.status]),g.fillRect(160,216,230,240),g.setColor(0),g.drawString(i.status,200,220),g.setFont("6x8").setFontAlign(0,0,1).setColor(-1),i.status===t.Paused?g.drawString("START",236,60,1).drawString(" CLEAR ",236,180,1):i.status===t.Running?g.drawString(" PAUSE ",236,60,1).drawString(" PAUSE ",236,180,1):g.drawString("START",236,60,1).drawString(" ",236,180,1)}function s(t){g.clear(),g.setColor(50712),g.setFont("6x8",2),g.setFontAlign(0,-1,0),g.drawString("DIST (KM)",60,32),g.drawString("TIME",180,32),g.drawString("PACE",60,92),g.drawString("HEART",180,92),g.drawString("STEPS",60,152),g.drawString("CADENCE",180,152),i(t),Bangle.drawWidgets()}function a(n){n.status===t.Stopped&&function(t){const n=(new Date).toISOString().replace(/[-:]/g,""),e=`banglerun_${n.substr(2,6)}_${n.substr(9,6)}`;t.file=require("Storage").open(e,"w"),t.fileWritten=!1}(n),n.status===t.Running?n.status=t.Paused:n.status=t.Running,i(n)}const r={fix:NaN,lat:NaN,lon:NaN,alt:NaN,vel:NaN,dop:NaN,gpsValid:!1,x:NaN,y:NaN,z:NaN,t:NaN,timeSinceLog:0,hr:60,hrError:100,file:null,fileWritten:!1,drawing:!1,status:t.Stopped,duration:0,distance:0,speed:0,steps:0,cadence:0};var o;o=r,Bangle.on("GPS",n=>function(n,e){n.lat=e.lat,n.lon=e.lon,n.alt=e.alt,n.vel=e.speed/3.6,n.fix=e.fix,n.dop=e.hdop,n.gpsValid=n.fix>0,function(n){const e=Date.now();let i=(e-n.t)/1e3;if(isFinite(i)||(i=0),n.t=e,n.timeSinceLog+=i,n.status===t.Running&&(n.duration+=i),!n.gpsValid)return;const s=6371008.8+n.alt,a=n.lat*Math.PI/180,r=n.lon*Math.PI/180,o=s*Math.cos(a)*Math.cos(r),g=s*Math.cos(a)*Math.sin(r),d=s*Math.sin(a);if(!n.x)return n.x=o,n.y=g,void(n.z=d);const u=o-n.x,l=g-n.y,c=d-n.z,f=Math.sqrt(u*u+l*l+c*c);n.x=o,n.y=g,n.z=d,n.status===t.Running&&(n.distance+=f,n.speed=n.distance/n.duration||0,n.cadence=60*n.steps/n.duration||0)}(n),i(n),n.gpsValid&&n.status===t.Running&&n.timeSinceLog>5&&(n.timeSinceLog=0,function(t){t.fileWritten||(t.file.write(["timestamp","latitude","longitude","altitude","duration","distance","heartrate",/*LANG*/"steps"].join(",")+"\n"),t.fileWritten=!0),t.file.write([Date.now().toFixed(0),t.lat.toFixed(6),t.lon.toFixed(6),t.alt.toFixed(2),t.duration.toFixed(0),t.distance.toFixed(2),t.hr.toFixed(0),t.steps.toFixed(0)].join(",")+"\n")}(n))}(o,n)),Bangle.setGPSPower(1),function(t){Bangle.on("HRM",n=>function(t,n){if(0===n.confidence)return;const e=n.bpm-t.hr,i=Math.abs(e)+101-n.confidence,s=t.hrError/(t.hrError+i)||0;t.hr+=e*s,t.hrError+=(i-t.hrError)*s}(t,n)),Bangle.setHRMPower(1)}(r),function(n){Bangle.on("step",()=>function(n){n.status===t.Running&&(n.steps+=1)}(n))}(r),function(t){Bangle.loadWidgets(),Bangle.on("lcdPower",n=>{t.drawing=n,n&&s(t)}),s(t)}(r),setWatch(()=>a(r),BTN1,{repeat:!0,edge:"falling"}),setWatch(()=>function(n){n.status===t.Paused&&function(t){t.duration=0,t.distance=0,t.speed=0,t.steps=0,t.cadence=0}(n),n.status===t.Running?n.status=t.Paused:n.status=t.Stopped,i(n)}(r),BTN3,{repeat:!0,edge:"falling"})}();
|
||||
!function(){"use strict";var t;!function(t){t.Stopped="STOP",t.Paused="PAUSE",t.Running="RUN"}(t||(t={}));const n={STOP:63488,PAUSE:65504,RUN:2016};function e(t,n,e){g.setColor(0),g.fillRect(n-60,e,n+60,e+30),g.setColor(65535),g.drawString(t,n,e)}function i(i){var s;g.setFontVector(30),g.setFontAlign(0,-1,0),e((i.distance/1e3).toFixed(2),60,55),e(function(t){const n=Math.round(t),e=Math.floor(n/3600),i=Math.floor(n/60)%60,s=n%60;return(e?e+":":"")+("0"+i).substr(-2)+":"+("0"+s).substr(-2)}(i.duration),172,55),e(function(t){if(t<.1667)return"__'__\"";const n=Math.round(1e3/t),e=Math.floor(n/60),i=n%60;return("0"+e).substr(-2)+"'"+("0"+i).substr(-2)+'"'}(i.speed),60,115),e(i.hr.toFixed(0),172,115),e(i.steps.toFixed(0),60,175),e(i.cadence.toFixed(0),172,175),g.setFont("6x8",2),g.setColor(i.gpsValid?2016:63488),g.fillRect(0,216,80,240),g.setColor(0),g.drawString("GPS",40,220),g.setColor(65535),g.fillRect(80,216,160,240),g.setColor(0),g.drawString(("0"+(s=new Date).getHours()).substr(-2)+":"+("0"+s.getMinutes()).substr(-2),120,220),g.setColor(n[i.status]),g.fillRect(160,216,230,240),g.setColor(0),g.drawString(i.status,200,220),g.setFont("6x8").setFontAlign(0,0,1).setColor(-1),i.status===t.Paused?g.drawString("START",236,60,1).drawString(" CLEAR ",236,180,1):i.status===t.Running?g.drawString(" PAUSE ",236,60,1).drawString(" PAUSE ",236,180,1):g.drawString("START",236,60,1).drawString(" ",236,180,1)}function s(t){g.clear(),g.setColor(50712),g.setFont("6x8",2),g.setFontAlign(0,-1,0),g.drawString("DIST (KM)",60,32),g.drawString("TIME",180,32),g.drawString("PACE",60,92),g.drawString("HEART",180,92),g.drawString("STEPS",60,152),g.drawString("CADENCE",180,152),i(t),Bangle.drawWidgets()}function a(n){n.status===t.Stopped&&function(t){const n=(new Date).toISOString().replace(/[-:]/g,""),e=`banglerun_${n.substr(2,6)}_${n.substr(9,6)}`;t.file=require("Storage").open(e,"w"),t.fileWritten=!1}(n),n.status===t.Running?n.status=t.Paused:n.status=t.Running,i(n)}const r={fix:NaN,lat:NaN,lon:NaN,alt:NaN,vel:NaN,dop:NaN,gpsValid:!1,x:NaN,y:NaN,z:NaN,t:NaN,timeSinceLog:0,hr:60,hrError:100,file:null,fileWritten:!1,drawing:!1,status:t.Stopped,duration:0,distance:0,speed:0,steps:0,cadence:0};var o;o=r,Bangle.on("GPS",n=>function(n,e){n.lat=e.lat,n.lon=e.lon,n.alt=e.alt,n.vel=e.speed/3.6,n.fix=e.fix,n.dop=e.hdop,n.gpsValid=n.fix>0,function(n){const e=Date.now();let i=(e-n.t)/1e3;if(isFinite(i)||(i=0),n.t=e,n.timeSinceLog+=i,n.status===t.Running&&(n.duration+=i),!n.gpsValid)return;const s=6371008.8+n.alt,a=n.lat*Math.PI/180,r=n.lon*Math.PI/180,o=s*Math.cos(a)*Math.cos(r),g=s*Math.cos(a)*Math.sin(r),d=s*Math.sin(a);if(!n.x)return n.x=o,n.y=g,void(n.z=d);const u=o-n.x,l=g-n.y,c=d-n.z,f=Math.sqrt(u*u+l*l+c*c);n.x=o,n.y=g,n.z=d,n.status===t.Running&&(n.distance+=f,n.speed=n.distance/n.duration||0,n.cadence=60*n.steps/n.duration||0)}(n),i(n),n.gpsValid&&n.status===t.Running&&n.timeSinceLog>5&&(n.timeSinceLog=0,function(t){t.fileWritten||(t.file.write(["timestamp","latitude","longitude","altitude","duration","distance","heartrate","steps"].join(",")+"\n"),t.fileWritten=!0),t.file.write([Date.now().toFixed(0),t.lat.toFixed(6),t.lon.toFixed(6),t.alt.toFixed(2),t.duration.toFixed(0),t.distance.toFixed(2),t.hr.toFixed(0),t.steps.toFixed(0)].join(",")+"\n")}(n))}(o,n)),Bangle.setGPSPower(1),function(t){Bangle.on("HRM",n=>function(t,n){if(0===n.confidence)return;const e=n.bpm-t.hr,i=Math.abs(e)+101-n.confidence,s=t.hrError/(t.hrError+i)||0;t.hr+=e*s,t.hrError+=(i-t.hrError)*s}(t,n)),Bangle.setHRMPower(1)}(r),function(n){Bangle.on("step",()=>function(n){n.status===t.Running&&(n.steps+=1)}(n))}(r),function(t){Bangle.loadWidgets(),Bangle.on("lcdPower",n=>{t.drawing=n,n&&s(t)}),s(t)}(r),setWatch(()=>a(r),BTN1,{repeat:!0,edge:"falling"}),setWatch(()=>function(n){n.status===t.Paused&&function(t){t.duration=0,t.distance=0,t.speed=0,t.steps=0,t.cadence=0}(n),n.status===t.Running?n.status=t.Paused:n.status=t.Stopped,i(n)}(r),BTN3,{repeat:!0,edge:"falling"})}();
|
||||
|
|
|
@ -191,8 +191,8 @@ function btn3Pressed() {
|
|||
if (settings.vibrate == "forward")
|
||||
settings.vibrate = "backward";
|
||||
else if (settings.vibrate == "backward")
|
||||
settings.vibrate = /*LANG*/"off";
|
||||
else if (settings.vibrate == /*LANG*/"off")
|
||||
settings.vibrate = "off";
|
||||
else if (settings.vibrate == "off")
|
||||
settings.vibrate = "forward";
|
||||
}
|
||||
else if(status == 5){
|
||||
|
|
|
@ -503,7 +503,7 @@
|
|||
if (settings.startWithHrm){
|
||||
|
||||
Bangle.setHRMPower = function(isOn, app) {
|
||||
log("setHRMPower for " + app + ": " + (isOn?"on":/*LANG*/"off"));
|
||||
log("setHRMPower for " + app + ": " + (isOn?"on":"off"));
|
||||
if (settings.enabled){
|
||||
Bangle.setBTHRMPower(isOn, app);
|
||||
}
|
||||
|
|
|
@ -58,7 +58,7 @@ function draw(y, hrv) {
|
|||
}
|
||||
|
||||
g.setRotation(3);
|
||||
g.setFontVector(12).drawString(/*LANG*/"Reset",g.getHeight()/2, g.getWidth()-10);
|
||||
g.setFontVector(12).drawString("Reset",g.getHeight()/2, g.getWidth()-10);
|
||||
g.setRotation(0);
|
||||
}
|
||||
|
||||
|
|
|
@ -227,7 +227,7 @@ function isCircleEnabled(type) {
|
|||
|
||||
function getCircleColor(type) {
|
||||
const pos = getCirclePosition(type);
|
||||
const color = settings["circle" + (pos + 1) + /*LANG*/"color"];
|
||||
const color = settings["circle" + (pos + 1) + "color"];
|
||||
if (color && color != "") return color;
|
||||
}
|
||||
|
||||
|
|
|
@ -44,7 +44,7 @@
|
|||
},
|
||||
/*LANG*/'show widgets': {
|
||||
value: "showWidgets" in settings ? settings.showWidgets : false,
|
||||
format: () => (settings.showWidgets ? /*LANG*/'Yes' : 'No'),
|
||||
format: () => (settings.showWidgets ? 'Yes' : 'No'),
|
||||
onchange: x => save('showWidgets', x),
|
||||
},
|
||||
/*LANG*/'weather circle': {
|
||||
|
@ -167,7 +167,7 @@
|
|||
},
|
||||
/*LANG*/'colorize icon': {
|
||||
value: colorizeIconKey in settings ? settings[colorizeIconKey] : false,
|
||||
format: () => (settings[colorizeIconKey] ? /*LANG*/'Yes' : 'No'),
|
||||
format: () => (settings[colorizeIconKey] ? 'Yes' : 'No'),
|
||||
onchange: x => save(colorizeIconKey, x),
|
||||
},
|
||||
};
|
||||
|
|
|
@ -16,7 +16,7 @@ var lasty = 0;
|
|||
var lastx = 0;
|
||||
|
||||
if (settings.HID=="kbmedia") {
|
||||
profile = /*LANG*/'Music';
|
||||
profile = 'Music';
|
||||
sendHid = function (code, cb) {
|
||||
try {
|
||||
NRF.sendHIDReport([1,code], () => {
|
||||
|
@ -57,29 +57,29 @@ if (next) {
|
|||
if(lasty > 40){
|
||||
writeLine('Down', 3);
|
||||
// setTimeout(drawApp, 1000);
|
||||
// Bluetooth.println(JSON.stringify({t:/*LANG*/"music", n:"volumedown"}));
|
||||
// Bluetooth.println(JSON.stringify({t:"music", n:"volumedown"}));
|
||||
down(() => {});
|
||||
}
|
||||
else if(lasty < -40){
|
||||
writeLine('Up', 3);
|
||||
// setTimeout(drawApp, 1000);
|
||||
//Bluetooth.println(JSON.stringify({t:/*LANG*/"music", n:"volumeup"}));
|
||||
//Bluetooth.println(JSON.stringify({t:"music", n:"volumeup"}));
|
||||
|
||||
up(() => {});
|
||||
} else if(lastx < -40){
|
||||
writeLine('Prev', 3);
|
||||
// setTimeout(drawApp, 1000);
|
||||
// Bluetooth.println(JSON.stringify({t:/*LANG*/"music", n:"previous"}));
|
||||
// Bluetooth.println(JSON.stringify({t:"music", n:"previous"}));
|
||||
prev(() => {});
|
||||
} else if(lastx > 40){
|
||||
writeLine('Next', 3);
|
||||
// setTimeout(drawApp, 1000);
|
||||
// Bluetooth.println(JSON.stringify({t:/*LANG*/"music", n:"next"}));
|
||||
// Bluetooth.println(JSON.stringify({t:"music", n:"next"}));
|
||||
next(() => {});
|
||||
} else if(lastx==0 && lasty==0){
|
||||
writeLine('play/pause', 3);
|
||||
//setTimeout(drawApp, 1000);
|
||||
// Bluetooth.println(JSON.stringify({t:/*LANG*/"music", n:"play"}));
|
||||
// Bluetooth.println(JSON.stringify({t:"music", n:"play"}));
|
||||
|
||||
toggle(() => {});
|
||||
}
|
||||
|
|
|
@ -35,7 +35,7 @@ function setting(key) {
|
|||
'battery': true,
|
||||
'batteryLvl': 30,
|
||||
'weather': true,
|
||||
/*LANG*/'steps': true,
|
||||
'steps': true,
|
||||
'heartrate': true
|
||||
};
|
||||
return (key in settings) ? settings[key] : DEFAULTS[key];
|
||||
|
@ -45,7 +45,7 @@ function setting(key) {
|
|||
let showBattery = setting('battery');
|
||||
let batteryWarnLevel = setting('batteryLvl');
|
||||
let showWeather = setting('weather');
|
||||
let showSteps = setting(/*LANG*/'steps');
|
||||
let showSteps = setting('steps');
|
||||
let showHeartRate = setting('heartrate');
|
||||
|
||||
|
||||
|
|
|
@ -710,7 +710,7 @@
|
|||
{
|
||||
Face:'1-12', colored:true,
|
||||
Hands:'rounded', withSeconds:true,
|
||||
Foreground:'Theme', Background:/*LANG*/'Theme', Seconds:'#FF0000'
|
||||
Foreground:'Theme', Background:'Theme', Seconds:'#FF0000'
|
||||
},
|
||||
require('Storage').readJSON('configurable_clock.json', true) || {}
|
||||
);
|
||||
|
@ -855,8 +855,8 @@
|
|||
activeLayout = null;
|
||||
|
||||
g.setTheme({
|
||||
fg:(Settings.Foreground === /*LANG*/'Theme' ? Theme.fg : Settings.Foreground || '#000000'),
|
||||
bg:(Settings.Background === /*LANG*/'Theme' ? Theme.bg : Settings.Background || '#FFFFFF')
|
||||
fg:(Settings.Foreground === 'Theme' ? Theme.fg : Settings.Foreground || '#000000'),
|
||||
bg:(Settings.Background === 'Theme' ? Theme.bg : Settings.Background || '#FFFFFF')
|
||||
});
|
||||
g.clear(true); // also installs the current theme
|
||||
|
||||
|
@ -872,8 +872,8 @@
|
|||
/**** renderClock ****/
|
||||
|
||||
function renderClock () {
|
||||
g.setColor (Settings.Foreground === /*LANG*/'Theme' ? Theme.fg : Settings.Foreground || '#000000');
|
||||
g.setBgColor(Settings.Background === /*LANG*/'Theme' ? Theme.bg : Settings.Background || '#FFFFFF');
|
||||
g.setColor (Settings.Foreground === 'Theme' ? Theme.fg : Settings.Foreground || '#000000');
|
||||
g.setBgColor(Settings.Background === 'Theme' ? Theme.bg : Settings.Background || '#FFFFFF');
|
||||
|
||||
switch (Settings.Face) {
|
||||
case 'none':
|
||||
|
@ -951,7 +951,7 @@
|
|||
let HoursAngle = (Hours+(Minutes/60))/12 * twoPi - Pi;
|
||||
let MinutesAngle = (Minutes/60) * twoPi - Pi;
|
||||
|
||||
g.setColor(Settings.Foreground === /*LANG*/'Theme' ? Theme.fg : Settings.Foreground || '#000000');
|
||||
g.setColor(Settings.Foreground === 'Theme' ? Theme.fg : Settings.Foreground || '#000000');
|
||||
|
||||
switch (Settings.Hands) {
|
||||
case 'simple':
|
||||
|
@ -968,10 +968,10 @@
|
|||
transformPolygon(roundedMinuteHandPolygon, CenterX,CenterY, MinutesAngle);
|
||||
g.fillPoly(transformedPolygon);
|
||||
|
||||
// g.setColor(Settings.Foreground === /*LANG*/'Theme' ? Theme.fg || '#000000');
|
||||
// g.setColor(Settings.Foreground === 'Theme' ? Theme.fg || '#000000');
|
||||
g.fillCircle(CenterX,CenterY, outerBoltRadius);
|
||||
|
||||
g.setColor(Settings.Background === /*LANG*/'Theme' ? Theme.bg : Settings.Background || '#FFFFFF');
|
||||
g.setColor(Settings.Background === 'Theme' ? Theme.bg : Settings.Background || '#FFFFFF');
|
||||
g.drawCircle(CenterX,CenterY, outerBoltRadius);
|
||||
g.fillCircle(CenterX,CenterY, innerBoltRadius);
|
||||
break;
|
||||
|
@ -986,7 +986,7 @@
|
|||
}
|
||||
|
||||
if (Settings.withSeconds) {
|
||||
g.setColor(Settings.Seconds === /*LANG*/'Theme' ? Theme.fgH : Settings.Seconds || '#FF0000');
|
||||
g.setColor(Settings.Seconds === 'Theme' ? Theme.fgH : Settings.Seconds || '#FF0000');
|
||||
|
||||
let Seconds = now.getSeconds();
|
||||
let SecondsAngle = (Seconds/60) * twoPi - Pi;
|
||||
|
@ -1089,9 +1089,9 @@
|
|||
let Seconds = (Changes.Seconds == null ? Settings.Seconds : Changes.Seconds);
|
||||
|
||||
activeLayout = ColorsScreen;
|
||||
activeLayout['Foreground'].bgCol = (Foreground === /*LANG*/'Theme' ? Theme.fg : Foreground);
|
||||
activeLayout['Background'].bgCol = (Background === /*LANG*/'Theme' ? Theme.bg : Background);
|
||||
activeLayout['Seconds'].bgCol = (Seconds === /*LANG*/'Theme' ? Theme.fgH : Seconds);
|
||||
activeLayout['Foreground'].bgCol = (Foreground === 'Theme' ? Theme.fg : Foreground);
|
||||
activeLayout['Background'].bgCol = (Background === 'Theme' ? Theme.bg : Background);
|
||||
activeLayout['Seconds'].bgCol = (Seconds === 'Theme' ? Theme.fgH : Seconds);
|
||||
activeLayout.render();
|
||||
}
|
||||
|
||||
|
@ -1123,12 +1123,12 @@
|
|||
activeLayout['#FF00FF'].selected = (chosenColor === '#FF00FF');
|
||||
activeLayout['#00FFFF'].selected = (chosenColor === '#00FFFF');
|
||||
activeLayout['#FFFFFF'].selected = (chosenColor === '#FFFFFF');
|
||||
activeLayout['Theme'].selected = (chosenColor === /*LANG*/'Theme');
|
||||
activeLayout['Theme'].selected = (chosenColor === 'Theme');
|
||||
activeLayout.render();
|
||||
}
|
||||
|
||||
function chooseColor (Control) { Bangle.buzz(); chosenColor = Control.id; refreshColorChoiceScreen(); }
|
||||
function chooseThemeColor () { Bangle.buzz(); chosenColor = /*LANG*/'Theme'; refreshColorChoiceScreen(); }
|
||||
function chooseThemeColor () { Bangle.buzz(); chosenColor = 'Theme'; refreshColorChoiceScreen(); }
|
||||
|
||||
function applyColor () {
|
||||
Changes[ColorToChange] = chosenColor;
|
||||
|
@ -1347,9 +1347,9 @@
|
|||
Drawable(drawColorChoice, { id:'#00FFFF', common:ColorChoice, col:'#00FFFF' }),
|
||||
], filly:1 },
|
||||
{ type:'h', c:[
|
||||
Label('use Theme:', { id:/*LANG*/'Theme', common:leftAligned, pad:4 }),
|
||||
Label('use Theme:', { id:'Theme', common:leftAligned, pad:4 }),
|
||||
{ width:10 },
|
||||
Drawable(drawColorChoice, { id:/*LANG*/'Theme', common:ColorChoice, col:Theme.fg }),
|
||||
Drawable(drawColorChoice, { id:'Theme', common:ColorChoice, col:Theme.fg }),
|
||||
], filly:1, onTouch:chooseThemeColor },
|
||||
{ height:4 },
|
||||
{ type:'h', c:[
|
||||
|
|
|
@ -225,7 +225,7 @@ function connection_setup() {
|
|||
return device.gatt.connect();
|
||||
}).then(function(ga) {
|
||||
gatt = ga;
|
||||
E.showMessage(/*LANG*/"Connected");
|
||||
E.showMessage("Connected");
|
||||
return gatt.getPrimaryService("1816");
|
||||
}).then(function(s) {
|
||||
service = s;
|
||||
|
|
|
@ -244,7 +244,7 @@ function run(){
|
|||
Bangle.setLCDMode();
|
||||
g.clear();
|
||||
g.flip();
|
||||
E.showMessage(/*LANG*/"Loading...");
|
||||
E.showMessage("Loading...");
|
||||
load(app.src);
|
||||
}
|
||||
|
||||
|
|
|
@ -46,7 +46,7 @@ function showMenu() {
|
|||
updateSettings();
|
||||
}
|
||||
},
|
||||
/*LANG*/'Year': {
|
||||
'Year': {
|
||||
value: settings.year,
|
||||
step: 1,
|
||||
onchange: v => {
|
||||
|
|
|
@ -59,7 +59,7 @@ function parseDevice(d) {
|
|||
g.clearRect(0, 60, 239, 239).setFontAlign(0, 0, 0).setColor(0, 1, 0).drawString("Found device", 120, 120).flip();
|
||||
device.gatt.connect().then(function(ga) {
|
||||
gatt = ga;
|
||||
g.clearRect(0, 60, 239, 239).setFontAlign(0, 0, 0).setColor(0, 1, 0).drawString(/*LANG*/"Connected", 120, 120).flip();
|
||||
g.clearRect(0, 60, 239, 239).setFontAlign(0, 0, 0).setColor(0, 1, 0).drawString("Connected", 120, 120).flip();
|
||||
return gatt.getPrimaryService("FFE0");
|
||||
}).then(function(s) {
|
||||
service = s;
|
||||
|
|
|
@ -2,7 +2,7 @@ const locale = require("locale");
|
|||
const storage = require('Storage');
|
||||
|
||||
const is12Hour = (storage.readJSON("setting.json", 1) || {})["12hour"];
|
||||
const color = (storage.readJSON("ffcniftyb.json", 1) || {})[/*LANG*/"color"] || 63488 /* red */;
|
||||
const color = (storage.readJSON("ffcniftyb.json", 1) || {})["color"] || 63488 /* red */;
|
||||
|
||||
|
||||
/* Clock *********************************************/
|
||||
|
|
|
@ -5,7 +5,7 @@ function satelliteImage() {
|
|||
var Layout = require("Layout");
|
||||
var layout;
|
||||
//Bangle.setGPSPower(1, "app");
|
||||
E.showMessage(/*LANG*/"Loading..."); // avoid showing rubbish on screen
|
||||
E.showMessage("Loading..."); // avoid showing rubbish on screen
|
||||
|
||||
var lastFix = {
|
||||
fix: -1,
|
||||
|
|
|
@ -251,7 +251,7 @@ function plotTrack(info) {
|
|||
g.drawString(require("locale").distance(dist),g.getWidth() / 2, g.getHeight() - 20);
|
||||
g.setFont("6x8",2);
|
||||
g.setFontAlign(0,0,3);
|
||||
g.drawString(/*LANG*/"Back",g.getWidth() - 10, g.getHeight()/2);
|
||||
g.drawString("Back",g.getWidth() - 10, g.getHeight()/2);
|
||||
setWatch(function() {
|
||||
viewTrack(info.fn, info);
|
||||
}, global.BTN3||BTN1);
|
||||
|
@ -335,7 +335,7 @@ function plotGraph(info, style) {
|
|||
});
|
||||
g.setFont("6x8",2);
|
||||
g.setFontAlign(0,0,3);
|
||||
g.drawString(/*LANG*/"Back",g.getWidth() - 10, g.getHeight() - 40);
|
||||
g.drawString("Back",g.getWidth() - 10, g.getHeight() - 40);
|
||||
setWatch(function() {
|
||||
viewTrack(info.fn, info);
|
||||
}, global.BTN3||BTN1);
|
||||
|
|
|
@ -40,7 +40,7 @@ var layout = new Layout( {
|
|||
{type:"txt", fillx:1, filly:1, font:"6x8:2", label:"---", id:"gpstime" }
|
||||
]},{lazy:true, btns: [
|
||||
{ label : "Set", cb : setGPSTime},
|
||||
{ label : /*LANG*/"Back", cb : ()=>load() }
|
||||
{ label : "Back", cb : ()=>load() }
|
||||
]});
|
||||
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@ function showNumberPicker(currentGuess, randomNum) {
|
|||
function showPrompt(msg, buzzCount, alarm) {
|
||||
E.showPrompt(msg,{
|
||||
title:"STAY AWAKE!",
|
||||
buttons : {/*LANG*/"Sleep":0,"Stop":1} // default is sleep so it'll come back in 10 mins
|
||||
buttons : {"Sleep":0,"Stop":1} // default is sleep so it'll come back in 10 mins
|
||||
}).then(function(choice) {
|
||||
buzzCount = 0;
|
||||
if (choice==0) {
|
||||
|
|
|
@ -5,7 +5,7 @@ const settings = storage.readJSON('setting.json',1) || { HID: false };
|
|||
var sendHid, next, prev, toggle, up, down, profile;
|
||||
|
||||
if (settings.HID=="kbmedia") {
|
||||
profile = /*LANG*/'Music';
|
||||
profile = 'Music';
|
||||
sendHid = function (code, cb) {
|
||||
try {
|
||||
NRF.sendHIDReport([1,code], () => {
|
||||
|
|
|
@ -7,7 +7,7 @@ var lasty = 0;
|
|||
var lastx = 0;
|
||||
|
||||
if (settings.HID=="kbmedia") {
|
||||
profile = /*LANG*/'Music';
|
||||
profile = 'Music';
|
||||
sendHid = function (code, cb) {
|
||||
try {
|
||||
NRF.sendHIDReport([1,code], () => {
|
||||
|
@ -36,8 +36,8 @@ if (settings.HID=="kbmedia") {
|
|||
|
||||
function drawApp() {
|
||||
g.clear();
|
||||
if(Bangle.isLocked()==false) E.showMessage('Swipe', /*LANG*/'Music');
|
||||
else E.showMessage('Locked', /*LANG*/'Music');
|
||||
if(Bangle.isLocked()==false) E.showMessage('Swipe', 'Music');
|
||||
else E.showMessage('Locked', 'Music');
|
||||
}
|
||||
|
||||
if (next) {
|
||||
|
|
|
@ -172,7 +172,7 @@ function setNumSets(){
|
|||
type:"v", c: [
|
||||
{type:"txt", font:"6x8:2", label:"Number Sets", id:"title" },
|
||||
{type:"txt", font:"30%", pad: 20, label: numSets, id:"value" },
|
||||
{type:"btn", font:"6x8:2", label:/*LANG*/"Back", cb: l => {
|
||||
{type:"btn", font:"6x8:2", label:"Back", cb: l => {
|
||||
setRestTime();
|
||||
}
|
||||
}
|
||||
|
@ -217,7 +217,7 @@ function setRestTime(){
|
|||
type:"v", c: [
|
||||
{type:"txt", font:"6x8:2", label:"Rest Time", id:"title" },
|
||||
{type:"txt", font:"30%", pad: 20, label: restTime, id:"value" },
|
||||
{type:"btn", font:"6x8:2", label:/*LANG*/"Back", cb: l => {
|
||||
{type:"btn", font:"6x8:2", label:"Back", cb: l => {
|
||||
setActiveTime();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -152,7 +152,7 @@ function showMenu()
|
|||
"Work seconds" : { value : settings.workseg,min:0,max:59,step:5,onchange : v => { settings.workseg=v; } },
|
||||
"Rest minutes" : { value : settings.restmin,min:0,max:59,step:1,onchange : v => { settings.restmin=v; } },
|
||||
"Rest seconds" : { value : settings.restseg,min:0,max:59,step:5,onchange : v => { settings.restseg=v; } },
|
||||
"Signal type" : { value : settings.buzz,format : v => v?"Buzz":/*LANG*/"Beep",onchange : v => { settings.buzz=v; }}
|
||||
"Signal type" : { value : settings.buzz,format : v => v?"Buzz":"Beep",onchange : v => { settings.buzz=v; }}
|
||||
};
|
||||
|
||||
E.showMenu(mainmenu);
|
||||
|
|
|
@ -132,7 +132,7 @@ E.on('notify',msg=>{
|
|||
// Apple media service
|
||||
E.on('AMS',a=>{
|
||||
function push(m) {
|
||||
var msg = { t : "modify", id : "music", title:/*LANG*/"Music" };
|
||||
var msg = { t : "modify", id : "music", title:"Music" };
|
||||
if (a.id=="artist") msg.artist = m;
|
||||
else if (a.id=="album") msg.album = m;
|
||||
else if (a.id=="title") msg.track = m;
|
||||
|
|
|
@ -2,12 +2,12 @@ const affirmative = [
|
|||
'It is\ncertain.',
|
||||
'It is\ndicededly\nso.',
|
||||
'Without\na doubt.',
|
||||
/*LANG*/'Yes\ndefinitely.',
|
||||
'Yes\ndefinitely.',
|
||||
'You may\nrely\non it.',
|
||||
'As I see,\nit yes.',
|
||||
'Most\nlikely.',
|
||||
'Outlook\ngood.',
|
||||
/*LANG*/'Yes.',
|
||||
'Yes.',
|
||||
'Signs point\nto yes.'
|
||||
];
|
||||
const nonCommittal = [
|
||||
|
|
|
@ -3,7 +3,7 @@ const locale = require('locale');
|
|||
const storage = require('Storage')
|
||||
let settings = {
|
||||
alarm: -1,
|
||||
dataRow1: /*LANG*/"Steps",
|
||||
dataRow1: "Steps",
|
||||
dataRow2: "Temp",
|
||||
dataRow3: "Battery"
|
||||
};
|
||||
|
@ -151,7 +151,7 @@ function _drawData(key, y, c){
|
|||
var value = "ERR";
|
||||
var should_print= true;
|
||||
|
||||
if(key == /*LANG*/"STEPS"){
|
||||
if(key == "STEPS"){
|
||||
text = "STEP";
|
||||
value = getSteps();
|
||||
|
||||
|
|
|
@ -107,8 +107,8 @@
|
|||
step: 1
|
||||
},
|
||||
unlockSide: {
|
||||
title: ["off", "left", "right", "top", "bottom", "front", /*LANG*/"back"],
|
||||
value: ["", "left", "right", "top", "bottom", "front", /*LANG*/"back"]
|
||||
title: ["off", "left", "right", "top", "bottom", "front", "back"],
|
||||
value: ["", "left", "right", "top", "bottom", "front", "back"]
|
||||
},
|
||||
tapOn: {
|
||||
title: ["on locked", "on unlocked", "always on"],
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
area: "tr",
|
||||
sortorder: 10,
|
||||
width: 23,
|
||||
dragStatus: /*LANG*/"off",
|
||||
dragStatus: "off",
|
||||
|
||||
// internal function //
|
||||
// write settings to storage
|
||||
|
@ -165,7 +165,7 @@
|
|||
// on touch release remove drag listener and reset drag status to indicate stopped drag action
|
||||
if (!event.b) {
|
||||
Bangle.removeListener("drag", w.dragListener);
|
||||
w.dragStatus = /*LANG*/"off";
|
||||
w.dragStatus = "off";
|
||||
}
|
||||
|
||||
// clear variables
|
||||
|
@ -181,7 +181,7 @@
|
|||
var w = WIDGETS.lightswitch;
|
||||
|
||||
// skip all if drag action ongoing
|
||||
if (w.dragStatus === /*LANG*/"off") {
|
||||
if (w.dragStatus === "off") {
|
||||
|
||||
// check if inside widget area
|
||||
if (!(!w || cursor.x < w.x || cursor.x > w.x + w.width ||
|
||||
|
@ -199,7 +199,7 @@
|
|||
// clear drag timeout
|
||||
if (typeof w.dragStatus === "number") clearTimeout(w.dragStatus);
|
||||
// reset drag status to indicate stopped drag action
|
||||
w.dragStatus = /*LANG*/"off";
|
||||
w.dragStatus = "off";
|
||||
}, w.dragDelay, w);
|
||||
}
|
||||
// switch backlight
|
||||
|
|
|
@ -20,6 +20,6 @@ const avg = [];
|
|||
setInterval(function() {
|
||||
drawTemperature();
|
||||
}, 2000);
|
||||
E.showMessage(/*LANG*/"Loading...");
|
||||
E.showMessage("Loading...");
|
||||
Bangle.loadWidgets();
|
||||
Bangle.drawWidgets();
|
||||
|
|
|
@ -73,7 +73,7 @@ let lastTemp = 0;
|
|||
|
||||
const phone = {
|
||||
get status() {
|
||||
return NRF.getSecurityStatus().connected ? /*LANG*/"Yes" : "No";
|
||||
return NRF.getSecurityStatus().connected ? "Yes" : "No";
|
||||
},
|
||||
message: null,
|
||||
messageTimeout: null,
|
||||
|
|
|
@ -14,7 +14,7 @@ E.showMenu = function(items) {
|
|||
|
||||
// show "< Back" item (or similar) as button instead (i.e. remove from the menu)
|
||||
var back,backLbl;
|
||||
for (var b of [/*LANG*/'Back', 'Exit', 'Cancel']) {
|
||||
for (var b of ['Back', 'Exit', 'Cancel']) {
|
||||
if (!items[b] && items['< '+b]) b = '< '+b;
|
||||
back = items[b];
|
||||
if (typeof back === "function") {
|
||||
|
|
|
@ -98,7 +98,7 @@ function getMessageImage(msg) {
|
|||
if (s=="whatsapp") return atob("GBiBAAB+AAP/wAf/4A//8B//+D///H9//n5//nw//vw///x///5///4///8e//+EP3/APn/wPn/+/j///H//+H//8H//4H//wMB+AA==");
|
||||
if (s=="wordfeud") return atob("GBgCWqqqqqqlf//////9v//////+v/////++v/////++v8///Lu+v8///L++v8///P/+v8v//P/+v9v//P/+v+fx/P/+v+Pk+P/+v/PN+f/+v/POuv/+v/Ofdv/+v/NvM//+v/I/Y//+v/k/k//+v/i/w//+v/7/6//+v//////+v//////+f//////9Wqqqqqql");
|
||||
if (msg.id=="music") return atob("FhaBAH//+/////////////h/+AH/4Af/gB/+H3/7/f/v9/+/3/7+f/vB/w8H+Dwf4PD/x/////////////3//+A=");
|
||||
if (msg.id==/*LANG*/"back") return getBackImage();
|
||||
if (msg.id=="back") return getBackImage();
|
||||
return getNotificationImage();
|
||||
}
|
||||
function getMessageImageCol(msg,def) {
|
||||
|
@ -375,7 +375,7 @@ function checkMessages(options) {
|
|||
if (msg && msg.new) g.setBgColor(colBg);
|
||||
else g.setBgColor((idx&1) ? colSBg1 : colSBg2);
|
||||
g.clearRect(r.x,r.y,r.x+r.w-1,r.y+r.h-1).setColor(g.theme.fg);
|
||||
if (idx==0) msg = {id:/*LANG*/"back", title:"< Back"};
|
||||
if (idx==0) msg = {id:"back", title:"< Back"};
|
||||
if (!msg) return;
|
||||
var x = r.x+2, title = msg.title, body = msg.body;
|
||||
var img = getMessageImage(msg);
|
||||
|
|
|
@ -29,7 +29,7 @@ function welcome() {
|
|||
setWatch(() => {
|
||||
clearInterval(i);
|
||||
clearWatch();
|
||||
E.showMessage(/*LANG*/'Loading...');
|
||||
E.showMessage('Loading...');
|
||||
res();
|
||||
}, BTN2, {repeat:false});
|
||||
});
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
"Date on touch": {
|
||||
value: 0|numeralsSettings.showDate,
|
||||
min:0,max:1,
|
||||
format: v=>v?"On":/*LANG*/"Off",
|
||||
format: v=>v?"On":"Off",
|
||||
onchange: v=> { numeralsSettings.showDate=v; updateSettings();}
|
||||
},
|
||||
"< back": back
|
||||
|
|
|
@ -12,7 +12,7 @@ const SETTINGS_FILE = "pebble.json";
|
|||
let settings;
|
||||
|
||||
function loadSettings() {
|
||||
settings = require("Storage").readJSON(SETTINGS_FILE,1)|| {'bg': '#0f0', /*LANG*/'color': 'Green'};
|
||||
settings = require("Storage").readJSON(SETTINGS_FILE,1)|| {'bg': '#0f0', 'color': 'Green'};
|
||||
}
|
||||
|
||||
var img = require("heatshrink").decompress(atob("oFAwkEogA/AH4A/AH4A/AH4A/AE8AAAoeXoAfeDQUBmcyD7A+Dh///8QD649CiAfaHwUvD4sEHy0DDYIfEICg+Cn4fHICY+DD4nxcgojOHwgfEIAYfRCIQaDD4ZAFD5r7DH4//kAfRCIZ/GAAnwD5p9DX44fTHgYSBf4ofVDAQEBl4fFUAgfOXoQzBgIfFBAIfPP4RAEAoYAB+cRiK/SG4h/WIBAfXIA7CBAAswD55AHn6fUIBMCD65AHl4gCmcziAfQQJqfQQJpiDgk0IDXxQLRAEECaBM+QgRYRYgUIA0CD4ggSQJiDCiAKBICszAAswD55AHABKBVD7BAFABIqBD5pAFABPxD55AOD6BADiIAJQAyxLABwf/gaAPAH4A/AH4ARA=="));
|
||||
|
|
|
@ -12,7 +12,7 @@ const SETTINGS_FILE = "pebbleDistance.json";
|
|||
let settings;
|
||||
|
||||
function loadSettings() {
|
||||
settings = require("Storage").readJSON(SETTINGS_FILE,1)|| {'bg': '#0f0', /*LANG*/'color': 'Green', 'avStep': 0.75};
|
||||
settings = require("Storage").readJSON(SETTINGS_FILE,1)|| {'bg': '#0f0', 'color': 'Green', 'avStep': 0.75};
|
||||
}
|
||||
|
||||
var img = require("heatshrink").decompress(atob("oFAwkEogA/AH4A/AH4A/AH4A/AE8AAAoeXoAfeDQUBmcyD7A+Dh///8QD649CiAfaHwUvD4sEHy0DDYIfEICg+Cn4fHICY+DD4nxcgojOHwgfEIAYfRCIQaDD4ZAFD5r7DH4//kAfRCIZ/GAAnwD5p9DX44fTHgYSBf4ofVDAQEBl4fFUAgfOXoQzBgIfFBAIfPP4RAEAoYAB+cRiK/SG4h/WIBAfXIA7CBAAswD55AHn6fUIBMCD65AHl4gCmcziAfQQJqfQQJpiDgk0IDXxQLRAEECaBM+QgRYRYgUIA0CD4ggSQJiDCiAKBICszAAswD55AHABKBVD7BAFABIqBD5pAFABPxD55AOD6BADiIAJQAyxLABwf/gaAPAH4A/AH4ARA=="));
|
||||
|
|
|
@ -106,7 +106,7 @@ let mainLayout = new Layout({
|
|||
type: 'txt',
|
||||
font: '15%',
|
||||
label: '00:00',
|
||||
id: /*LANG*/'Timer',
|
||||
id: 'Timer',
|
||||
halign: 1,
|
||||
pad: 3
|
||||
}
|
||||
|
|
|
@ -58,7 +58,7 @@ var showMainMenu = () => {
|
|||
showScrollerContainingAppsWithPatterns().then((selected) => {
|
||||
var pattern = selected.pattern;
|
||||
var appName = selected.appName;
|
||||
if (pattern === /*LANG*/"back") {
|
||||
if (pattern === "back") {
|
||||
showMainMenu();
|
||||
} else {
|
||||
E.showPrompt(appName + "\n\npattern:\n" + pattern, {
|
||||
|
@ -309,7 +309,7 @@ var showScrollerContainingAppsWithPatterns = () => {
|
|||
},
|
||||
select: (i) => {
|
||||
log("selected: " + i);
|
||||
var pattern = /*LANG*/"back";
|
||||
var pattern = "back";
|
||||
var appName = "";
|
||||
if (i > 0) {
|
||||
var storedPattern = storedPatternsArray[i - 1];
|
||||
|
|
|
@ -63,7 +63,7 @@ var startWith;
|
|||
|
||||
/* For development purposes
|
||||
require('Storage').writeJSON(SETTINGSFILE, {
|
||||
splashMode: /*LANG*/"off",
|
||||
splashMode: "off",
|
||||
startWith: "5x5",
|
||||
});
|
||||
/* */
|
||||
|
@ -622,9 +622,9 @@ function framedText(text, x, y, textcol, framecol) {
|
|||
}
|
||||
|
||||
// Show the splash screen at program start, call afterSplash afterwards.
|
||||
// If spash mode is /*LANG*/"off", call afterSplash directly.
|
||||
// If spash mode is "off", call afterSplash directly.
|
||||
function showSplash(afterSplash) {
|
||||
if (splashMode === /*LANG*/"off")
|
||||
if (splashMode === "off")
|
||||
afterSplash();
|
||||
else {
|
||||
g.reset();
|
||||
|
|
|
@ -33,7 +33,7 @@ function loadLocation() {
|
|||
}
|
||||
|
||||
function loadSettings() {
|
||||
settings = require("Storage").readJSON(SETTINGS_FILE,1)|| {'bg': '#0f0', /*LANG*/'color': 'Green'};
|
||||
settings = require("Storage").readJSON(SETTINGS_FILE,1)|| {'bg': '#0f0', 'color': 'Green'};
|
||||
}
|
||||
|
||||
function extractTime(d){
|
||||
|
|
|
@ -305,7 +305,7 @@ function viewTrack(filename, info) {
|
|||
g.drawString(require("locale").distance(dist),g.getWidth() / 2, g.getHeight() - 20);
|
||||
g.setFont("6x8",2);
|
||||
g.setFontAlign(0,0,3);
|
||||
g.drawString(/*LANG*/"Back",g.getWidth() - 10, g.getHeight() - 40);
|
||||
g.drawString("Back",g.getWidth() - 10, g.getHeight() - 40);
|
||||
setWatch(function() {
|
||||
viewTrack(info.fn, info);
|
||||
}, global.BTN3||BTN1);
|
||||
|
@ -404,7 +404,7 @@ function viewTrack(filename, info) {
|
|||
});
|
||||
g.setFont("6x8",2);
|
||||
g.setFontAlign(0,0,3);
|
||||
g.drawString(/*LANG*/"Back",g.getWidth() - 10, g.getHeight() - 40);
|
||||
g.drawString("Back",g.getWidth() - 10, g.getHeight() - 40);
|
||||
setWatch(function() {
|
||||
viewTrack(info.filename, info);
|
||||
}, global.BTN3||BTN1);
|
||||
|
|
|
@ -99,8 +99,8 @@
|
|||
steps:function() {
|
||||
var lastSteps = 0;
|
||||
return {
|
||||
name : /*LANG*/"Steps",
|
||||
fields : [/*LANG*/"Steps"],
|
||||
name : "Steps",
|
||||
fields : ["Steps"],
|
||||
getValues : () => {
|
||||
var c = Bangle.getStepCount(), r=[c-lastSteps];
|
||||
lastSteps = c;
|
||||
|
|
|
@ -50,7 +50,7 @@ let barMenu = {
|
|||
"": { "title" : "- Barometer -" },
|
||||
"State": {
|
||||
value: settings.isBarEnabled,
|
||||
format: v => v ? "On" : /*LANG*/"Off",
|
||||
format: v => v ? "On" : "Off",
|
||||
onchange: v => { updateSetting('isBarEnabled', v); }
|
||||
},
|
||||
"Altitude": { value: null },
|
||||
|
@ -62,7 +62,7 @@ let gpsMenu = {
|
|||
"": { "title" : "- GPS -" },
|
||||
"State": {
|
||||
value: settings.isGpsEnabled,
|
||||
format: v => v ? "On" : /*LANG*/"Off",
|
||||
format: v => v ? "On" : "Off",
|
||||
onchange: v => { updateSetting('isGpsEnabled', v); }
|
||||
},
|
||||
"Lat": { value: null },
|
||||
|
@ -76,7 +76,7 @@ let hrmMenu = {
|
|||
"": { "title" : "- Heart Rate -" },
|
||||
"State": {
|
||||
value: settings.isHrmEnabled,
|
||||
format: v => v ? "On" : /*LANG*/"Off",
|
||||
format: v => v ? "On" : "Off",
|
||||
onchange: v => { updateSetting('isHrmEnabled', v); }
|
||||
},
|
||||
"BPM": { value: null },
|
||||
|
@ -87,7 +87,7 @@ let magMenu = {
|
|||
"": { "title" : "- Magnetometer -" },
|
||||
"State": {
|
||||
value: settings.isMagEnabled,
|
||||
format: v => v ? "On" : /*LANG*/"Off",
|
||||
format: v => v ? "On" : "Off",
|
||||
onchange: v => { updateSetting('isMagEnabled', v); }
|
||||
},
|
||||
"x": { value: null },
|
||||
|
|
|
@ -704,7 +704,7 @@ function showAppSettings(app) {
|
|||
return showError(/*LANG*/'Invalid settings');
|
||||
}
|
||||
try {
|
||||
// pass showAppSettingsMenu as /*LANG*/"back" argument
|
||||
// pass showAppSettingsMenu as "back" argument
|
||||
appSettings(()=>showAppSettingsMenu());
|
||||
} catch (e) {
|
||||
console.log(`${app.name} settings error:`, e)
|
||||
|
|
|
@ -116,7 +116,7 @@ function drawLabels() {
|
|||
g.setFont("6x8", 1);
|
||||
g.drawString("Reset (re)start", 230, 120);
|
||||
if (state != "started") // only when not runnung
|
||||
g.drawString(/*LANG*/"Back", 230, 120);
|
||||
g.drawString("Back", 230, 120);
|
||||
}
|
||||
|
||||
function resetTimer(value) {
|
||||
|
|
|
@ -68,7 +68,7 @@ function drawApp() {
|
|||
if (alarmHour < 10) alarmHour = "0" + alarmHour;
|
||||
if (alarmMinute < 10) alarmMinute = "0" + alarmMinute;
|
||||
const s = "Alarm at " + alarmHour + ":" + alarmMinute + "\n\n"; //# make distinct to time
|
||||
E.showMessage(s, /*LANG*/"Sleep Phase Alarm");
|
||||
E.showMessage(s, "Sleep Phase Alarm");
|
||||
|
||||
function drawTime() {
|
||||
if (Bangle.isLCDOn()) {
|
||||
|
@ -125,7 +125,7 @@ if (nextAlarm !== undefined) {
|
|||
|
||||
if (swest !== undefined) {
|
||||
if (Bangle.isLCDOn()) {
|
||||
drawString(swest ? /*LANG*/"Sleep" : "Awake", BANGLEJS2 ? 150 : 180); //# remove x, adjust height
|
||||
drawString(swest ? "Sleep" : "Awake", BANGLEJS2 ? 150 : 180); //# remove x, adjust height
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -35,7 +35,7 @@ function findDevices() {
|
|||
m[dev.id.substr(0,17)] = () => startConnectChoose(dev);
|
||||
});
|
||||
m["Search again"] = () => findDevices();
|
||||
m[/*LANG*/"Back"] = () => load();
|
||||
m["Back"] = () => load();
|
||||
E.showMenu(m);
|
||||
}
|
||||
}, {timeout : 2000, filters : [{ name : "Espruino SMARTIBOT" }] });
|
||||
|
@ -46,7 +46,7 @@ function startConnectChoose(device) {
|
|||
"": {title:"Control Method"},
|
||||
"Accelerometer" : () => startConnectAccel(device),
|
||||
"Button" : () => startConnectBtn(device),
|
||||
/*LANG*/"Back": () => load(),
|
||||
"Back": () => load(),
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -57,7 +57,7 @@ function startConnectBtn(device) {
|
|||
function(gatt, write) {
|
||||
function setMotors(val) { write(`\x10w(${val})\n`); }
|
||||
drawBGBtn();
|
||||
g.reset().setFont("6x8",2).setFontAlign(0,0,1).drawString(/*LANG*/"BACK", 230,200);
|
||||
g.reset().setFont("6x8",2).setFontAlign(0,0,1).drawString("BACK", 230,200);
|
||||
var state = 0;
|
||||
var watches = [
|
||||
setWatch(e=>setMotors(state = (state&0b0011) | (e.state<<2)), BTN4, {repeat:true, edge:0}),
|
||||
|
@ -81,7 +81,7 @@ function startConnectAccel(device) {
|
|||
"\x03\x10function w(x,y,z,v){var a=analogWrite;a(D4,x);a(D6,y);a(D10,z);a(D11,v);}\n",
|
||||
function(gatt, write) {
|
||||
drawBGAccel();
|
||||
g.reset().setFont("6x8",2).setFontAlign(0,0,1).drawString(/*LANG*/"BACK", 230,200);
|
||||
g.reset().setFont("6x8",2).setFontAlign(0,0,1).drawString("BACK", 230,200);
|
||||
Bangle.on("accel", function(a) {
|
||||
var v = [0,0,0,0];
|
||||
if (a.z<-0.5) {
|
||||
|
|
|
@ -35,7 +35,7 @@ function loadPage(page) {
|
|||
g.setFont("Vector", 15);
|
||||
g.drawString(page.name, g.getWidth() / 2, 200);
|
||||
g.setFont("Vector", 40);
|
||||
g.drawString(page.state ? "On" : /*LANG*/"Off", g.getWidth() / 2, g.getHeight() / 2);
|
||||
g.drawString(page.state ? "On" : "Off", g.getWidth() / 2, g.getHeight() / 2);
|
||||
g.drawImage(storage.read(`${icon}.img`), g.getWidth() / 2 - 24, g.getHeight() / 2 - 24 - 50);
|
||||
}
|
||||
|
||||
|
|
|
@ -268,7 +268,7 @@ const settingsMenu = {
|
|||
"": { title: "Settings" },
|
||||
"Active Mode": {
|
||||
value: settings.activeMode,
|
||||
format: (v) => (v ? "On" : /*LANG*/"Off"),
|
||||
format: (v) => (v ? "On" : "Off"),
|
||||
onchange: (v) => (settings.activeMode = v),
|
||||
},
|
||||
"Twist Thresh": {
|
||||
|
|
|
@ -376,7 +376,7 @@
|
|||
] },
|
||||
{ height:4 },
|
||||
{ type:'h', c:[
|
||||
Button(/*LANG*/'Back', { common:halfWidthButton, onTouch:() => gotoScreen('DetailSelectionScreen') }),
|
||||
Button('Back', { common:halfWidthButton, onTouch:() => gotoScreen('DetailSelectionScreen') }),
|
||||
Button('Preview', { common:halfWidthButton, onTouch:() => gotoScreen('ThemePreviewScreen') })
|
||||
], filly:1 },
|
||||
]
|
||||
|
@ -399,7 +399,7 @@
|
|||
] },
|
||||
{ height:4 },
|
||||
{ type:'h', c:[
|
||||
Button(/*LANG*/'Back', { common:legible, pad:4, onTouch:() => gotoScreen('ColorSelectionScreen') })
|
||||
Button('Back', { common:legible, pad:4, onTouch:() => gotoScreen('ColorSelectionScreen') })
|
||||
], filly:1 }
|
||||
]
|
||||
});
|
||||
|
|
|
@ -23,6 +23,6 @@ setInterval(function() {
|
|||
drawTemperature();
|
||||
}, 20000);
|
||||
drawTemperature();
|
||||
E.showMessage(/*LANG*/"Loading...");
|
||||
E.showMessage("Loading...");
|
||||
Bangle.loadWidgets();
|
||||
Bangle.drawWidgets();
|
|
@ -9,8 +9,8 @@ function showAlarm(alarm) {
|
|||
Bangle.loadWidgets();
|
||||
Bangle.drawWidgets();
|
||||
Bangle.setLocked(false);
|
||||
E.showPrompt(/*LANG*/"Alarm!",{
|
||||
title:/*LANG*/"ALARM!",
|
||||
E.showPrompt("Alarm!",{
|
||||
title:"ALARM!",
|
||||
buttons : {/*LANG*/"Ok":true}
|
||||
}).then(function(ok) {
|
||||
buzzCount = 0;
|
||||
|
|
|
@ -2,7 +2,7 @@ const SETTINGS_FILE = "torch.json";
|
|||
let settings;
|
||||
|
||||
function loadSettings() {
|
||||
settings = require("Storage").readJSON(SETTINGS_FILE,1)|| {'bg': '#FFFFFF', /*LANG*/'color': 'White'};
|
||||
settings = require("Storage").readJSON(SETTINGS_FILE,1)|| {'bg': '#FFFFFF', 'color': 'White'};
|
||||
}
|
||||
|
||||
loadSettings();
|
||||
|
|
|
@ -255,7 +255,7 @@ function run(){
|
|||
if (process.env.HWVERSION == 1) Bangle.setLCDMode();
|
||||
g.clear();
|
||||
g.flip();
|
||||
E.showMessage(/*LANG*/"Loading...");
|
||||
E.showMessage("Loading...");
|
||||
load(app.src);
|
||||
}
|
||||
|
||||
|
|
|
@ -216,7 +216,7 @@ function loadFile(fn) {
|
|||
Bangle.setLCDMode("direct");
|
||||
g.clear();
|
||||
E.showMenu();
|
||||
E.showMessage(/*LANG*/"Loading...", fn);
|
||||
E.showMessage("Loading...", fn);
|
||||
readSTL(fn);
|
||||
zDist = 5*largestExtent(points);
|
||||
g.clear();
|
||||
|
|
|
@ -203,7 +203,7 @@ function drawInfo() {
|
|||
break;
|
||||
case FN_MODE_GPS:
|
||||
col = 0x07FF; // cyan
|
||||
str = "GPS: " + (gpsPowerState ? "ON" : /*LANG*/"OFF");
|
||||
str = "GPS: " + (gpsPowerState ? "ON" : "OFF");
|
||||
drawModeLine(str,col);
|
||||
return;
|
||||
case FN_MODE_GDISP:
|
||||
|
@ -560,7 +560,7 @@ Bangle.on('lcdPower',function(on) {
|
|||
prevInfoStr = "on"; // forces are redraw
|
||||
drawAll();
|
||||
} else {
|
||||
prevInfoStr = /*LANG*/"off"; // forces are redraw
|
||||
prevInfoStr = "off"; // forces are redraw
|
||||
drawInfo();
|
||||
}
|
||||
});
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
function loadSettings() {
|
||||
settings = require('Storage').readJSON(SETTINGS_FILE, 1) || {};
|
||||
const DEFAULTS = {
|
||||
/*LANG*/'color': 'By Level',
|
||||
'color': 'By Level',
|
||||
'percentage': true,
|
||||
'charger': true,
|
||||
'hideifmorethan': 100,
|
||||
|
@ -46,7 +46,7 @@
|
|||
const levelColor = (l) => {
|
||||
// "charging" is very bright -> percentage is hard to read, "high" is ok(ish)
|
||||
const green = setting('percentage') ? COLORS.high : COLORS.charging;
|
||||
switch (setting(/*LANG*/'color')) {
|
||||
switch (setting('color')) {
|
||||
case 'Monochrome': return COLORS.white; // no chance of reading the percentage here :-(
|
||||
case 'Green': return green;
|
||||
case 'By Level': // fall through
|
||||
|
@ -64,7 +64,7 @@
|
|||
}
|
||||
};
|
||||
const chargerColor = () => {
|
||||
return (setting(/*LANG*/'color') === 'Monochrome') ? COLORS.white : COLORS.charging;
|
||||
return (setting('color') === 'Monochrome') ? COLORS.white : COLORS.charging;
|
||||
};
|
||||
|
||||
// sets width, returns true if it changed
|
||||
|
@ -112,7 +112,7 @@
|
|||
return;
|
||||
}
|
||||
let gfx = g;
|
||||
if (setting(/*LANG*/'color') === 'Monochrome') {
|
||||
if (setting('color') === 'Monochrome') {
|
||||
// draw text inverted on battery level
|
||||
gfx = Graphics.createCallback(g.getWidth(),g.getHeight(), 1,
|
||||
(x,y) => {g.setPixel(x,y,x<=xl?0:-1);});
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
function loadSettings() {
|
||||
const d = require('Storage').readJSON("wpedom.json", 1) || {};
|
||||
settings = Object.assign({
|
||||
/*LANG*/'goal': 10000,
|
||||
'goal': 10000,
|
||||
'progress': false,
|
||||
'large': false,
|
||||
'hide': false
|
||||
|
|
|
@ -5,14 +5,14 @@ outputs a list of strings that have been found.
|
|||
See https://github.com/espruino/BangleApps/issues/1311
|
||||
*/
|
||||
|
||||
let AUTO_TRANSLATE = false;
|
||||
let translate = false;
|
||||
if (process.env.DEEPL) {
|
||||
// Requires translate
|
||||
// npm i translate
|
||||
translate = require("translate");
|
||||
translate.engine = "deepl"; // Or "yandex", "libre", "deepl"
|
||||
translate.key = process.env.DEEPL;
|
||||
translate.url = "https://api-free.deepl.com/v2/translate";
|
||||
AUTO_TRANSLATE = true;
|
||||
translate.key = process.env.DEEPL; // Requires API key (which are free)
|
||||
translate.url = process.env.TURL;
|
||||
}
|
||||
|
||||
var IGNORE_STRINGS = [
|
||||
|
@ -25,10 +25,8 @@ var IGNORE_STRINGS = [
|
|||
"play","stop","pause", "volumeup", "volumedown", // music state
|
||||
"${hours}:${minutes}:${seconds}", "${hours}:${minutes}",
|
||||
"BANGLEJS",
|
||||
"NONE",
|
||||
"fgH", "bgH",
|
||||
"m/s",
|
||||
"undefined", "kbmedia"
|
||||
"fgH", "bgH", "m/s",
|
||||
"undefined", "kbmedia", "NONE",
|
||||
];
|
||||
|
||||
var IGNORE_FUNCTION_PARAMS = [
|
||||
|
@ -190,8 +188,11 @@ log("");
|
|||
log("Maybe we should add /*LANG*/ to these automatically?");
|
||||
log("");
|
||||
const wordsToAdd = untranslatedStrings.filter(e => translatedStrings.find(t=>t.str==e.str));
|
||||
|
||||
// Uncomment to add LANG to all strings
|
||||
// THIS IS EXPERIMENTAL
|
||||
//wordsToAdd.forEach(e => e.files.forEach(a => applyLANG(e.str, a)));
|
||||
|
||||
log(wordsToAdd.map(e=>`${JSON.stringify(e.str)} (${e.uses} uses)`).join("\n"));
|
||||
log("");
|
||||
|
||||
|
@ -226,7 +227,7 @@ for (let language of languages) {
|
|||
let appName = m[0].replaceAll("/", "");
|
||||
if (translations[appName] && translations[appName][translationItem.str]) {
|
||||
console.log(` but LOCAL translation found in \"${appName}\"`);
|
||||
} else if (AUTO_TRANSLATE && language.code !== "tr_TR") { // Auto Translate
|
||||
} else if (translate && language.code !== "tr_TR") { // Auto Translate
|
||||
translationPromises.push(new Promise(async (resolve) => {
|
||||
const translation = await translate(translationItem.str, language.code.split("_")[0]);
|
||||
console.log("Translating:", translationItem.str, translation);
|
||||
|
|
|
@ -0,0 +1,163 @@
|
|||
{
|
||||
"//": "Bulgarian language translations",
|
||||
"GLOBAL": {
|
||||
"//": "Translations that apply for all apps",
|
||||
"Connected": "Свързан",
|
||||
"circle 1": "кръг 1",
|
||||
"week": "седмица",
|
||||
"weather circle": "метеорологичен кръг",
|
||||
"Timer": "Таймер",
|
||||
"circle count": "брой кръгове",
|
||||
"Keep Msgs": "Дръжте Msgs",
|
||||
"Auto snooze": "Автоматична дрямка",
|
||||
"Foreground": "На преден план",
|
||||
"battery warn": "предупреждение за батерията",
|
||||
"color": "цвят",
|
||||
"Vibration": "Вибрации",
|
||||
"New Timer": "Нов таймер",
|
||||
"App Source\nNot found": "Източник на приложения\nНе е намерен",
|
||||
"circle 2": "кръг 2",
|
||||
"Circle": "Кръг",
|
||||
"Record Run": "Записване на рекорд",
|
||||
"BTNs 1:startlap 2:exit 3:reset": "BTNs 1:startlap 2:exit 3:reset",
|
||||
"steps": "стъпки",
|
||||
"Beep": "Бип",
|
||||
"Unread timer": "Непрочетен таймер",
|
||||
"Delete all messages": "Изтриване на всички съобщения",
|
||||
"Music": "Музика",
|
||||
"minimum": "минимум",
|
||||
"BLE": "BLE",
|
||||
"goal": "цел",
|
||||
"Save": "Запазете",
|
||||
"maximum": "максимален",
|
||||
"(repeat)": "(повторение)",
|
||||
"circle 3": "кръг 3",
|
||||
"Steps": "Стъпки",
|
||||
"Bluetooth": "Bluetooth",
|
||||
"Alarm": "Аларма",
|
||||
"colorize icon": "оцветяване на икона",
|
||||
"circle 4": "кръг 4",
|
||||
"Loading": "Зареждане на",
|
||||
"step length": "дължина на стъпката",
|
||||
"HID": "HID",
|
||||
"Heartrate": "Сърдечен ритъм",
|
||||
"Dark BW": "Тъмно BW",
|
||||
"Customize": "Персонализиране на",
|
||||
"valid period": "валиден период",
|
||||
"Sleep": "Сън",
|
||||
"distance goal": "цел за разстояние",
|
||||
"LCD": "LCD",
|
||||
"data": "данни",
|
||||
"Vector font size": "Размер на векторния шрифт",
|
||||
"Mark Unread": "Маркирайте непрочетеното",
|
||||
"heartrate": "сърдечен ритъм",
|
||||
"Show clocks": "Показване на часовници",
|
||||
"New Alarm": "Нова аларма",
|
||||
"Are you sure": "Сигурни ли сте, че",
|
||||
"Highlight BG": "Подчертаване на BG",
|
||||
"Remove": "Премахване на",
|
||||
"No Messages": "Няма съобщения",
|
||||
"Delete All Messages": "Изтриване на всички съобщения",
|
||||
"Foreground 2": "Преден план 2",
|
||||
"Launcher Settings": "Настройки на стартера",
|
||||
"Compact Storage": "Компактно съхранение",
|
||||
"min. confidence": "мин. доверие",
|
||||
"Connect device\nto add to\nwhitelist": "Свързване на устройството\nда добавите към\nбял списък",
|
||||
"LCD Brightness": "Яркост на LCD дисплея",
|
||||
"Highlight FG": "Изтъкване на FG",
|
||||
"Twist Threshold": "Праг на усукване",
|
||||
"Add Device": "Добавяне на устройство",
|
||||
"LCD Timeout": "Време за изключване на LCD",
|
||||
"Twist Timeout": "Време за завъртане",
|
||||
"Log": "Log",
|
||||
"Time Zone": "Часова зона",
|
||||
"Clock Style": "Стил на часовника",
|
||||
"Debug Info": "Информация за отстраняването на грешки",
|
||||
"Wake on Touch": "Събуждане при докосване",
|
||||
"View Message": "Преглед на съобщението",
|
||||
"Quiet Mode": "Тих режим",
|
||||
"Background 2": "Контекст 2",
|
||||
"Light BW": "Светлина BW",
|
||||
"show widgets": "показване на уиджети",
|
||||
"Font": "Шрифт",
|
||||
"Piezo": "Piezo",
|
||||
"Make Connectable": "Свържете се",
|
||||
"Apps": "Приложения",
|
||||
"Background": "Фон",
|
||||
"Twist Max Y": "Twist Max Y",
|
||||
"Utils": "Услуги",
|
||||
"Programmable": "Програмируем",
|
||||
"Wake on BTN2": "Събуждане на BTN2",
|
||||
"Utilities": "Комунални услуги",
|
||||
"TAP right top/bottom": "TAP дясно отгоре/отдолу",
|
||||
"Wake on BTN1": "Събуждане на BTN1",
|
||||
"Passkey BETA": "Passkey BETA",
|
||||
"Wake on BTN3": "Събуждане на BTN3",
|
||||
"Wake on Twist": "Събуждане на Twist",
|
||||
"Wake on FaceUp": "Събуждане в FaceUp",
|
||||
"No Clocks Found": "Не са намерени часовници",
|
||||
"Reset to Defaults": "Възстановяване на настройките по подразбиране",
|
||||
"Compacting...\nTakes approx\n1 minute": "Уплътняване...\nОтнема приблизително\n1 минута",
|
||||
"Rewrite Settings": "Настройки за пренаписване",
|
||||
"Stay Connectable": "Останете свързани",
|
||||
"Turn Off": "Изключване",
|
||||
"This will remove everything": "Това ще премахне всичко",
|
||||
"Flatten Battery": "Сплескайте батерията",
|
||||
"Reset Settings": "Нулиране на настройките",
|
||||
"Connectable": "Свързване на",
|
||||
"Storage": "Съхранение",
|
||||
"start&lap/reset, BTN1: EXIT": "стартиране и застъпване/ нулиране, BTN1: EXIT",
|
||||
"Month": "Месец",
|
||||
"App Settings": "Настройки на приложението",
|
||||
"Side": "Страна",
|
||||
"Invalid settings": "Невалидни настройки",
|
||||
"Date": "Дата",
|
||||
"No app has settings": "Няма приложение с настройки",
|
||||
"on": "на",
|
||||
"Left": "Вляво",
|
||||
"Minute": "Минута",
|
||||
"Year": "Година",
|
||||
"Second": "Втори",
|
||||
"Hour": "Час",
|
||||
"Reset all widgets": "Нулиране на всички уиджети",
|
||||
"Widgets": "Уиджети",
|
||||
"Flattening battery - this can take hours.\nLong-press button to cancel": "Сплескване на батерията - това може да отнеме часове.\nДълго натиснете бутона, за да отмените",
|
||||
"TIMER": "ТАЙМЕР",
|
||||
"Right": "Вдясно",
|
||||
"Reset": "Нулиране на",
|
||||
"Reset All": "Нулиране на всички",
|
||||
"Sort Order": "Ред на сортиране",
|
||||
"ALARM": "АЛАРМА",
|
||||
"Minutes": "Протоколи",
|
||||
"Hours": "Часове",
|
||||
"Vibrate": "Вибрация",
|
||||
"off": "от",
|
||||
"Delete": "Изтриване на",
|
||||
"Repeat": "Повторете",
|
||||
"Message": "Съобщение",
|
||||
"Enabled": "Разрешено",
|
||||
"Settings": "Настройки",
|
||||
"System": "Система",
|
||||
"Alerts": "Сигнали",
|
||||
"Theme": "Тема",
|
||||
"Hide": "Скрий",
|
||||
"Show": "Покажи",
|
||||
"Messages": "Съобщения",
|
||||
"Set Time": "Време за настройка",
|
||||
"Whitelist": "Бял списък",
|
||||
"On": "На",
|
||||
"Select Clock": "Избор на часовник",
|
||||
"Locale": "Местоположение",
|
||||
"No": "Не",
|
||||
"Error in settings": "Грешка в настройките",
|
||||
"Factory Reset": "Фабрично нулиране",
|
||||
"Disable": "Деактивиране на",
|
||||
"Off": "Изключено",
|
||||
"Yes": "Да",
|
||||
"Ok": "Добре",
|
||||
"Back": "Обратно"
|
||||
},
|
||||
"alarm": {
|
||||
"//": "App-specific overrides"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,163 @@
|
|||
{
|
||||
"//": "Danish language translations",
|
||||
"GLOBAL": {
|
||||
"//": "Translations that apply for all apps",
|
||||
"New Alarm": "Ny alarm",
|
||||
"Alarm": "Alarm",
|
||||
"New Timer": "Ny timer",
|
||||
"Save": "Gem",
|
||||
"(repeat)": "(gentagelse)",
|
||||
"circle 1": "kreds 1",
|
||||
"circle 3": "kreds 3",
|
||||
"circle 2": "kreds 2",
|
||||
"Auto snooze": "Automatisk slumretid",
|
||||
"circle 4": "cirkel 4",
|
||||
"show widgets": "vise widgets",
|
||||
"Connected": "Tilsluttet",
|
||||
"Keep Msgs": "Behold msgs",
|
||||
"min. confidence": "min. tillid",
|
||||
"heartrate": "hjertefrekvens",
|
||||
"steps": "trin",
|
||||
"week": "uge",
|
||||
"Sleep": "Søvn",
|
||||
"circle count": "antal cirkler",
|
||||
"goal": "mål",
|
||||
"Timer": "Timer",
|
||||
"Steps": "Trin",
|
||||
"valid period": "gyldighedsperiode",
|
||||
"step length": "trinlængde",
|
||||
"minimum": "minimum",
|
||||
"weather circle": "vejrkreds",
|
||||
"maximum": "maksimum",
|
||||
"data": "data",
|
||||
"Circle": "Cirkel",
|
||||
"Heartrate": "Hjertefrekvens",
|
||||
"battery warn": "batteri advarer",
|
||||
"App Source\nNot found": "App-kilde\nIkke fundet",
|
||||
"colorize icon": "farvelægge ikonet",
|
||||
"distance goal": "mål for afstand",
|
||||
"TAP right top/bottom": "TAP højre top/bund",
|
||||
"color": "farve",
|
||||
"View Message": "Vis besked",
|
||||
"Show clocks": "Vis ure",
|
||||
"Mark Unread": "Markér ulæst",
|
||||
"Unread timer": "Ulæst timer",
|
||||
"Loading": "Indlæsning",
|
||||
"Launcher Settings": "Indstillinger for startopsætningen",
|
||||
"Bluetooth": "Bluetooth",
|
||||
"Music": "Musik",
|
||||
"Font": "Skrifttype",
|
||||
"Vector font size": "Vektor skriftstørrelse",
|
||||
"BTNs 1:startlap 2:exit 3:reset": "BTN'er 1:startlap 2:exit 3:reset",
|
||||
"No Messages": "Ingen meddelelser",
|
||||
"Are you sure": "Er du sikker på",
|
||||
"Delete All Messages": "Slet alle meddelelser",
|
||||
"Record Run": "Rekordløb",
|
||||
"Delete all messages": "Slet alle meddelelser",
|
||||
"start&lap/reset, BTN1: EXIT": "start&lap/reset, BTN1: EXIT",
|
||||
"Vibration": "Vibrationer",
|
||||
"HID": "HID",
|
||||
"Make Connectable": "Gør det muligt at forbinde",
|
||||
"LCD": "LCD",
|
||||
"BLE": "BLE",
|
||||
"Utils": "Utils",
|
||||
"Piezo": "Piezo",
|
||||
"Apps": "Apps",
|
||||
"Background": "Baggrund",
|
||||
"Customize": "Tilpas",
|
||||
"Beep": "Bip",
|
||||
"Quiet Mode": "Stille tilstand",
|
||||
"Dark BW": "Mørk BW",
|
||||
"Programmable": "Programmerbar",
|
||||
"Passkey BETA": "Passkey BETA",
|
||||
"Light BW": "Light BW",
|
||||
"Highlight FG": "fremhæve FG",
|
||||
"Background 2": "Baggrund 2",
|
||||
"Foreground": "Forgrund",
|
||||
"Highlight BG": "fremhæve BG",
|
||||
"Foreground 2": "Forgrund 2",
|
||||
"LCD Timeout": "LCD Timeout",
|
||||
"Remove": "Fjern",
|
||||
"Wake on BTN2": "Wake på BTN2",
|
||||
"LCD Brightness": "LCD lysstyrke",
|
||||
"Add Device": "Tilføj enhed",
|
||||
"Wake on BTN1": "Vågn op på BTN1",
|
||||
"Connect device\nto add to\nwhitelist": "Tilslut enhed\ntil at tilføje til\nwhitelist",
|
||||
"Wake on BTN3": "Wake på BTN3",
|
||||
"Wake on FaceUp": "Vågn op på FaceUp",
|
||||
"Log": "Log",
|
||||
"Debug Info": "Info om fejlfinding",
|
||||
"Wake on Twist": "Vågn op på Twist",
|
||||
"Wake on Touch": "Vågn op ved berøring",
|
||||
"Clock Style": "Ur stil",
|
||||
"Time Zone": "Tidszone",
|
||||
"Twist Max Y": "Drej Max Y",
|
||||
"Twist Threshold": "Twist tærskel",
|
||||
"Compact Storage": "Kompakt opbevaring",
|
||||
"Twist Timeout": "Twist Timeout",
|
||||
"Storage": "Opbevaring",
|
||||
"Utilities": "Hjælpeprogrammer",
|
||||
"Rewrite Settings": "Omskrivning af indstillinger",
|
||||
"No Clocks Found": "Ingen ure fundet",
|
||||
"Reset to Defaults": "Nulstil til standardindstillingerne",
|
||||
"Compacting...\nTakes approx\n1 minute": "Komprimering...\nTager ca.\n1 minut",
|
||||
"Connectable": "Tilslutbar",
|
||||
"Reset Settings": "Nulstil indstillinger",
|
||||
"Stay Connectable": "Forbliv forbundet",
|
||||
"Flatten Battery": "Flade batterier",
|
||||
"Minute": "Minut",
|
||||
"This will remove everything": "Dette vil fjerne alt",
|
||||
"Turn Off": "Sluk for",
|
||||
"Hour": "Timer",
|
||||
"Month": "Måned",
|
||||
"Second": "Anden",
|
||||
"Flattening battery - this can take hours.\nLong-press button to cancel": "Udfladning af batteriet - dette kan tage flere timer.\nTryk længe på knappen for at annullere",
|
||||
"Year": "År",
|
||||
"Widgets": "Widgets",
|
||||
"Date": "Dato",
|
||||
"Side": "Side",
|
||||
"Left": "Venstre",
|
||||
"App Settings": "App-indstillinger",
|
||||
"No app has settings": "Ingen app har indstillinger",
|
||||
"Invalid settings": "Ugyldige indstillinger",
|
||||
"Reset All": "Nulstil alt",
|
||||
"on": "på",
|
||||
"TIMER": "TIMER",
|
||||
"Right": "Højre",
|
||||
"Sort Order": "Sorteringsrækkefølge",
|
||||
"Reset": "Nulstil",
|
||||
"Reset all widgets": "Nulstil alle widgets",
|
||||
"ALARM": "ALARM",
|
||||
"Settings": "Indstillinger",
|
||||
"Alerts": "Advarsler",
|
||||
"System": "System",
|
||||
"Theme": "Tema",
|
||||
"Locale": "Lokale",
|
||||
"Vibrate": "Vibrere",
|
||||
"Enabled": "Aktiveret",
|
||||
"Hours": "Timer",
|
||||
"Delete": "Slet",
|
||||
"Minutes": "Protokol",
|
||||
"Message": "Besked",
|
||||
"Repeat": "Gentag",
|
||||
"off": "off",
|
||||
"Whitelist": "Whitelist",
|
||||
"Show": "Vis",
|
||||
"Messages": "Meddelelser",
|
||||
"On": "På",
|
||||
"Hide": "Skjul",
|
||||
"Set Time": "Indstil tid",
|
||||
"Factory Reset": "Fabriksnulstilling",
|
||||
"Disable": "Deaktivere",
|
||||
"Error in settings": "Fejl i indstillingerne",
|
||||
"Select Clock": "Vælg ur",
|
||||
"No": "Nej",
|
||||
"Yes": "Ja",
|
||||
"Ok": "Ok",
|
||||
"Off": "Off",
|
||||
"Back": "Tilbage"
|
||||
},
|
||||
"alarm": {
|
||||
"//": "App-specific overrides"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,163 @@
|
|||
{
|
||||
"//": "Greek language translations",
|
||||
"GLOBAL": {
|
||||
"//": "Translations that apply for all apps",
|
||||
"Save": "Αποθήκευση",
|
||||
"week": "εβδομάδα",
|
||||
"Keep Msgs": "Κρατήστε τα Msgs",
|
||||
"New Alarm": "Νέος συναγερμός",
|
||||
"Connected": "Συνδεδεμένο",
|
||||
"Circle": "Κύκλος",
|
||||
"maximum": "μέγιστο",
|
||||
"Heartrate": "Καρδιακός ρυθμός",
|
||||
"step length": "μήκος βήματος",
|
||||
"valid period": "περίοδος ισχύος",
|
||||
"(repeat)": "(επανάληψη)",
|
||||
"min. confidence": "ελάχιστη εμπιστοσύνη",
|
||||
"New Timer": "Νέος χρονοδιακόπτης",
|
||||
"Sleep": "Ύπνος",
|
||||
"Timer": "Χρονοδιακόπτης",
|
||||
"Alarm": "Συναγερμός",
|
||||
"goal": "γκολ",
|
||||
"distance goal": "στόχος απόστασης",
|
||||
"Steps": "Βήματα",
|
||||
"minimum": "ελάχιστο",
|
||||
"circle 4": "κύκλος 4",
|
||||
"steps": "βήματα",
|
||||
"circle 2": "κύκλος 2",
|
||||
"circle 1": "κύκλος 1",
|
||||
"weather circle": "κύκλος καιρού",
|
||||
"circle count": "Αριθμός κύκλων",
|
||||
"heartrate": "καρδιακός ρυθμός",
|
||||
"circle 3": "κύκλος 3",
|
||||
"show widgets": "Εμφάνιση widgets",
|
||||
"battery warn": "προειδοποίηση μπαταρίας",
|
||||
"Vector font size": "Μέγεθος γραμματοσειράς διανύσματος",
|
||||
"Font": "Γραμματοσειρά",
|
||||
"colorize icon": "χρωματισμός εικονιδίου",
|
||||
"Show clocks": "Εμφάνιση ρολογιών",
|
||||
"color": "χρώμα",
|
||||
"Launcher Settings": "Ρυθμίσεις εκτοξευτή",
|
||||
"App Source\nNot found": "Πηγή εφαρμογής\nΔεν βρέθηκε",
|
||||
"Loading": "Φόρτωση",
|
||||
"data": "δεδομένα",
|
||||
"View Message": "Προβολή μηνύματος",
|
||||
"Delete all messages": "Διαγραφή όλων των μηνυμάτων",
|
||||
"Mark Unread": "Mark Unread",
|
||||
"Are you sure": "Είσαι σίγουρος",
|
||||
"Delete All Messages": "Διαγραφή όλων των μηνυμάτων",
|
||||
"Unread timer": "Χρονοδιακόπτης χωρίς ανάγνωση",
|
||||
"Apps": "Εφαρμογές",
|
||||
"Record Run": "Τρέξιμο ρεκόρ",
|
||||
"No Messages": "Δεν υπάρχουν μηνύματα",
|
||||
"Music": "Μουσική",
|
||||
"Bluetooth": "Bluetooth",
|
||||
"LCD": "LCD",
|
||||
"Piezo": "Piezo",
|
||||
"Quiet Mode": "Αθόρυβη λειτουργία",
|
||||
"Make Connectable": "Κάντε Connectable",
|
||||
"Utils": "Utils",
|
||||
"Vibration": "Δονήσεις",
|
||||
"Programmable": "Προγραμματιζόμενο",
|
||||
"Beep": "Μπιπ",
|
||||
"Passkey BETA": "Passkey BETA",
|
||||
"Wake on Touch": "Αφύπνιση στο άγγιγμα",
|
||||
"Twist Max Y": "Twist Max Y",
|
||||
"Time Zone": "Ζώνη ώρας",
|
||||
"Remove": "Αφαιρέστε το",
|
||||
"Add Device": "Προσθήκη συσκευής",
|
||||
"LCD Brightness": "Φωτεινότητα LCD",
|
||||
"LCD Timeout": "Χρονικό όριο LCD",
|
||||
"Twist Timeout": "Twist Timeout",
|
||||
"Highlight BG": "Επισημάνετε το BG",
|
||||
"Highlight FG": "Επισημάνετε το FG",
|
||||
"Light BW": "Ελαφρύ BW",
|
||||
"Foreground 2": "Πρόσθιο πεδίο 2",
|
||||
"Background": "Ιστορικό",
|
||||
"Background 2": "Ιστορικό 2",
|
||||
"HID": "HID",
|
||||
"Dark BW": "Σκούρο BW",
|
||||
"BLE": "BLE",
|
||||
"Customize": "Προσαρμογή",
|
||||
"Debug Info": "Πληροφορίες εντοπισμού σφαλμάτων",
|
||||
"Rewrite Settings": "Ρυθμίσεις επανεγγραφής",
|
||||
"Storage": "Αποθήκευση",
|
||||
"Flatten Battery": "Επίπεδη μπαταρία",
|
||||
"Clock Style": "Στυλ ρολογιού",
|
||||
"Compact Storage": "Συμπαγής αποθήκευση",
|
||||
"Utilities": "Υπηρεσίες κοινής ωφέλειας",
|
||||
"Log": "Ημερολόγιο",
|
||||
"Right": "Δεξιά",
|
||||
"Month": "Μήνας",
|
||||
"Side": "Πλευρά",
|
||||
"No app has settings": "Καμία εφαρμογή δεν έχει ρυθμίσεις",
|
||||
"Widgets": "Widgets",
|
||||
"Left": "Αριστερά",
|
||||
"Reset All": "Επαναφορά όλων",
|
||||
"Invalid settings": "Μη έγκυρες ρυθμίσεις",
|
||||
"Reset": "Επαναφορά",
|
||||
"Sort Order": "Σειρά ταξινόμησης",
|
||||
"TAP right top/bottom": "TAP δεξιά πάνω/κάτω",
|
||||
"Wake on BTN2": "Wake στο BTN2",
|
||||
"Connect device\nto add to\nwhitelist": "Σύνδεση συσκευής\nγια να προσθέσετε\nλευκή λίστα",
|
||||
"Wake on FaceUp": "Wake στο FaceUp",
|
||||
"Wake on BTN1": "Wake στο BTN1",
|
||||
"Wake on BTN3": "Wake στο BTN3",
|
||||
"Foreground": "Πρόσφατα στοιχεία",
|
||||
"Wake on Twist": "Wake on Twist",
|
||||
"Auto snooze": "Αυτόματη επαναφορά",
|
||||
"Twist Threshold": "Κατώφλι συστροφής",
|
||||
"Compacting...\nTakes approx\n1 minute": "Συμπίεση...\nΠαίρνει περίπου\n1 λεπτό",
|
||||
"Connectable": "Συνδεόμενο",
|
||||
"Repeat": "Επανάληψη",
|
||||
"No Clocks Found": "Δεν βρέθηκαν ρολόγια",
|
||||
"TIMER": "TIMER",
|
||||
"App Settings": "Ρυθμίσεις εφαρμογής",
|
||||
"Stay Connectable": "Μείνετε συνδεδεμένοι",
|
||||
"Second": "Δεύτερο",
|
||||
"Minute": "Λεπτό",
|
||||
"Date": "Ημερομηνία",
|
||||
"This will remove everything": "Αυτό θα αφαιρέσει τα πάντα",
|
||||
"Reset to Defaults": "Επαναφορά στις προεπιλογές",
|
||||
"Vibrate": "Δονήσεις",
|
||||
"Hour": "Ώρα",
|
||||
"Turn Off": "Απενεργοποίηση",
|
||||
"Reset Settings": "Επαναφορά ρυθμίσεων",
|
||||
"Year": "Έτος",
|
||||
"Message": "Μήνυμα",
|
||||
"Locale": "Τοπική τοποθεσία",
|
||||
"Alerts": "Ειδοποιήσεις",
|
||||
"Theme": "Θέμα",
|
||||
"Error in settings": "Σφάλμα στις ρυθμίσεις",
|
||||
"Disable": "Απενεργοποίηση",
|
||||
"Factory Reset": "Επαναφορά εργοστασιακών ρυθμίσεων",
|
||||
"System": "Σύστημα",
|
||||
"Ok": "Εντάξει",
|
||||
"Yes": "Ναι",
|
||||
"On": "Στο",
|
||||
"Settings": "Ρυθμίσεις",
|
||||
"Select Clock": "Επιλέξτε Ρολόι",
|
||||
"Off": "Off",
|
||||
"Back": "Πίσω",
|
||||
"No": "Όχι",
|
||||
"Delete": "Διαγραφή",
|
||||
"Enabled": "Ενεργοποιημένο",
|
||||
"Hours": "Ώρες",
|
||||
"ALARM": "ALARM",
|
||||
"on": "στο",
|
||||
"off": "off",
|
||||
"Minutes": "Πρακτικά",
|
||||
"Reset all widgets": "Επαναφορά όλων των widgets",
|
||||
"Hide": "Απόκρυψη",
|
||||
"Messages": "Μηνύματα",
|
||||
"Show": "Εμφάνιση",
|
||||
"Set Time": "Ρύθμιση χρόνου",
|
||||
"BTNs 1:startlap 2:exit 3:reset": "BTNs 1:startlap 2:exit 3:reset",
|
||||
"start&lap/reset, BTN1: EXIT": "εκκίνηση&γύρος/επαναφορά, BTN1: ΕΞΟΔΟΣ",
|
||||
"Flattening battery - this can take hours.\nLong-press button to cancel": "Εξομάλυνση της μπαταρίας - αυτό μπορεί να διαρκέσει ώρες.\nΠατήστε παρατεταμένα το κουμπί για ακύρωση",
|
||||
"Whitelist": "Λευκή λίστα"
|
||||
},
|
||||
"alarm": {
|
||||
"//": "App-specific overrides"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,163 @@
|
|||
{
|
||||
"//": "Estonian language translations",
|
||||
"GLOBAL": {
|
||||
"//": "Translations that apply for all apps",
|
||||
"New Alarm": "Uus häire",
|
||||
"Alarm": "Häire",
|
||||
"Save": "Salvesta",
|
||||
"Timer": "Taimer",
|
||||
"(repeat)": "(kordus)",
|
||||
"New Timer": "Uus taimer",
|
||||
"circle 2": "ring 2",
|
||||
"week": "nädal",
|
||||
"circle 4": "ring 4",
|
||||
"circle count": "ringide arv",
|
||||
"Sleep": "Sleep",
|
||||
"circle 3": "ring 3",
|
||||
"Keep Msgs": "Hoidke Msgs",
|
||||
"heartrate": "südame löögisagedus",
|
||||
"circle 1": "ring 1",
|
||||
"Connected": "Ühendatud",
|
||||
"steps": "sammud",
|
||||
"battery warn": "aku hoiatus",
|
||||
"show widgets": "Näita vidinaid",
|
||||
"minimum": "minimaalne",
|
||||
"Heartrate": "Südame löögisagedus",
|
||||
"weather circle": "ilmastikuring",
|
||||
"Loading": "Laadimine",
|
||||
"Launcher Settings": "Käivitajate seaded",
|
||||
"color": "värv",
|
||||
"Font": "Font",
|
||||
"colorize icon": "värvida ikooni",
|
||||
"Steps": "Sammud",
|
||||
"step length": "sammu pikkus",
|
||||
"Auto snooze": "Automaatne snooze",
|
||||
"TAP right top/bottom": "TAP paremal üleval/alla",
|
||||
"maximum": "maksimaalne",
|
||||
"distance goal": "kauguse eesmärk",
|
||||
"valid period": "kehtivusaeg",
|
||||
"min. confidence": "min. usaldus",
|
||||
"data": "andmed",
|
||||
"Circle": "Ring",
|
||||
"goal": "eesmärk",
|
||||
"Delete all messages": "Kustuta kõik sõnumid",
|
||||
"Are you sure": "Oled sa kindel, et",
|
||||
"App Source\nNot found": "Rakenduse allikas\nEi leitud",
|
||||
"Show clocks": "Näita kellasid",
|
||||
"View Message": "Vaata sõnumit",
|
||||
"Vector font size": "Vektori kirjasuurus",
|
||||
"Mark Unread": "Märgi lugemata",
|
||||
"Delete All Messages": "Kustuta kõik sõnumid",
|
||||
"No Messages": "Sõnumid puuduvad",
|
||||
"Bluetooth": "Bluetooth",
|
||||
"LCD": "LCD",
|
||||
"Unread timer": "Lugemata taimer",
|
||||
"Record Run": "Record Run",
|
||||
"Music": "Muusika",
|
||||
"Beep": "Helisema",
|
||||
"Piezo": "Piezo",
|
||||
"Apps": "Rakendused",
|
||||
"Utils": "Utils",
|
||||
"Vibration": "Vibratsioon",
|
||||
"BLE": "BLE",
|
||||
"Make Connectable": "Tee ühendatavaks",
|
||||
"Programmable": "Programmeeritav",
|
||||
"Light BW": "Kerge BW",
|
||||
"Passkey BETA": "Passkey BETA",
|
||||
"HID": "HID",
|
||||
"Quiet Mode": "Vaikne režiim",
|
||||
"Background": "Taustaks",
|
||||
"Customize": "Kohandada",
|
||||
"Dark BW": "Tume BW",
|
||||
"LCD Timeout": "LCD Timeout",
|
||||
"Background 2": "Taust 2",
|
||||
"Highlight FG": "FG esiletõstmine",
|
||||
"Add Device": "Seadme lisamine",
|
||||
"Highlight BG": "Rõhutage BG",
|
||||
"Remove": "Eemaldage",
|
||||
"LCD Brightness": "LCD heledus",
|
||||
"Foreground 2": "Teadmised 2",
|
||||
"Time Zone": "Ajavöönd",
|
||||
"Debug Info": "Debug-info",
|
||||
"Twist Max Y": "Twist Max Y",
|
||||
"Twist Timeout": "Twist Timeout",
|
||||
"Foreground": "Esialgsed teadmised",
|
||||
"Wake on BTN3": "Wake on BTN3",
|
||||
"Connect device\nto add to\nwhitelist": "Seadme ühendamine\nlisada\nvalimisnimekirja",
|
||||
"Wake on BTN2": "Wake on BTN2",
|
||||
"Wake on Touch": "Wake on Touch",
|
||||
"Wake on FaceUp": "FaceUp'i ärkamine",
|
||||
"Compact Storage": "Kompaktne ladustamine",
|
||||
"Wake on Twist": "Wake on Twist",
|
||||
"Clock Style": "Kella stiil",
|
||||
"Wake on BTN1": "Wake on BTN1",
|
||||
"Utilities": "Kommunaalteenused",
|
||||
"Twist Threshold": "Twist künnis",
|
||||
"Log": "Logi",
|
||||
"Reset Settings": "Seadete lähtestamine",
|
||||
"Rewrite Settings": "Ümberkirjutamise seaded",
|
||||
"Hour": "Tund",
|
||||
"Stay Connectable": "Jääge ühendatavaks",
|
||||
"Flatten Battery": "Aku tasandamine",
|
||||
"This will remove everything": "See eemaldab kõik",
|
||||
"Minute": "Hetk",
|
||||
"App Settings": "Rakenduse seaded",
|
||||
"No app has settings": "Ühelgi rakendusel ei ole seadeid",
|
||||
"Invalid settings": "Väärad seaded",
|
||||
"Date": "Kuupäev",
|
||||
"Year": "Aasta",
|
||||
"Side": "Side",
|
||||
"Turn Off": "Lülita välja",
|
||||
"Storage": "Ladustamine",
|
||||
"Second": "Teine",
|
||||
"Right": "Õigus",
|
||||
"Left": "Vasakpoolne",
|
||||
"Month": "Kuu",
|
||||
"TIMER": "TIMER",
|
||||
"Reset to Defaults": "Lähtestamine vaikimisi seadistustele",
|
||||
"Compacting...\nTakes approx\n1 minute": "Tihendamine...\nKulub umbes\n1 minut",
|
||||
"start&lap/reset, BTN1: EXIT": "start&lap/reset, BTN1: EXIT",
|
||||
"Flattening battery - this can take hours.\nLong-press button to cancel": "Aku tasandamine - see võib võtta tunde.\nTühistamiseks vajutage pikalt nuppu",
|
||||
"ALARM": "ALARM",
|
||||
"Reset All": "Reset All",
|
||||
"Hours": "Tunnid",
|
||||
"off": "välja",
|
||||
"Widgets": "Vidinad",
|
||||
"Reset all widgets": "Nullida kõik vidinad",
|
||||
"on": "aadressil",
|
||||
"Connectable": "Ühendatav",
|
||||
"No Clocks Found": "Kellasid ei leitud",
|
||||
"BTNs 1:startlap 2:exit 3:reset": "BTNid 1:startlap 2:exit 3:reset",
|
||||
"Sort Order": "Sorteerimisjärjekord",
|
||||
"Reset": "Reset",
|
||||
"System": "Süsteem",
|
||||
"Message": "Sõnum",
|
||||
"Settings": "Seaded",
|
||||
"Locale": "Locale",
|
||||
"Alerts": "Hoiatused",
|
||||
"Enabled": "Lubatud",
|
||||
"Theme": "Teema",
|
||||
"Minutes": "Protokoll",
|
||||
"Delete": "Kustuta",
|
||||
"Set Time": "Määratud aeg",
|
||||
"Select Clock": "Valige kell",
|
||||
"Hide": "Peida",
|
||||
"Messages": "Sõnumid",
|
||||
"Ok": "Ok",
|
||||
"Show": "Näita",
|
||||
"On": "Veebilehel",
|
||||
"Factory Reset": "Tehase lähtestamine",
|
||||
"Error in settings": "Viga seadetes",
|
||||
"Disable": "Lülita välja",
|
||||
"Repeat": "Kordus",
|
||||
"Vibrate": "Vibreerima",
|
||||
"Whitelist": "Valge nimekiri",
|
||||
"No": "Ei",
|
||||
"Yes": "Jah",
|
||||
"Off": "Väljaspool",
|
||||
"Back": "Tagasi"
|
||||
},
|
||||
"alarm": {
|
||||
"//": "App-specific overrides"
|
||||
}
|
||||
}
|
|
@ -10,8 +10,16 @@
|
|||
{"code":"nl_NL","name":"Dutch","url":"nl_NL.json"},
|
||||
{"code":"sv_SE","name":"Swedish","url":"sv_SE.json"},
|
||||
{"code":"tr_TR","name":"Turkish","url":"tr_TR.json"},
|
||||
{"code":"zh_ZH","name":"Chinese","url":"zh_ZH.json"},
|
||||
{"code":"ru_RU","name":"Russian","url":"ru_RU.json"},
|
||||
{"code":"pt_PT","name":"Portuguese","url":"pt_PT.json"},
|
||||
{"code":"ja_JA","name":"Japanese","url":"ja_JA.json"}
|
||||
{"code":"bg_BG","name":"Bulgarian","url":"bg_BG.json"},
|
||||
{"code":"da_DA","name":"Danish","url":"da_DA.json"},
|
||||
{"code":"el_EL","name":"Greek","url":"el_EL.json"},
|
||||
{"code":"et_ET","name":"Estonian","url":"et_ET.json"},
|
||||
{"code":"lt_LT","name":"Lithuanian","url":"lt_LT.json"},
|
||||
{"code":"lv_LV","name":"Latvian","url":"lv_LV.json"},
|
||||
{"code":"pl_PL","name":"Polish","url":"pl_PL.json"},
|
||||
{"code":"ro_RO","name":"Romanian","url":"ro_RO.json"},
|
||||
{"code":"sk_SK","name":"Slovak","url":"sk_SK.json"},
|
||||
{"code":"sl_SL","name":"Slovenian","url":"sl_SL.json"}
|
||||
]
|
||||
|
|
|
@ -0,0 +1,163 @@
|
|||
{
|
||||
"//": "Lithuanian language translations",
|
||||
"GLOBAL": {
|
||||
"//": "Translations that apply for all apps",
|
||||
"New Alarm": "Naujas žadintuvas",
|
||||
"(repeat)": "(pakartoti)",
|
||||
"Alarm": "Signalizacija",
|
||||
"Save": "Išsaugoti",
|
||||
"New Timer": "Naujas laikmatis",
|
||||
"Sleep": "Miegas",
|
||||
"circle count": "ratų skaičius",
|
||||
"Timer": "Laikmatis",
|
||||
"week": "savaitė",
|
||||
"Connected": "Prijungta",
|
||||
"circle 2": "2 ratas",
|
||||
"Auto snooze": "Automatinis snaudimas",
|
||||
"circle 1": "1 ratas",
|
||||
"show widgets": "rodyti valdiklius",
|
||||
"Keep Msgs": "Laikyti Msgs",
|
||||
"weather circle": "orų ratas",
|
||||
"step length": "žingsnio ilgis",
|
||||
"steps": "žingsniai",
|
||||
"circle 3": "3 ratas",
|
||||
"battery warn": "įspėjimas apie akumuliatorių",
|
||||
"min. confidence": "min. pasitikėjimas",
|
||||
"maximum": "didžiausias",
|
||||
"valid period": "galiojantis laikotarpis",
|
||||
"minimum": "minimalus",
|
||||
"heartrate": "širdies ritmas",
|
||||
"circle 4": "4 ratas",
|
||||
"goal": "tikslas",
|
||||
"data": "duomenys",
|
||||
"distance goal": "atstumo tikslas",
|
||||
"Steps": "Žingsniai",
|
||||
"Heartrate": "Širdies ritmas",
|
||||
"Show clocks": "Rodyti laikrodžius",
|
||||
"View Message": "Peržiūrėti žinutę",
|
||||
"color": "",
|
||||
"colorize icon": "nuspalvinti piktogramą",
|
||||
"Circle": "Apskritimas",
|
||||
"Delete all messages": "Ištrinti visus pranešimus",
|
||||
"Font": "Šriftas",
|
||||
"TAP right top/bottom": "TAP dešinėje viršuje / apačioje",
|
||||
"No Messages": "Jokių pranešimų",
|
||||
"Launcher Settings": "Paleidimo programos nustatymai",
|
||||
"App Source\nNot found": "Programėlės šaltinis\nNerastas",
|
||||
"Loading": "Pakrovimas",
|
||||
"Vector font size": "Vektorinio šrifto dydis",
|
||||
"Music": "Muzika",
|
||||
"Are you sure": "Ar tikrai",
|
||||
"Delete All Messages": "Ištrinti visus pranešimus",
|
||||
"Mark Unread": "Pažymėti Neskaityta",
|
||||
"LCD": "LCD",
|
||||
"Apps": "Programėlės",
|
||||
"Record Run": "Rekordinis paleidimas",
|
||||
"start&lap/reset, BTN1: EXIT": "start&lap/reset, BTN1: EXIT",
|
||||
"Unread timer": "Neperskaitytas laikmatis",
|
||||
"Bluetooth": "\"Bluetooth\"",
|
||||
"BTNs 1:startlap 2:exit 3:reset": "BTNs 1:startlap 2:exit 3:reset",
|
||||
"Dark BW": "Tamsus BW",
|
||||
"Programmable": "Programuojamas",
|
||||
"Make Connectable": "Sukurkite \"Connectable",
|
||||
"BLE": "BLE",
|
||||
"Passkey BETA": "Passkey BETA",
|
||||
"HID": "HID",
|
||||
"Utils": "Paslaugos",
|
||||
"Quiet Mode": "Tylusis režimas",
|
||||
"Beep": "Pyptelėjimas",
|
||||
"Piezo": "Piezo",
|
||||
"Vibration": "Vibracija",
|
||||
"Background": "Pagrindinė informacija",
|
||||
"Customize": "Tinkinti",
|
||||
"Foreground": "Naujos žinios",
|
||||
"Light BW": "Šviesus BW",
|
||||
"Add Device": "Pridėti įrenginį",
|
||||
"Remove": "Pašalinti",
|
||||
"Wake on BTN1": "Pabusti dėl BTN1",
|
||||
"Wake on BTN3": "Pabusti dėl BTN3",
|
||||
"Highlight FG": "Pabrėžti FG",
|
||||
"Highlight BG": "Išryškinti BG",
|
||||
"Twist Max Y": "Twist Max Y",
|
||||
"Foreground 2": "Pirmas planas 2",
|
||||
"Background 2": "Pagrindinė informacija 2",
|
||||
"Clock Style": "Laikrodžio stilius",
|
||||
"Log": "Žurnalas",
|
||||
"Debug Info": "Derinimo informacija",
|
||||
"Time Zone": "Laiko juosta",
|
||||
"Wake on Touch": "Pabudimas palietus",
|
||||
"Twist Threshold": "Sukimo slenkstis",
|
||||
"Wake on FaceUp": "Atsibusti \"FaceUp",
|
||||
"Wake on BTN2": "Pabusti dėl BTN2",
|
||||
"Wake on Twist": "Pabusti dėl Twist",
|
||||
"LCD Brightness": "LCD ekrano ryškumas",
|
||||
"Twist Timeout": "Twist Timeout",
|
||||
"Compact Storage": "Kompaktiškas saugojimas",
|
||||
"Storage": "Saugykla",
|
||||
"Utilities": "Komunalinės paslaugos",
|
||||
"Compacting...\nTakes approx\n1 minute": "Suspaudžiant...\nUžtrunka maždaug\n1 minutė",
|
||||
"No Clocks Found": "Laikrodžių nerasta",
|
||||
"Reset Settings": "Nustatymų atstatymas",
|
||||
"Flatten Battery": "Išlyginti akumuliatorių",
|
||||
"Connect device\nto add to\nwhitelist": "Prijungti įrenginį\npridėti prie\nbaltąjį sąrašą",
|
||||
"LCD Timeout": "LCD ekrano laiko limitas",
|
||||
"Hour": "Valanda",
|
||||
"Second": "Antrasis",
|
||||
"Date": "Data",
|
||||
"Turn Off": "Išjungti",
|
||||
"This will remove everything": "Tai pašalins viską.",
|
||||
"Connectable": "Prijungiama",
|
||||
"Stay Connectable": "Palaikykite ryšį",
|
||||
"Left": "Kairėje pusėje",
|
||||
"Right": "Dešinė",
|
||||
"Side": "Šoninė pusė",
|
||||
"Invalid settings": "Netinkami nustatymai",
|
||||
"Month": "Mėnuo",
|
||||
"Year": "Metai",
|
||||
"App Settings": "Programėlės nustatymai",
|
||||
"Sort Order": "Rūšiavimo tvarka",
|
||||
"Minute": "Minutė",
|
||||
"No app has settings": "Jokia programa neturi nustatymų",
|
||||
"Rewrite Settings": "Perrašymo nustatymai",
|
||||
"Reset All": "Iš naujo nustatyti viską",
|
||||
"Reset": "Iš naujo nustatyti",
|
||||
"Reset to Defaults": "Iš naujo nustatyti numatytąsias reikšmes",
|
||||
"Hours": "Valandos",
|
||||
"ALARM": "ALARMAS",
|
||||
"TIMER": "LAIKMATIS",
|
||||
"Widgets": "Valdikliai",
|
||||
"Reset all widgets": "Iš naujo nustatyti visus valdiklius",
|
||||
"Minutes": "Protokolas",
|
||||
"Flattening battery - this can take hours.\nLong-press button to cancel": "Akumuliatoriaus išlyginimas - tai gali užtrukti kelias valandas.\nIlgai paspauskite mygtuką, kad atšauktumėte",
|
||||
"on": "svetainėje",
|
||||
"off": "iš",
|
||||
"Message": "Žinutė",
|
||||
"Repeat": "Pakartokite",
|
||||
"Delete": "Ištrinti",
|
||||
"Enabled": "Įjungta",
|
||||
"System": "Sistema",
|
||||
"Theme": "Tema",
|
||||
"Vibrate": "Vibruoti",
|
||||
"Settings": "Nustatymai",
|
||||
"Alerts": "Įspėjimai",
|
||||
"Error in settings": "Klaida nustatymuose",
|
||||
"Messages": "Žinutės",
|
||||
"Set Time": "Nustatytas laikas",
|
||||
"Locale": "Vietovė",
|
||||
"Select Clock": "Pasirinkite laikrodį",
|
||||
"Whitelist": "Baltasis sąrašas",
|
||||
"Disable": "Išjungti",
|
||||
"Factory Reset": "Gamyklinis atstatymas",
|
||||
"Show": "Rodyti",
|
||||
"Hide": "Paslėpti",
|
||||
"Yes": "Taip",
|
||||
"Ok": "Gerai",
|
||||
"No": "Ne",
|
||||
"On": "Svetainėje",
|
||||
"Off": "Išjungta",
|
||||
"Back": "Atgal"
|
||||
},
|
||||
"alarm": {
|
||||
"//": "App-specific overrides"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,163 @@
|
|||
{
|
||||
"//": "Latvian language translations",
|
||||
"GLOBAL": {
|
||||
"//": "Translations that apply for all apps",
|
||||
"Save": "Saglabāt",
|
||||
"Auto snooze": "Automātiskā snaudiena atlikšana",
|
||||
"circle 1": "1 aplis",
|
||||
"New Timer": "Jauns taimeris",
|
||||
"New Alarm": "Jauns modinātājs",
|
||||
"Sleep": "Miega režīms",
|
||||
"circle count": "apļu skaits",
|
||||
"Keep Msgs": "Glabāt Msgs",
|
||||
"Timer": "Taimeris",
|
||||
"week": "nedēļa",
|
||||
"Connected": "Savienots",
|
||||
"(repeat)": "(atkārtot)",
|
||||
"circle 3": "aplis 3",
|
||||
"circle 4": "4 aplis",
|
||||
"Alarm": "Trauksmes signāls",
|
||||
"steps": "soļi",
|
||||
"heartrate": "sirdsdarbības ātrums",
|
||||
"weather circle": "laikapstākļu aplis",
|
||||
"circle 2": "2. aplis",
|
||||
"minimum": "minimālais",
|
||||
"battery warn": "brīdinājums par akumulatoru",
|
||||
"min. confidence": "min. uzticēšanās",
|
||||
"show widgets": "parādīt logrīkus",
|
||||
"step length": "soļa garums",
|
||||
"goal": "mērķis",
|
||||
"distance goal": "attāluma mērķis",
|
||||
"valid period": "derīguma termiņš",
|
||||
"Circle": "Aplis",
|
||||
"data": "dati",
|
||||
"Steps": "Soļi",
|
||||
"color": "krāsa",
|
||||
"colorize icon": "iekrāsot ikonu",
|
||||
"maximum": "maksimālais",
|
||||
"Heartrate": "Sirdsdarbība",
|
||||
"View Message": "Skatīt ziņojumu",
|
||||
"start&lap/reset, BTN1: EXIT": "start&lap/reset, BTN1: EXIT",
|
||||
"TAP right top/bottom": "TAP pa labi augšā/apakšā",
|
||||
"Mark Unread": "Atzīmēt Neizlasīts",
|
||||
"Delete all messages": "Dzēst visus ziņojumus",
|
||||
"Vector font size": "Vektora fonta lielums",
|
||||
"Loading": "Iekraušana",
|
||||
"Show clocks": "Rādīt pulksteņus",
|
||||
"Font": "Fonts",
|
||||
"App Source\nNot found": "Lietotņu avots\nNav atrasts",
|
||||
"Launcher Settings": "Palaidēja iestatījumi",
|
||||
"Delete All Messages": "Dzēst visus ziņojumus",
|
||||
"BTNs 1:startlap 2:exit 3:reset": "BTNs 1:startlap 2:izeja 3:resetēšana",
|
||||
"Bluetooth": "Bluetooth",
|
||||
"Are you sure": "Vai esat pārliecināts, ka",
|
||||
"Utils": "Utils",
|
||||
"Unread timer": "Neizlasīts taimeris",
|
||||
"LCD": "LCD",
|
||||
"Music": "Mūzika",
|
||||
"No Messages": "Nav ziņojumu",
|
||||
"Record Run": "Rekorda skrējiens",
|
||||
"HID": "HID",
|
||||
"Quiet Mode": "Klusais režīms",
|
||||
"Highlight FG": "Izcelt FG",
|
||||
"Programmable": "Programmējams",
|
||||
"Passkey BETA": "Passkey BETA",
|
||||
"Light BW": "Gaismas BW",
|
||||
"Piezo": "Piezo",
|
||||
"Make Connectable": "Padarīt savienojamu",
|
||||
"Beep": "Pīkstiens",
|
||||
"Dark BW": "Tumšs BW",
|
||||
"Background": "Pamatinformācija",
|
||||
"Vibration": "Vibrācija",
|
||||
"Apps": "Aplikācijas",
|
||||
"Foreground 2": "Priekšplāns 2",
|
||||
"Background 2": "Pamatinformācija 2",
|
||||
"Foreground": "Priekšplāns",
|
||||
"Customize": "Pielāgojiet",
|
||||
"Highlight BG": "Izcelt BG",
|
||||
"BLE": "BLE",
|
||||
"LCD Timeout": "LCD displeja laika ierobežojums",
|
||||
"Twist Max Y": "Twist Max Y",
|
||||
"Add Device": "Pievienot ierīci",
|
||||
"Connect device\nto add to\nwhitelist": "Savienot ierīci\nlai pievienotu\nbalto sarakstu",
|
||||
"Wake on Touch": "Pamosties pēc pieskāriena",
|
||||
"Time Zone": "Laika josla",
|
||||
"Wake on BTN3": "Wake par BTN3",
|
||||
"Wake on BTN1": "Pamosties par BTN1",
|
||||
"Wake on BTN2": "Wake par BTN2",
|
||||
"LCD Brightness": "LCD ekrāna spilgtums",
|
||||
"Remove": "Noņemt",
|
||||
"Clock Style": "Pulksteņa stils",
|
||||
"Debug Info": "Dzesēšanas informācija",
|
||||
"Twist Timeout": "Twist laika ierobežojums",
|
||||
"Wake on FaceUp": "Pamosties FaceUp",
|
||||
"Twist Threshold": "Pagrieziena slieksnis",
|
||||
"This will remove everything": "Tādējādi tiks noņemts viss",
|
||||
"Utilities": "Komunālie pakalpojumi",
|
||||
"Connectable": "Savienojams",
|
||||
"Minute": "Minūtes",
|
||||
"Stay Connectable": "Palieciet savienojami",
|
||||
"Storage": "Uzglabāšana",
|
||||
"Log": "Log",
|
||||
"Wake on Twist": "Wake on Twist",
|
||||
"Flatten Battery": "Izlīdzināt akumulatoru",
|
||||
"Rewrite Settings": "Pārrakstīšanas iestatījumi",
|
||||
"Compact Storage": "Kompakta uzglabāšana",
|
||||
"Compacting...\nTakes approx\n1 minute": "Blīvēšanas...\nAizņem aptuveni\n1 minūte",
|
||||
"Second": "Otrais",
|
||||
"Reset Settings": "Iestatījumu atiestatīšana",
|
||||
"Turn Off": "Izslēgt",
|
||||
"Date": "Datums",
|
||||
"Right": "Tiesības",
|
||||
"Sort Order": "Kārtot pēc kārtas",
|
||||
"No Clocks Found": "Nav atrasti pulksteņi",
|
||||
"Reset to Defaults": "Atiestatīt noklusējuma iestatījumus",
|
||||
"No app has settings": "Nevienā lietotnē nav iestatījumu",
|
||||
"ALARM": "ALARM",
|
||||
"Widgets": "Logrīki",
|
||||
"off": "izslēgts",
|
||||
"Invalid settings": "Nederīgi iestatījumi",
|
||||
"Month": "Mēnesis",
|
||||
"Side": "Sānu",
|
||||
"Reset": "Atiestatīt",
|
||||
"Reset All": "Atiestatīt visu",
|
||||
"Hours": "Stundas",
|
||||
"Repeat": "Atkārtojiet",
|
||||
"Enabled": "Ieslēgts",
|
||||
"Settings": "Iestatījumi",
|
||||
"Message": "Ziņa",
|
||||
"Minutes": "Protokols",
|
||||
"App Settings": "Lietotņu iestatījumi",
|
||||
"System": "Sistēma",
|
||||
"Locale": "Vietne",
|
||||
"Theme": "Tēma",
|
||||
"Flattening battery - this can take hours.\nLong-press button to cancel": "Akumulatora saplacināšana - tas var aizņemt vairākas stundas.\nIlgi nospiediet pogu, lai atceltu",
|
||||
"Select Clock": "Izvēlieties pulksteni",
|
||||
"Set Time": "Iestatītais laiks",
|
||||
"Vibrate": "Vibrēt",
|
||||
"Reset all widgets": "Visu logrīku atiestatīšana",
|
||||
"Hour": "Stunda",
|
||||
"Left": "Kreisā",
|
||||
"TIMER": "TIMER",
|
||||
"Year": "Gads",
|
||||
"on": "vietnē",
|
||||
"Alerts": "Brīdinājumi",
|
||||
"Delete": "Dzēst",
|
||||
"Whitelist": "Baltais saraksts",
|
||||
"Messages": "Ziņojumi",
|
||||
"Disable": "Atslēgt",
|
||||
"Hide": "Paslēpt",
|
||||
"Show": "Rādīt",
|
||||
"On": "Uz",
|
||||
"Factory Reset": "Rūpnīcas atiestatīšana",
|
||||
"Error in settings": "Kļūda iestatījumos",
|
||||
"Ok": "Labi",
|
||||
"Yes": "Jā",
|
||||
"No": "Nē",
|
||||
"Back": "Atpakaļ",
|
||||
"Off": "Izslēgts"
|
||||
},
|
||||
"alarm": {
|
||||
"//": "App-specific overrides"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,163 @@
|
|||
{
|
||||
"//": "Polish language translations",
|
||||
"GLOBAL": {
|
||||
"//": "Translations that apply for all apps",
|
||||
"New Alarm": "Nowy Alarm",
|
||||
"(repeat)": "(powtórzenie)",
|
||||
"Connected": "Podłączony",
|
||||
"Timer": "Timer",
|
||||
"Alarm": "Alarm",
|
||||
"New Timer": "Nowy zegar",
|
||||
"Sleep": "Sen",
|
||||
"Save": "Zapisz",
|
||||
"circle 1": "krąg 1",
|
||||
"circle 3": "krąg 3",
|
||||
"circle count": "liczenie okręgów",
|
||||
"week": "tydzień",
|
||||
"circle 2": "krąg 2",
|
||||
"Keep Msgs": "Keep Msgs",
|
||||
"weather circle": "koło klimatyczne",
|
||||
"circle 4": "krąg 4",
|
||||
"heartrate": "częstość akcji serca",
|
||||
"Heartrate": "Heartrate",
|
||||
"maximum": "maksimum",
|
||||
"min. confidence": "min. pewność siebie",
|
||||
"valid period": "okres ważności",
|
||||
"distance goal": "cel odległościowy",
|
||||
"Circle": "Koło",
|
||||
"step length": "długość kroku",
|
||||
"Steps": "Kroki",
|
||||
"show widgets": "wyświetlać widżety",
|
||||
"steps": "kroki",
|
||||
"battery warn": "ostrzeżenie o akumulatorze",
|
||||
"minimum": "minimum",
|
||||
"data": "dane",
|
||||
"color": "kolor",
|
||||
"goal": "bramka",
|
||||
"Auto snooze": "Automatyczna drzemka",
|
||||
"TAP right top/bottom": "TAP prawy górny/dolny",
|
||||
"Font": "Czcionka",
|
||||
"Launcher Settings": "Ustawienia programu uruchamiającego",
|
||||
"Mark Unread": "Zaznacz nieprzeczytane",
|
||||
"Loading": "Ładowanie",
|
||||
"Vector font size": "Rozmiar czcionki wektorowej",
|
||||
"Show clocks": "Pokaż zegary",
|
||||
"App Source\nNot found": "Źródło aplikacji\nNie znaleziono",
|
||||
"colorize icon": "ubarwiać ikonę",
|
||||
"Delete all messages": "Usuń wszystkie wiadomości",
|
||||
"No Messages": "Brak komunikatów",
|
||||
"Delete All Messages": "Usuń wszystkie wiadomości",
|
||||
"Are you sure": "Czy jesteś pewien, że",
|
||||
"View Message": "Wyświetl wiadomość",
|
||||
"Music": "Muzyka",
|
||||
"Record Run": "Rekordowy bieg",
|
||||
"Bluetooth": "Bluetooth",
|
||||
"Unread timer": "Nieprzeczytany zegar",
|
||||
"Quiet Mode": "Tryb cichy",
|
||||
"Make Connectable": "Spraw, aby można było się połączyć",
|
||||
"Utils": "Narzędzia",
|
||||
"Beep": "Beep",
|
||||
"Apps": "Aplikacje",
|
||||
"Piezo": "Piezo",
|
||||
"BLE": "BLE",
|
||||
"LCD": "LCD",
|
||||
"Vibration": "Wibracje",
|
||||
"BTNs 1:startlap 2:exit 3:reset": "BTNs 1:startlap 2:exit 3:reset",
|
||||
"start&lap/reset, BTN1: EXIT": "start&lap/reset, BTN1: WYJŚCIE",
|
||||
"Foreground": "Foreground",
|
||||
"Light BW": "Światło BW",
|
||||
"HID": "HID",
|
||||
"Dark BW": "Ciemna BW",
|
||||
"Customize": "Dostosuj",
|
||||
"Passkey BETA": "Passkey BETA",
|
||||
"Background": "Tło",
|
||||
"Background 2": "Tło 2",
|
||||
"Highlight BG": "Podświetlenie BG",
|
||||
"Foreground 2": "Nowa wiedza 2",
|
||||
"Highlight FG": "Highlight FG",
|
||||
"LCD Brightness": "Jasność LCD",
|
||||
"Wake on Touch": "Wake on Touch",
|
||||
"LCD Timeout": "LCD Timeout",
|
||||
"Remove": "Usuń",
|
||||
"Wake on Twist": "Wake on Twist",
|
||||
"Wake on BTN3": "Wake na BTN3",
|
||||
"Wake on BTN2": "Wake na BTN2",
|
||||
"Connect device\nto add to\nwhitelist": "Podłącz urządzenie\ndodać do\nwhitelist",
|
||||
"Wake on BTN1": "Wake na BTN1",
|
||||
"Add Device": "Dodaj urządzenie",
|
||||
"Programmable": "Programowalna strona",
|
||||
"Wake on FaceUp": "Wake on FaceUp",
|
||||
"Clock Style": "Styl zegara",
|
||||
"Twist Threshold": "Próg skrętu",
|
||||
"Time Zone": "Strefa czasowa",
|
||||
"Twist Max Y": "Twist Max Y",
|
||||
"Twist Timeout": "Twist Timeout",
|
||||
"Utilities": "Narzędzia",
|
||||
"Debug Info": "Debug Info",
|
||||
"This will remove everything": "To spowoduje usunięcie wszystkiego",
|
||||
"Compact Storage": "Kompaktowe przechowywanie",
|
||||
"Flatten Battery": "Spłaszcz baterię",
|
||||
"Log": "Dziennik Ustaw",
|
||||
"Rewrite Settings": "Ustawienia przepisywania",
|
||||
"Storage": "Przechowywanie",
|
||||
"Reset Settings": "Resetuj ustawienia",
|
||||
"Turn Off": "Wyłączyć",
|
||||
"Minute": "Minuta",
|
||||
"Stay Connectable": "Pozostań w kontakcie",
|
||||
"Date": "Data",
|
||||
"App Settings": "Ustawienia aplikacji",
|
||||
"No app has settings": "Żadna aplikacja nie ma ustawień",
|
||||
"Connectable": "Możliwość podłączenia",
|
||||
"Year": "Rok",
|
||||
"Second": "Drugi",
|
||||
"No Clocks Found": "Nie znaleziono zegarów",
|
||||
"Hour": "Godzina",
|
||||
"Reset to Defaults": "Resetuj do ustawień domyślnych",
|
||||
"Compacting...\nTakes approx\n1 minute": "Zagęszczanie...\nTrwa ok.\n1 minuta",
|
||||
"Reset all widgets": "Wyzeruj wszystkie widżety",
|
||||
"Right": "Prawo",
|
||||
"Side": "Strona",
|
||||
"TIMER": "TIMER",
|
||||
"Sort Order": "Kolejność sortowania",
|
||||
"Reset": "Reset",
|
||||
"Invalid settings": "Nieprawidłowe ustawienia",
|
||||
"Month": "Miesiąc",
|
||||
"Widgets": "Widżety",
|
||||
"Left": "Lewa",
|
||||
"on": "na stronie",
|
||||
"Delete": "Usuń",
|
||||
"Hours": "Godziny",
|
||||
"ALARM": "ALARM",
|
||||
"Message": "Wiadomość",
|
||||
"off": "poza",
|
||||
"Reset All": "Resetuj wszystko",
|
||||
"Minutes": "Protokół",
|
||||
"Repeat": "Powtórz",
|
||||
"Enabled": "Włączone",
|
||||
"Vibrate": "Vibrate",
|
||||
"Whitelist": "Whitelist",
|
||||
"Flattening battery - this can take hours.\nLong-press button to cancel": "Rozładowanie baterii - może to trwać godzinami.\nNaciśnij długo przycisk, aby anulować",
|
||||
"Select Clock": "Wybierz zegar",
|
||||
"Theme": "Temat",
|
||||
"Locale": "Locale",
|
||||
"Error in settings": "Błąd w ustawieniach",
|
||||
"Disable": "Wyłącz",
|
||||
"Settings": "Ustawienia",
|
||||
"On": "Na stronie",
|
||||
"Hide": "Ukryj",
|
||||
"Messages": "Wiadomości",
|
||||
"Factory Reset": "Reset fabryczny",
|
||||
"System": "System",
|
||||
"Alerts": "Wpisy",
|
||||
"Set Time": "Ustawianie czasu",
|
||||
"Ok": "Ok",
|
||||
"Yes": "Tak",
|
||||
"Show": "Pokaż",
|
||||
"No": "Nie",
|
||||
"Back": "Powrót",
|
||||
"Off": "Poza"
|
||||
},
|
||||
"alarm": {
|
||||
"//": "App-specific overrides"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,163 @@
|
|||
{
|
||||
"//": "Romanian language translations",
|
||||
"GLOBAL": {
|
||||
"//": "Translations that apply for all apps",
|
||||
"New Alarm": "Alarma nouă",
|
||||
"New Timer": "Noul cronometru",
|
||||
"(repeat)": "(repetă)",
|
||||
"Save": "Salvați",
|
||||
"Auto snooze": "Repaus automat",
|
||||
"Timer": "Cronometru",
|
||||
"Alarm": "Alarma",
|
||||
"circle 2": "cercul 2",
|
||||
"circle 1": "cercul 1",
|
||||
"Sleep": "Somnul",
|
||||
"week": "săptămâna",
|
||||
"circle count": "număr de cercuri",
|
||||
"Connected": "Conectat",
|
||||
"steps": "etape",
|
||||
"battery warn": "avertizare baterie",
|
||||
"heartrate": "ritmul cardiac",
|
||||
"show widgets": "arată widget-uri",
|
||||
"Keep Msgs": "Păstrați Msgs",
|
||||
"circle 4": "cercul 4",
|
||||
"circle 3": "cercul 3",
|
||||
"minimum": "minim",
|
||||
"Heartrate": "Ritmul cardiac",
|
||||
"min. confidence": "încredere minimă",
|
||||
"distance goal": "obiectivul de distanță",
|
||||
"Steps": "Pași",
|
||||
"color": "culoare",
|
||||
"Circle": "Cerc",
|
||||
"step length": "lungimea pasului",
|
||||
"data": "date",
|
||||
"maximum": "maxim",
|
||||
"valid period": "perioada de valabilitate",
|
||||
"weather circle": "cercul meteorologic",
|
||||
"goal": "obiectiv",
|
||||
"App Source\nNot found": "Sursa aplicației\nNu a fost găsit",
|
||||
"Vector font size": "Dimensiunea fontului vectorial",
|
||||
"colorize icon": "colorați pictograma",
|
||||
"Show clocks": "Arată ceasuri",
|
||||
"Loading": "Încărcare",
|
||||
"Launcher Settings": "Setări lansator",
|
||||
"Font": "Font",
|
||||
"TAP right top/bottom": "TAP dreapta sus/jos",
|
||||
"View Message": "Vezi mesajul",
|
||||
"LCD": "LCD",
|
||||
"Beep": "Beep",
|
||||
"Vibration": "Vibrații",
|
||||
"Bluetooth": "Bluetooth",
|
||||
"Utils": "Utils",
|
||||
"start&lap/reset, BTN1: EXIT": "start&lap/reset, BTN1: EXIT",
|
||||
"BTNs 1:startlap 2:exit 3:reset": "BTN-uri 1:startlap 2:exit 3:reset",
|
||||
"Piezo": "Piezoelectrice",
|
||||
"Customize": "Personalizați",
|
||||
"Delete all messages": "Ștergeți toate mesajele",
|
||||
"Apps": "Aplicații",
|
||||
"Are you sure": "Ești sigur că",
|
||||
"Music": "Muzică",
|
||||
"Record Run": "Record Run",
|
||||
"Mark Unread": "Marcați Unread",
|
||||
"Foreground": "Prim-plan",
|
||||
"Foreground 2": "Prim-plan 2",
|
||||
"Background": "Fond",
|
||||
"Passkey BETA": "Passkey BETA",
|
||||
"Light BW": "Lumină BW",
|
||||
"Dark BW": "Dark BW",
|
||||
"Make Connectable": "Asigurați conectabilitatea",
|
||||
"HID": "HID",
|
||||
"Delete All Messages": "Ștergeți toate mesajele",
|
||||
"No Messages": "Nu există mesaje",
|
||||
"Unread timer": "Cronometru necitit",
|
||||
"Quiet Mode": "Modul silențios",
|
||||
"Programmable": "Programabil",
|
||||
"BLE": "BLE",
|
||||
"Highlight BG": "Evidențiați BG",
|
||||
"Background 2": "Context 2",
|
||||
"Highlight FG": "Evidențiați FG",
|
||||
"Remove": "Eliminați",
|
||||
"Connect device\nto add to\nwhitelist": "Conectați dispozitivul\npentru a adăuga la\nlista albă",
|
||||
"LCD Brightness": "Luminozitatea LCD",
|
||||
"Wake on FaceUp": "Trezirea pe FaceUp",
|
||||
"LCD Timeout": "Timeout LCD",
|
||||
"Add Device": "Adăugați dispozitiv",
|
||||
"Wake on Touch": "Trezire la atingere",
|
||||
"Wake on BTN1": "Trezirea pe BTN1",
|
||||
"Wake on BTN3": "Trezirea pe BTN3",
|
||||
"Debug Info": "Informații de depanare",
|
||||
"Log": "Jurnal",
|
||||
"Clock Style": "Stilul ceasului",
|
||||
"Utilities": "Utilități",
|
||||
"Wake on Twist": "Trezirea pe Twist",
|
||||
"Wake on BTN2": "Trezirea pe BTN2",
|
||||
"Twist Threshold": "Pragul de răsucire",
|
||||
"Time Zone": "Fusul orar",
|
||||
"Twist Timeout": "Twist Timeout",
|
||||
"Twist Max Y": "Twist Max Y",
|
||||
"Minute": "Minute",
|
||||
"Month": "Luna",
|
||||
"Second": "Al doilea",
|
||||
"Hour": "Ora",
|
||||
"Flatten Battery": "Aplatizare baterie",
|
||||
"Storage": "Depozitare",
|
||||
"Compact Storage": "Depozitare compactă",
|
||||
"Reset Settings": "Resetare setări",
|
||||
"Rewrite Settings": "Resetare Setări de rescriere",
|
||||
"Stay Connectable": "Rămâneți conectați",
|
||||
"No Clocks Found": "Nu s-au găsit ceasuri",
|
||||
"Turn Off": "Oprire",
|
||||
"This will remove everything": "Acest lucru va elimina totul",
|
||||
"App Settings": "Setări aplicație",
|
||||
"Year": "Anul",
|
||||
"Connectable": "Conectabil",
|
||||
"Flattening battery - this can take hours.\nLong-press button to cancel": "Baterie de aplatizare - acest lucru poate dura ore.\nApăsați lung butonul pentru a anula",
|
||||
"Compacting...\nTakes approx\n1 minute": "Compactarea...\nDurează aproximativ\n1 minut",
|
||||
"Reset to Defaults": "Resetare la valorile implicite",
|
||||
"Reset": "Resetare",
|
||||
"Widgets": "Widgeturi",
|
||||
"Reset all widgets": "Resetați toate widget-urile",
|
||||
"No app has settings": "Nici o aplicație nu are setări",
|
||||
"Left": "Stânga",
|
||||
"Side": "Lateral",
|
||||
"Date": "Data",
|
||||
"Sort Order": "Ordinea de sortare",
|
||||
"Invalid settings": "Setări nevalabile",
|
||||
"Right": "Dreapta",
|
||||
"Reset All": "Resetați toate",
|
||||
"on": "pe",
|
||||
"TIMER": "TIMER",
|
||||
"off": "off",
|
||||
"Message": "Mesaj",
|
||||
"Vibrate": "Vibrare",
|
||||
"ALARM": "ALARMĂ",
|
||||
"Delete": "Ștergeți",
|
||||
"Repeat": "Repetați",
|
||||
"Enabled": "Activat",
|
||||
"Settings": "Setări",
|
||||
"Minutes": "Proces-verbal",
|
||||
"Hours": "Ore",
|
||||
"Theme": "Tema",
|
||||
"Messages": "Mesaje",
|
||||
"Hide": "Ascundeți",
|
||||
"Alerts": "Alerte",
|
||||
"Error in settings": "Eroare în setări",
|
||||
"System": "Sistem",
|
||||
"Disable": "Dezactivați",
|
||||
"Set Time": "Set Time",
|
||||
"Factory Reset": "Resetare din fabrică",
|
||||
"Yes": "Da",
|
||||
"Select Clock": "Selectați ceasul",
|
||||
"Whitelist": "Lista albă",
|
||||
"Locale": "Locale",
|
||||
"Ok": "Ok",
|
||||
"Show": "Arată",
|
||||
"On": "Pe",
|
||||
"No": "Nu",
|
||||
"Off": "Off",
|
||||
"Back": "Înapoi"
|
||||
},
|
||||
"alarm": {
|
||||
"//": "App-specific overrides"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,163 @@
|
|||
{
|
||||
"//": "Slovak language translations",
|
||||
"GLOBAL": {
|
||||
"//": "Translations that apply for all apps",
|
||||
"New Alarm": "Nový alarm",
|
||||
"New Timer": "Nový časovač",
|
||||
"(repeat)": "(opakovanie)",
|
||||
"Alarm": "Alarm",
|
||||
"Save": "Uložiť",
|
||||
"week": "týždeň",
|
||||
"circle count": "počet kruhov",
|
||||
"Timer": "Časovač",
|
||||
"Sleep": "Spánok",
|
||||
"circle 1": "okruh 1",
|
||||
"Connected": "Pripojené",
|
||||
"Auto snooze": "Automatické odloženie",
|
||||
"circle 4": "kruh 4",
|
||||
"heartrate": "srdcová frekvencia",
|
||||
"steps": "kroky",
|
||||
"circle 2": "kruh 2",
|
||||
"Keep Msgs": "Uchovávajte správy Msgs",
|
||||
"goal": "cieľ",
|
||||
"circle 3": "kruh 3",
|
||||
"distance goal": "cieľ vzdialenosti",
|
||||
"show widgets": "zobraziť widgety",
|
||||
"maximum": "maximum",
|
||||
"minimum": "minimálne",
|
||||
"Circle": "Kruh",
|
||||
"valid period": "obdobie platnosti",
|
||||
"Steps": "Kroky",
|
||||
"data": "údaje",
|
||||
"min. confidence": "min. dôvera",
|
||||
"battery warn": "upozornenie na batériu",
|
||||
"Heartrate": "Srdcová frekvencia",
|
||||
"weather circle": "kruh počasia",
|
||||
"step length": "dĺžka kroku",
|
||||
"colorize icon": "vyfarbenie ikony",
|
||||
"color": "farba",
|
||||
"TAP right top/bottom": "TAP vpravo hore/dole",
|
||||
"App Source\nNot found": "Zdroj aplikácie\nNenájdené",
|
||||
"Loading": "Načítavanie",
|
||||
"Font": "Písmo",
|
||||
"Unread timer": "Neprečítaný časovač",
|
||||
"Music": "Hudba",
|
||||
"Mark Unread": "Označiť neprečítané",
|
||||
"View Message": "Zobraziť správu",
|
||||
"Launcher Settings": "Nastavenia spúšťača",
|
||||
"Delete All Messages": "Odstránenie všetkých správ",
|
||||
"Vector font size": "Veľkosť vektorového písma",
|
||||
"Delete all messages": "Odstránenie všetkých správ",
|
||||
"BTNs 1:startlap 2:exit 3:reset": "BTNs 1:startlap 2:exit 3:reset",
|
||||
"start&lap/reset, BTN1: EXIT": "start&lap/reset, BTN1: EXIT",
|
||||
"Are you sure": "Ste si istý, že",
|
||||
"Show clocks": "Zobraziť hodiny",
|
||||
"No Messages": "Žiadne správy",
|
||||
"Record Run": "Rekordný beh",
|
||||
"Apps": "Aplikácie",
|
||||
"Piezo": "Piezoelektrické zariadenie",
|
||||
"LCD": "LCD",
|
||||
"Programmable": "Programovateľné",
|
||||
"Utils": "Utils",
|
||||
"Foreground 2": "Popredie 2",
|
||||
"HID": "HID",
|
||||
"Vibration": "Vibrácie",
|
||||
"Make Connectable": "Urobiť pripojiteľné",
|
||||
"Bluetooth": "Bluetooth",
|
||||
"Quiet Mode": "Tichý režim",
|
||||
"Beep": "Pípnutie",
|
||||
"Passkey BETA": "Passkey BETA",
|
||||
"Dark BW": "Tmavá BW",
|
||||
"Light BW": "Light BW",
|
||||
"Foreground": "Prvé miesto",
|
||||
"Customize": "Prispôsobenie stránky",
|
||||
"Background": "Pozadie",
|
||||
"BLE": "BLE",
|
||||
"LCD Brightness": "Jas LCD displeja",
|
||||
"LCD Timeout": "Časový limit LCD displeja",
|
||||
"Add Device": "Pridať zariadenie",
|
||||
"Connect device\nto add to\nwhitelist": "Pripojenie zariadenia\npridať do\nwhitelist",
|
||||
"Remove": "Odstránenie stránky",
|
||||
"Highlight FG": "Zvýraznenie FG",
|
||||
"Wake on Touch": "Prebudenie na dotyk",
|
||||
"Background 2": "Pozadie 2",
|
||||
"Wake on BTN1": "Prebuďte sa na BTN1",
|
||||
"Wake on BTN2": "Prebuďte sa na BTN2",
|
||||
"Wake on BTN3": "Prebuďte sa na BTN3",
|
||||
"Highlight BG": "Zvýraznenie BG",
|
||||
"Wake on FaceUp": "Prebudiť sa na FaceUp",
|
||||
"Wake on Twist": "Prebudiť sa na Twiste",
|
||||
"Utilities": "Komunálne služby",
|
||||
"Rewrite Settings": "Nastavenia prepísania",
|
||||
"Log": "Prihlásiť sa",
|
||||
"Debug Info": "Informácie o ladení",
|
||||
"Storage": "Úložisko",
|
||||
"Compact Storage": "Kompaktné úložisko",
|
||||
"Twist Max Y": "Twist Max Y",
|
||||
"Twist Timeout": "Twist Timeout",
|
||||
"Time Zone": "Časové pásmo",
|
||||
"Reset Settings": "Obnovenie nastavení",
|
||||
"Clock Style": "Štýl hodín",
|
||||
"Compacting...\nTakes approx\n1 minute": "Zhutňovanie...\nTrvá približne\n1 minúta",
|
||||
"Twist Threshold": "Prahová hodnota Twist",
|
||||
"Stay Connectable": "Zostaňte pripojení",
|
||||
"Flatten Battery": "Sploštenie batérie",
|
||||
"This will remove everything": "Tým sa odstráni všetko.",
|
||||
"Connectable": "Pripojiteľné",
|
||||
"Turn Off": "Vypnúť",
|
||||
"Reset to Defaults": "Obnovenie predvolených nastavení",
|
||||
"Flattening battery - this can take hours.\nLong-press button to cancel": "Sploštenie batérie - môže trvať niekoľko hodín.\nDlhým stlačením tlačidla zrušíte",
|
||||
"No Clocks Found": "Nenašli sa žiadne hodiny",
|
||||
"Side": "Strana",
|
||||
"Date": "Dátum",
|
||||
"Second": "Druhý",
|
||||
"Hour": "Hodina",
|
||||
"Minute": "Minúta",
|
||||
"Left": "Vľavo",
|
||||
"Year": "Rok",
|
||||
"App Settings": "Nastavenia aplikácie",
|
||||
"Widgets": "Widgety",
|
||||
"Month": "Mesiac",
|
||||
"No app has settings": "Žiadna aplikácia nemá nastavenia",
|
||||
"Invalid settings": "Neplatné nastavenia",
|
||||
"Sort Order": "Poradie triedenia",
|
||||
"Reset All": "Obnoviť všetky",
|
||||
"Reset": "Obnovenie",
|
||||
"TIMER": "ČASOVAČ",
|
||||
"Right": "Vpravo",
|
||||
"Reset all widgets": "Obnovenie všetkých widgetov",
|
||||
"ALARM": "ALARM",
|
||||
"Minutes": "Zápisnica",
|
||||
"Delete": "Odstrániť",
|
||||
"off": "mimo",
|
||||
"on": "na stránke .",
|
||||
"Repeat": "Opakujte",
|
||||
"System": "Systém",
|
||||
"Enabled": "Povolené",
|
||||
"Vibrate": "Vibrovať",
|
||||
"Hours": "Hodiny",
|
||||
"Settings": "Nastavenia",
|
||||
"Select Clock": "Vybrať hodiny",
|
||||
"Alerts": "Upozornenia",
|
||||
"Message": "Správa",
|
||||
"Theme": "Téma",
|
||||
"Set Time": "Nastavený čas",
|
||||
"Locale": "Lokalita",
|
||||
"Disable": "Zakázať",
|
||||
"Messages": "Správy",
|
||||
"Error in settings": "Chyba v nastaveniach",
|
||||
"Hide": "Skryť",
|
||||
"Show": "Zobraziť",
|
||||
"On": "Na stránke",
|
||||
"Whitelist": "Biela listina",
|
||||
"Yes": "Áno",
|
||||
"Ok": "Ok",
|
||||
"Factory Reset": "Obnovenie továrenského nastavenia",
|
||||
"No": "Nie",
|
||||
"Off": "Vypnuté",
|
||||
"Back": "Späť"
|
||||
},
|
||||
"alarm": {
|
||||
"//": "App-specific overrides"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,163 @@
|
|||
{
|
||||
"//": "Slovenian language translations",
|
||||
"GLOBAL": {
|
||||
"//": "Translations that apply for all apps",
|
||||
"Alarm": "Alarm",
|
||||
"(repeat)": "(ponovitev)",
|
||||
"New Timer": "Nov časovnik",
|
||||
"New Alarm": "Nov alarm",
|
||||
"Timer": "Časomer",
|
||||
"Save": "Shrani",
|
||||
"Connected": "Povezano",
|
||||
"Keep Msgs": "Hranite sporočila Msgs",
|
||||
"circle 4": "krog 4",
|
||||
"circle 3": "krog 3",
|
||||
"Auto snooze": "Samodejni dremež",
|
||||
"circle 1": "krog 1",
|
||||
"week": "teden",
|
||||
"circle 2": "krog 2",
|
||||
"Sleep": "Spanje",
|
||||
"circle count": "štetje krogov",
|
||||
"steps": "koraki",
|
||||
"show widgets": "prikaži gradnike",
|
||||
"heartrate": "srčni utrip",
|
||||
"valid period": "veljavno obdobje",
|
||||
"maximum": "največ",
|
||||
"battery warn": "opozorilo o bateriji",
|
||||
"weather circle": "vremenski krog",
|
||||
"data": "podatki",
|
||||
"goal": "cilj",
|
||||
"step length": "dolžina koraka",
|
||||
"minimum": "najmanjši",
|
||||
"min. confidence": "min. zaupanje",
|
||||
"Heartrate": "Srčni utrip",
|
||||
"distance goal": "ciljna razdalja",
|
||||
"Steps": "Koraki",
|
||||
"color": "barva",
|
||||
"colorize icon": "obarvanje ikone",
|
||||
"App Source\nNot found": "Vir aplikacije\nNi najden",
|
||||
"Show clocks": "Prikaži ure",
|
||||
"TAP right top/bottom": "TAP desno zgoraj/spodaj",
|
||||
"View Message": "Ogled sporočila",
|
||||
"Circle": "Krog",
|
||||
"Launcher Settings": "Nastavitve zaganjalnika",
|
||||
"Vector font size": "Velikost vektorske pisave",
|
||||
"Font": "Pisava",
|
||||
"Loading": "Nalaganje",
|
||||
"Delete all messages": "Brisanje vseh sporočil",
|
||||
"No Messages": "Brez sporočil",
|
||||
"BTNs 1:startlap 2:exit 3:reset": "BTNs 1:startlap 2:exit 3:reset",
|
||||
"Are you sure": "Ste prepričani, da",
|
||||
"start&lap/reset, BTN1: EXIT": "start&lap/reset, BTN1: EXIT",
|
||||
"Mark Unread": "Označi neprebrano",
|
||||
"Utils": "Utils",
|
||||
"Record Run": "Rekordna vožnja",
|
||||
"Delete All Messages": "Brisanje vseh sporočil",
|
||||
"Unread timer": "Neprebrani časovnik",
|
||||
"Music": "Glasba",
|
||||
"LCD": "LCD",
|
||||
"Apps": "Aplikacije",
|
||||
"Bluetooth": "Bluetooth",
|
||||
"Dark BW": "Temna BW",
|
||||
"Vibration": "Vibracije",
|
||||
"Quiet Mode": "Tihi način",
|
||||
"Beep": "Beep",
|
||||
"Passkey BETA": "Passkey BETA",
|
||||
"Piezo": "Piezo",
|
||||
"HID": "HID",
|
||||
"Make Connectable": "Povežite se",
|
||||
"BLE": "BLE",
|
||||
"Programmable": "Programirljiv",
|
||||
"Light BW": "Light BW",
|
||||
"Background": "Ozadje",
|
||||
"Customize": "Prilagodite",
|
||||
"Background 2": "Ozadje 2",
|
||||
"LCD Brightness": "Svetlost LCD-ja",
|
||||
"Wake on BTN2": "Zbudi se na BTN2",
|
||||
"Wake on BTN1": "Zbudite se na BTN1",
|
||||
"LCD Timeout": "Časovna omejitev LCD",
|
||||
"Twist Max Y": "Twist Max Y",
|
||||
"Wake on Twist": "Prebudite se na Twist",
|
||||
"Twist Threshold": "Prag zasuka",
|
||||
"Foreground 2": "V ospredju 2",
|
||||
"Foreground": "Novo okolje",
|
||||
"Remove": "Odstranite",
|
||||
"Time Zone": "Časovni pas",
|
||||
"Wake on BTN3": "Wake na BTN3",
|
||||
"Highlight FG": "Poudarite FG",
|
||||
"Wake on Touch": "Zbujanje na dotik",
|
||||
"Clock Style": "Stil ure",
|
||||
"Highlight BG": "Poudarite BG",
|
||||
"Add Device": "Dodajanje naprave",
|
||||
"Connect device\nto add to\nwhitelist": "Povežite napravo\nza dodajanje v\nbeli seznam",
|
||||
"Utilities": "Storitve",
|
||||
"Wake on FaceUp": "Prebudite se v aplikaciji FaceUp",
|
||||
"Compact Storage": "Kompaktno shranjevanje",
|
||||
"Log": "Dnevnik",
|
||||
"Debug Info": "Informacije o odpravljanju napak",
|
||||
"Turn Off": "Izklopite",
|
||||
"Flatten Battery": "Sploščena baterija",
|
||||
"Reset to Defaults": "Ponastavitev na privzete nastavitve",
|
||||
"Reset Settings": "Ponastavitev nastavitev",
|
||||
"Twist Timeout": "Twist Timeout",
|
||||
"This will remove everything": "To bo odstranilo vse",
|
||||
"Rewrite Settings": "Nastavitve prepisovanja",
|
||||
"Storage": "Shranjevanje",
|
||||
"Compacting...\nTakes approx\n1 minute": "Zgoščevanje...\nVzame približno\n1 minuta",
|
||||
"No Clocks Found": "Ure niso bile najdene",
|
||||
"Stay Connectable": "Ostanite povezljivi",
|
||||
"Minute": "Minuta",
|
||||
"Connectable": "Povezljivost",
|
||||
"Hour": "Ura",
|
||||
"Flattening battery - this can take hours.\nLong-press button to cancel": "Ploščati baterijo - to lahko traja več ur.\nDolgo pritisnite gumb za preklic",
|
||||
"Second": "Drugi",
|
||||
"Month": "Mesec",
|
||||
"Date": "Datum",
|
||||
"ALARM": "ALARM",
|
||||
"Reset all widgets": "Ponastavitev vseh gradnikov",
|
||||
"Reset All": "Ponastavi vse",
|
||||
"TIMER": "TIMER",
|
||||
"Widgets": "Pripomočki",
|
||||
"Hours": "Ure",
|
||||
"Minutes": "Zapisnik",
|
||||
"Year": "Leto",
|
||||
"No app has settings": "Nobena aplikacija nima nastavitev",
|
||||
"App Settings": "Nastavitve aplikacije",
|
||||
"Repeat": "Ponovite",
|
||||
"Invalid settings": "Neveljavne nastavitve",
|
||||
"Enabled": "Omogočeno",
|
||||
"Reset": "Ponastavitev",
|
||||
"off": "izklop",
|
||||
"Side": "Stran",
|
||||
"Sort Order": "Vrstni red",
|
||||
"Left": "Leva stran",
|
||||
"Right": "Desno",
|
||||
"on": "na spletni strani .",
|
||||
"Theme": "Tema",
|
||||
"Locale": "Lokacija",
|
||||
"Alerts": "Opozorila",
|
||||
"Select Clock": "Izberite uro",
|
||||
"System": "Sistem",
|
||||
"Settings": "Nastavitve",
|
||||
"Set Time": "Čas nastavitve",
|
||||
"Whitelist": "Bela lista",
|
||||
"Message": "Sporočilo",
|
||||
"Vibrate": "Vibriranje",
|
||||
"Delete": "Izbriši",
|
||||
"Error in settings": "Napaka v nastavitvah",
|
||||
"Messages": "Sporočila",
|
||||
"Disable": "Onemogočite",
|
||||
"Show": "Prikaži",
|
||||
"Ok": "Ok",
|
||||
"On": "Na spletni strani",
|
||||
"Hide": "Skrij",
|
||||
"Factory Reset": "Ponastavitev tovarniške nastavitve",
|
||||
"Yes": "Da",
|
||||
"No": "Ne",
|
||||
"Off": "Izklopljeno",
|
||||
"Back": "Nazaj"
|
||||
},
|
||||
"alarm": {
|
||||
"//": "App-specific overrides"
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue