Skip to content

Commit c36a097

Browse files
committed
Add file export
1 parent 181e71c commit c36a097

File tree

5 files changed

+108
-53
lines changed

5 files changed

+108
-53
lines changed

src/assets/i18n/de_DE.qm

246 Bytes
Binary file not shown.

src/assets/i18n/de_DE.ts

+67-52
Original file line numberDiff line numberDiff line change
@@ -4,40 +4,40 @@
44
<context>
55
<name>Board</name>
66
<message>
7-
<location filename="../../board.py" line="593"/>
7+
<location filename="../../board.py" line="595"/>
88
<source>No board found!</source>
99
<translation>Kein Board gefunden!</translation>
1010
</message>
1111
<message>
12-
<location filename="../../board.py" line="592"/>
12+
<location filename="../../board.py" line="594"/>
1313
<source>no board</source>
1414
<translation>kein Board</translation>
1515
</message>
1616
<message>
17-
<location filename="../../board.py" line="470"/>
17+
<location filename="../../board.py" line="472"/>
1818
<source>&lt;unknown&gt;</source>
1919
<translation>&lt;unbekannt&gt;</translation>
2020
</message>
2121
<message>
22-
<location filename="../../board.py" line="483"/>
22+
<location filename="../../board.py" line="485"/>
2323
<source>Error: Board not responding to command!</source>
2424
<translation>Fehler: Board antwortet nicht auf Befehl!</translation>
2525
</message>
2626
<message>
27-
<location filename="../../board.py" line="588"/>
27+
<location filename="../../board.py" line="590"/>
2828
<source>Checking port {}</source>
2929
<translation>Untersuche Anschluss {}</translation>
3030
</message>
3131
<message>
32-
<location filename="../../board.py" line="631"/>
32+
<location filename="../../board.py" line="633"/>
3333
<source>Failed to enter repl</source>
3434
<translation>Konnte REPL nicht starten</translation>
3535
</message>
3636
</context>
3737
<context>
3838
<name>BoardThread</name>
3939
<message>
40-
<location filename="../../board.py" line="105"/>
40+
<location filename="../../board.py" line="107"/>
4141
<source>Unexpected command</source>
4242
<translation>Unbekanntes Kommando</translation>
4343
</message>
@@ -198,27 +198,27 @@ Schließlich den &apos;Ok&apos;-Knopf betätigen.</translation>
198198
<context>
199199
<name>FileView</name>
200200
<message>
201-
<location filename="../../fileview.py" line="927"/>
201+
<location filename="../../fileview.py" line="937"/>
202202
<source>A file or directory with that name already exists</source>
203203
<translation>Eine Datei mit dem Namen existiert bereits</translation>
204204
</message>
205205
<message>
206-
<location filename="../../fileview.py" line="474"/>
206+
<location filename="../../fileview.py" line="478"/>
207207
<source>The directory name must not be empty and must not contain the characters \,/,:,*,&quot;,&lt;,&gt; or |</source>
208208
<translation>Der Verzeichnisname darf nicht leer sein und darf die Zeichen \,/,:,*,&quot;,&lt;,&gt; oder | nicht entalten</translation>
209209
</message>
210210
<message>
211-
<location filename="../../fileview.py" line="504"/>
211+
<location filename="../../fileview.py" line="508"/>
212212
<source>The file name must not be empty and must not contain the characters \,/,:,*,&quot;,&lt;,&gt; or |</source>
213213
<translation>Der Dateiname darf nicht leer sein und darf die Zeichen \,/,:,*,&quot;,&lt;,&gt; oder | nicht entalten</translation>
214214
</message>
215215
<message>
216-
<location filename="../../fileview.py" line="577"/>
216+
<location filename="../../fileview.py" line="584"/>
217217
<source>The file name must not be empty!</source>
218218
<translation>Der Dateiname darf nicht leer sein!</translation>
219219
</message>
220220
<message>
221-
<location filename="../../fileview.py" line="918"/>
221+
<location filename="../../fileview.py" line="928"/>
222222
<source>A file with that name already exists</source>
223223
<translation>Eine Datei mit dem Namen existier bereits</translation>
224224
</message>
@@ -228,77 +228,77 @@ Schließlich den &apos;Ok&apos;-Knopf betätigen.</translation>
228228
<translation type="obsolete">Es können nur Python-Dateien importiert werden.</translation>
229229
</message>
230230
<message>
231-
<location filename="../../fileview.py" line="670"/>
231+
<location filename="../../fileview.py" line="677"/>
232232
<source>Really delete?</source>
233233
<translation>Wirklich löschen?</translation>
234234
</message>
235235
<message>
236-
<location filename="../../fileview.py" line="670"/>
236+
<location filename="../../fileview.py" line="677"/>
237237
<source>Do you really want to delete {} from the board?</source>
238238
<translation>Soll die Datei {} wirklich vom Gerät entfernt werden?</translation>
239239
</message>
240240
<message>
241-
<location filename="../../fileview.py" line="287"/>
241+
<location filename="../../fileview.py" line="288"/>
242242
<source>Board</source>
243243
<translation>Bord</translation>
244244
</message>
245245
<message>
246-
<location filename="../../fileview.py" line="294"/>
246+
<location filename="../../fileview.py" line="295"/>
247247
<source>Firmware...</source>
248248
<translation></translation>
249249
</message>
250250
<message>
251-
<location filename="../../fileview.py" line="304"/>
251+
<location filename="../../fileview.py" line="305"/>
252252
<source>New</source>
253253
<translation>Neu</translation>
254254
</message>
255255
<message>
256-
<location filename="../../fileview.py" line="305"/>
256+
<location filename="../../fileview.py" line="306"/>
257257
<source>File...</source>
258258
<translation>Datei...</translation>
259259
</message>
260260
<message>
261-
<location filename="../../fileview.py" line="308"/>
261+
<location filename="../../fileview.py" line="309"/>
262262
<source>Directory...</source>
263263
<translation>Verzeichnis...</translation>
264264
</message>
265265
<message>
266-
<location filename="../../fileview.py" line="314"/>
266+
<location filename="../../fileview.py" line="315"/>
267267
<source>Open</source>
268268
<translation>Öffnen</translation>
269269
</message>
270270
<message>
271-
<location filename="../../fileview.py" line="318"/>
271+
<location filename="../../fileview.py" line="319"/>
272272
<source>Rename...</source>
273273
<translation>Umbenennen...</translation>
274274
</message>
275275
<message>
276-
<location filename="../../fileview.py" line="322"/>
276+
<location filename="../../fileview.py" line="323"/>
277277
<source>Delete...</source>
278278
<translation>Löschen...</translation>
279279
</message>
280280
<message>
281-
<location filename="../../fileview.py" line="391"/>
281+
<location filename="../../fileview.py" line="395"/>
282282
<source>Examples</source>
283283
<translation>Beispiele</translation>
284284
</message>
285285
<message>
286-
<location filename="../../fileview.py" line="469"/>
286+
<location filename="../../fileview.py" line="473"/>
287287
<source>New directory</source>
288288
<translation>Neues Verzeichnis</translation>
289289
</message>
290290
<message>
291-
<location filename="../../fileview.py" line="469"/>
291+
<location filename="../../fileview.py" line="473"/>
292292
<source>Enter new directory name:</source>
293293
<translation>Neuen Verzeichnisnamen eingeben:</translation>
294294
</message>
295295
<message>
296-
<location filename="../../fileview.py" line="500"/>
296+
<location filename="../../fileview.py" line="504"/>
297297
<source>New file</source>
298298
<translation>Neue Datei</translation>
299299
</message>
300300
<message>
301-
<location filename="../../fileview.py" line="500"/>
301+
<location filename="../../fileview.py" line="504"/>
302302
<source>Enter new file name:</source>
303303
<translation>Neuen Dateinamen eingeben:</translation>
304304
</message>
@@ -308,17 +308,17 @@ Schließlich den &apos;Ok&apos;-Knopf betätigen.</translation>
308308
<translation type="obsolete">Sicherung...</translation>
309309
</message>
310310
<message>
311-
<location filename="../../fileview.py" line="297"/>
311+
<location filename="../../fileview.py" line="298"/>
312312
<source>Backup</source>
313313
<translation>Sicherung</translation>
314314
</message>
315315
<message>
316-
<location filename="../../fileview.py" line="298"/>
316+
<location filename="../../fileview.py" line="299"/>
317317
<source>Create...</source>
318318
<translation>Erstellen...</translation>
319319
</message>
320320
<message>
321-
<location filename="../../fileview.py" line="301"/>
321+
<location filename="../../fileview.py" line="302"/>
322322
<source>Restore...</source>
323323
<translation>Wiederherstellen...</translation>
324324
</message>
@@ -328,10 +328,15 @@ Schließlich den &apos;Ok&apos;-Knopf betätigen.</translation>
328328
<translation type="obsolete">vom PC...</translation>
329329
</message>
330330
<message>
331-
<location filename="../../fileview.py" line="311"/>
331+
<location filename="../../fileview.py" line="312"/>
332332
<source>Import from PC...</source>
333333
<translation>Vom PC importieren...</translation>
334334
</message>
335+
<message>
336+
<location filename="../../fileview.py" line="327"/>
337+
<source>Export to PC...</source>
338+
<translation>Zum PC exportieren...</translation>
339+
</message>
335340
</context>
336341
<context>
337342
<name>Window</name>
@@ -361,22 +366,22 @@ Schließlich den &apos;Ok&apos;-Knopf betätigen.</translation>
361366
<translation>Führe Code aus ...</translation>
362367
</message>
363368
<message>
364-
<location filename="../../upide_noscan.py" line="573"/>
369+
<location filename="../../upide_noscan.py" line="601"/>
365370
<source>{0} connected, MicroPython V{1} on {2}</source>
366371
<translation>{0} verbunden, MicroPython V{1} auf {2}</translation>
367372
</message>
368373
<message>
369-
<location filename="../../upide_noscan.py" line="622"/>
374+
<location filename="../../upide_noscan.py" line="650"/>
370375
<source>Search done</source>
371376
<translation>Suche beendet</translation>
372377
</message>
373378
<message>
374-
<location filename="../../upide_noscan.py" line="757"/>
379+
<location filename="../../upide_noscan.py" line="785"/>
375380
<source>Connecting port {}...</source>
376381
<translation>Verbinde port {}...</translation>
377382
</message>
378383
<message>
379-
<location filename="../../upide_noscan.py" line="800"/>
384+
<location filename="../../upide_noscan.py" line="828"/>
380385
<source>Starting ...</source>
381386
<translation>Starte ...</translation>
382387
</message>
@@ -386,7 +391,7 @@ Schließlich den &apos;Ok&apos;-Knopf betätigen.</translation>
386391
<translation>Wirklich beenden?</translation>
387392
</message>
388393
<message>
389-
<location filename="../../upide_noscan.py" line="458"/>
394+
<location filename="../../upide_noscan.py" line="485"/>
390395
<source>Import failed</source>
391396
<translation>Importieren fehlgeschlagen</translation>
392397
</message>
@@ -396,69 +401,69 @@ Schließlich den &apos;Ok&apos;-Knopf betätigen.</translation>
396401
<translation>Der Arbeitsplatz enthält ungespeicherte Änderungen.</translation>
397402
</message>
398403
<message>
399-
<location filename="../../upide_noscan.py" line="605"/>
404+
<location filename="../../upide_noscan.py" line="633"/>
400405
<source>Flash...</source>
401406
<translation>Flashen...</translation>
402407
</message>
403408
<message>
404-
<location filename="../../upide_noscan.py" line="600"/>
409+
<location filename="../../upide_noscan.py" line="628"/>
405410
<source>No board found</source>
406411
<translation>Kein Bord gefunden</translation>
407412
</message>
408413
<message>
409-
<location filename="../../upide_noscan.py" line="600"/>
414+
<location filename="../../upide_noscan.py" line="628"/>
410415
<source>No MicroPython board was detected!</source>
411416
<translation>Kein Micropython-Bord wurde erkannt!</translation>
412417
</message>
413418
<message>
414-
<location filename="../../upide_noscan.py" line="600"/>
419+
<location filename="../../upide_noscan.py" line="628"/>
415420
<source>Do you want to flash the MicroPython firmware or retry searching for a MicroPython board?</source>
416421
<translation>Möchten Sie die Micropython-Firmware flashen oder die Suche wiederholen?</translation>
417422
</message>
418423
<message>
419-
<location filename="../../upide_noscan.py" line="666"/>
424+
<location filename="../../upide_noscan.py" line="694"/>
420425
<source>Stopped by user</source>
421426
<translation>Durch Benutzer abgebrochen</translation>
422427
</message>
423428
<message>
424-
<location filename="../../upide_noscan.py" line="468"/>
429+
<location filename="../../upide_noscan.py" line="495"/>
425430
<source>Error</source>
426431
<translation>Fehler</translation>
427432
</message>
428433
<message>
429-
<location filename="../../upide_noscan.py" line="773"/>
434+
<location filename="../../upide_noscan.py" line="801"/>
430435
<source>Connection to board lost</source>
431436
<translation>Verbindung zum Bord verloren</translation>
432437
</message>
433438
<message>
434-
<location filename="../../upide_noscan.py" line="776"/>
439+
<location filename="../../upide_noscan.py" line="804"/>
435440
<source>Board lost</source>
436441
<translation>Bord verloren</translation>
437442
</message>
438443
<message>
439-
<location filename="../../upide_noscan.py" line="776"/>
444+
<location filename="../../upide_noscan.py" line="804"/>
440445
<source>The connection to the board has been lost!
441446
Do you want to reconnect?</source>
442447
<translation>Die Verbindung zum Bord wurde verloren!
443448
Soll versucht werden, die Verbindung wieder herzustellen?</translation>
444449
</message>
445450
<message>
446-
<location filename="../../upide_noscan.py" line="558"/>
451+
<location filename="../../upide_noscan.py" line="586"/>
447452
<source>Interactive mode active</source>
448453
<translation>Interaktiver Modus aktiv</translation>
449454
</message>
450455
<message>
451-
<location filename="../../upide_noscan.py" line="545"/>
456+
<location filename="../../upide_noscan.py" line="573"/>
452457
<source>Interactive mode done</source>
453458
<translation>Interaktiver Modus beendet</translation>
454459
</message>
455460
<message>
456-
<location filename="../../upide_noscan.py" line="715"/>
461+
<location filename="../../upide_noscan.py" line="743"/>
457462
<source>Select port</source>
458463
<translation>Anschlussauswahl</translation>
459464
</message>
460465
<message>
461-
<location filename="../../upide_noscan.py" line="725"/>
466+
<location filename="../../upide_noscan.py" line="753"/>
462467
<source>Port:</source>
463468
<translation>Anschluss:</translation>
464469
</message>
@@ -483,7 +488,7 @@ Soll versucht werden, die Verbindung wieder herzustellen?</translation>
483488
<translation>Erzeuge Sicherung</translation>
484489
</message>
485490
<message>
486-
<location filename="../../upide_noscan.py" line="385"/>
491+
<location filename="../../upide_noscan.py" line="412"/>
487492
<source>Backup archive (*.zip)</source>
488493
<translation>Sicherungsarchiv (*.zip)</translation>
489494
</message>
@@ -503,7 +508,7 @@ Soll versucht werden, die Verbindung wieder herzustellen?</translation>
503508
<translation>Stelle wieder her: </translation>
504509
</message>
505510
<message>
506-
<location filename="../../upide_noscan.py" line="385"/>
511+
<location filename="../../upide_noscan.py" line="412"/>
507512
<source>Restore backup</source>
508513
<translation>Sicherung wiederherstellen</translation>
509514
</message>
@@ -518,7 +523,7 @@ Soll versucht werden, die Verbindung wieder herzustellen?</translation>
518523
<translation>Datei importieren</translation>
519524
</message>
520525
<message>
521-
<location filename="../../upide_noscan.py" line="368"/>
526+
<location filename="../../upide_noscan.py" line="394"/>
522527
<source>Any file (*)</source>
523528
<translation>Alle Dateien (*)</translation>
524529
</message>
@@ -537,5 +542,15 @@ Soll versucht werden, die Verbindung wieder herzustellen?</translation>
537542
<source>A file with that name already exists.</source>
538543
<translation>Eine Datei mit dem Namen existiert bereits.</translation>
539544
</message>
545+
<message>
546+
<location filename="../../upide_noscan.py" line="390"/>
547+
<source>Exported {}</source>
548+
<translation>{} exportiert</translation>
549+
</message>
550+
<message>
551+
<location filename="../../upide_noscan.py" line="394"/>
552+
<source>Export file</source>
553+
<translation>Datei exportieren</translation>
554+
</message>
540555
</context>
541556
</TS>

src/board.py

+2
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,8 @@ def run(self):
9393
}
9494
# forware error information for highlighting if present
9595
if "error" in self.parms: result["error"] = self.parms["error"]
96+
# and also the target filename when exporting
97+
if "fname" in self.parms: result["fname"] = self.parms["fname"]
9698
self.board.queue.put( (Board.RESULT, True, result) )
9799
elif self.cmd_code == Board.RUN:
98100
self.board.run(self.parms["code"], self.run_output)

0 commit comments

Comments
 (0)