eric6/i18n/eric6_zh_CN.ts

changeset 8097
5af9c426c46b
parent 8090
c53117374255
child 8108
a42ae6be4cc3
--- a/eric6/i18n/eric6_zh_CN.ts	Fri Feb 12 16:15:18 2021 +0100
+++ b/eric6/i18n/eric6_zh_CN.ts	Fri Feb 12 19:16:12 2021 +0100
@@ -3043,27 +3043,27 @@
         <translation type="obsolete">CircuitPython 的 Python 文件储存在该设备中。因此,要编辑该文件,您需插入该设备。在您插入设备前,将使用标准目录。</translation>
     </message>
     <message>
-        <location filename="../MicroPython/CircuitPythonDevices.py" line="250"/>
+        <location filename="../MicroPython/CircuitPythonDevices.py" line="247"/>
         <source>Flash CircuitPython Firmware</source>
         <translation>刷新 CircuitPython 固件</translation>
     </message>
     <message>
-        <location filename="../MicroPython/CircuitPythonDevices.py" line="279"/>
+        <location filename="../MicroPython/CircuitPythonDevices.py" line="276"/>
         <source>Install Library Files</source>
         <translation>安装库文件</translation>
     </message>
     <message>
         <location filename="../MicroPython/CircuitPythonDevices.py" line="229"/>
         <source>Please reset the device to bootloader mode and confirm when ready.</source>
-        <translation>请重置该设备至启动加载(BootLoader)模式,当设备准备好时确认。</translation>
-    </message>
-    <message>
-        <location filename="../MicroPython/CircuitPythonDevices.py" line="267"/>
+        <translation type="obsolete">请重置该设备至启动加载(BootLoader)模式,当设备准备好时确认。</translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/CircuitPythonDevices.py" line="264"/>
         <source>The device volume &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; is not available. Ensure it is mounted properly and try again.</source>
         <translation>该设备卷 &quot;&lt;b&gt;{0}&lt;/b&gt;&quot; 不可用。确认其已正确挂载后重试。</translation>
     </message>
     <message>
-        <location filename="../MicroPython/CircuitPythonDevices.py" line="279"/>
+        <location filename="../MicroPython/CircuitPythonDevices.py" line="276"/>
         <source>Compiled Python Files (*.mpy);;Python Files (*.py);;All Files (*)</source>
         <translation>编译 Python 文件 (*.mpy);;Python 文件 (*.py);;所有文件 (*)</translation>
     </message>
@@ -3073,17 +3073,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/CircuitPythonDevices.py" line="309"/>
+        <location filename="../MicroPython/CircuitPythonDevices.py" line="306"/>
         <source>CircuitPython Firmware</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/CircuitPythonDevices.py" line="311"/>
+        <location filename="../MicroPython/CircuitPythonDevices.py" line="308"/>
         <source>CircuitPython Libraries</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/CircuitPythonDevices.py" line="250"/>
+        <location filename="../MicroPython/CircuitPythonDevices.py" line="247"/>
         <source>&lt;p&gt;Teensy 4.0 and Teensy 4.1 do not support the UF2 bootloader. Please use the &apos;Teensy Loader&apos; application to flash CircuitPython. Make sure you downloaded the CircuitPython .hex file.&lt;/p&gt;&lt;p&gt;See &lt;a href=&quot;{0}&quot;&gt;the PJRC Teensy web site&lt;/a&gt; for details.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -3093,77 +3093,62 @@
     <message>
         <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.ui" line="14"/>
         <source>Flash CircuitPython Firmware</source>
-        <translation>刷新 CircuitPython 固件</translation>
+        <translation type="obsolete">刷新 CircuitPython 固件</translation>
     </message>
     <message>
         <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.ui" line="23"/>
         <source>Select the board type or &apos;Manual&apos;</source>
-        <translation>选择主板型号或“手动”</translation>
+        <translation type="obsolete">选择主板型号或“手动”</translation>
     </message>
     <message>
         <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.ui" line="36"/>
         <source>Enter the path of the CircuitPython firmware file</source>
-        <translation>输入 CircuitPython 固件文件的路径</translation>
+        <translation type="obsolete">输入 CircuitPython 固件文件的路径</translation>
     </message>
     <message>
         <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.ui" line="56"/>
         <source>Firmware:</source>
-        <translation>固件:</translation>
+        <translation type="obsolete">固件:</translation>
     </message>
     <message>
         <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.ui" line="63"/>
         <source>Boot Path:</source>
-        <translation>启动路径:</translation>
+        <translation type="obsolete">启动路径:</translation>
     </message>
     <message>
         <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.ui" line="70"/>
         <source>Board Type:</source>
-        <translation>主板型号:</translation>
+        <translation type="obsolete">主板型号:</translation>
     </message>
     <message>
         <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.ui" line="80"/>
         <source>Enter the path to the device in bootloader mode</source>
-        <translation>输入处于启动加载(BootLoader)模式下的设备路径</translation>
+        <translation type="obsolete">输入处于启动加载(BootLoader)模式下的设备路径</translation>
     </message>
     <message>
         <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.ui" line="100"/>
         <source>Press to search the selected volume</source>
-        <translation>按下以搜索已选择的卷</translation>
+        <translation type="obsolete">按下以搜索已选择的卷</translation>
     </message>
     <message>
         <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.py" line="116"/>
         <source>CircuitPython Firmware Files (*.uf2);;All Files (*)</source>
-        <translation>CircuitPython 固件文件 (*.uf2);;所有文件 (*)</translation>
+        <translation type="obsolete">CircuitPython 固件文件 (*.uf2);;所有文件 (*)</translation>
     </message>
     <message>
         <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.py" line="170"/>
         <source>Select Path to Device</source>
-        <translation>选择设备路径</translation>
+        <translation type="obsolete">选择设备路径</translation>
     </message>
     <message>
         <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.py" line="170"/>
         <source>&lt;p&gt;The device volume &lt;b&gt;{0}&lt;/b&gt; could not be found. Is the device in &apos;bootloader&apos; mode and mounted?&lt;/p&gt; &lt;p&gt;Alternatively select the &quot;Manual Select&quot; entry and enter the path to the device below.&lt;/p&gt;</source>
-        <translation>&lt;p&gt;该设备卷 &lt;b&gt;{0}&lt;/b&gt; 无法找到。该设备已处于启动加载(BootLoader)状态并挂载?&lt;/p&gt; &lt;p&gt;亦可选择“手动选择”并在下方输入该设备的路径。&lt;/p&gt;</translation>
+        <translation type="obsolete">&lt;p&gt;该设备卷 &lt;b&gt;{0}&lt;/b&gt; 无法找到。该设备已处于启动加载(BootLoader)状态并挂载?&lt;/p&gt; &lt;p&gt;亦可选择“手动选择”并在下方输入该设备的路径。&lt;/p&gt;</translation>
     </message>
     <message>
         <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.py" line="132"/>
         <source>Manual Select</source>
-        <translation>手动选择</translation>
-    </message>
-    <message>
-        <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.py" line="32"/>
-        <source>--- Others ---</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.py" line="158"/>
-        <source>There are multiple devices in &apos;bootloader&apos; mode and mounted. Please make sure, that only one device is prepared for flashing.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../MicroPython/CircuitPythonFirmwareSelectionDialog.py" line="128"/>
-        <source>--- Local Devices ---</source>
-        <translation type="unfinished"></translation>
+        <translation type="obsolete">手动选择</translation>
     </message>
 </context>
 <context>
@@ -18346,17 +18331,17 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="176"/>
+        <location filename="../MicroPython/EspDevices.py" line="185"/>
         <source>Erase Flash</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="216"/>
+        <location filename="../MicroPython/EspDevices.py" line="225"/>
         <source>Flash MicroPython Firmware</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="247"/>
+        <location filename="../MicroPython/EspDevices.py" line="256"/>
         <source>Flash Additional Firmware</source>
         <translation type="unfinished"></translation>
     </message>
@@ -18366,22 +18351,22 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="164"/>
+        <location filename="../MicroPython/EspDevices.py" line="173"/>
         <source>Shall the flash of the selected device really be erased?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="176"/>
+        <location filename="../MicroPython/EspDevices.py" line="185"/>
         <source>&apos;esptool erase_flash&apos; Output</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="199"/>
+        <location filename="../MicroPython/EspDevices.py" line="208"/>
         <source>Unsupported chip type &apos;{0}&apos;.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="308"/>
+        <location filename="../MicroPython/EspDevices.py" line="317"/>
         <source>&apos;esptool write_flash&apos; Output</source>
         <translation type="unfinished"></translation>
     </message>
@@ -18391,47 +18376,47 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="274"/>
+        <location filename="../MicroPython/EspDevices.py" line="283"/>
         <source>Backup Firmware</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="308"/>
+        <location filename="../MicroPython/EspDevices.py" line="317"/>
         <source>Restore Firmware</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="326"/>
+        <location filename="../MicroPython/EspDevices.py" line="335"/>
         <source>Show Chip ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="343"/>
+        <location filename="../MicroPython/EspDevices.py" line="352"/>
         <source>Show Flash ID</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="360"/>
+        <location filename="../MicroPython/EspDevices.py" line="369"/>
         <source>Show MAC Address</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="274"/>
+        <location filename="../MicroPython/EspDevices.py" line="283"/>
         <source>&apos;esptool read_flash&apos; Output</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="326"/>
+        <location filename="../MicroPython/EspDevices.py" line="335"/>
         <source>&apos;esptool chip_id&apos; Output</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="343"/>
+        <location filename="../MicroPython/EspDevices.py" line="352"/>
         <source>&apos;esptool flash_id&apos; Output</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/EspDevices.py" line="360"/>
+        <location filename="../MicroPython/EspDevices.py" line="369"/>
         <source>&apos;esptool read_mac&apos; Output</source>
         <translation type="unfinished"></translation>
     </message>
@@ -47873,37 +47858,37 @@
 <context>
     <name>MicroPythonDevice</name>
     <message>
-        <location filename="../MicroPython/MicroPythonDevices.py" line="337"/>
+        <location filename="../MicroPython/MicroPythonDevices.py" line="342"/>
         <source>Unsupported Device</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonDevices.py" line="347"/>
+        <location filename="../MicroPython/MicroPythonDevices.py" line="352"/>
         <source>REPL is not supported by this device.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonDevices.py" line="366"/>
+        <location filename="../MicroPython/MicroPythonDevices.py" line="371"/>
         <source>Plotter is not supported by this device.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonDevices.py" line="385"/>
+        <location filename="../MicroPython/MicroPythonDevices.py" line="390"/>
         <source>Running scripts is not supported by this device.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonDevices.py" line="405"/>
+        <location filename="../MicroPython/MicroPythonDevices.py" line="410"/>
         <source>File Manager is not supported by this device.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonDevices.py" line="448"/>
+        <location filename="../MicroPython/MicroPythonDevices.py" line="453"/>
         <source>Select Device Directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonDevices.py" line="448"/>
+        <location filename="../MicroPython/MicroPythonDevices.py" line="453"/>
         <source>Select the directory for the connected device:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -48305,7 +48290,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="390"/>
+        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="413"/>
         <source>Enter the URL for the BBC micro:bit MicroPython documentation</source>
         <translation type="unfinished"></translation>
     </message>
@@ -48395,32 +48380,32 @@
         <translation type="unfinished">Qt</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="400"/>
+        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="423"/>
         <source>Calliope mini:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="413"/>
+        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="436"/>
         <source>Enter the URL for the Callope mini Firmware</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="441"/>
+        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="464"/>
         <source>Enter the URL for the Calliope mini MicroPython documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="258"/>
+        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="369"/>
         <source>MicroPython</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="406"/>
+        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="429"/>
         <source>Firmware:</source>
         <translation type="unfinished">固件:</translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="434"/>
+        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="457"/>
         <source>Documentation:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -48440,16 +48425,11 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="420"/>
+        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="443"/>
         <source>MicroPython:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="376"/>
-        <source>Enter the URL for the BBC micro:bit MicroPython Firmware</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="37"/>
         <source>Workspace</source>
         <translation type="unfinished">工作区</translation>
@@ -48470,10 +48450,30 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="427"/>
+        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="450"/>
         <source>Enter the URL for the Calliope mini MicroPython Firmware</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="375"/>
+        <source>micro:bit V1:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="382"/>
+        <source>Enter the URL for the BBC micro:bit V1 MicroPython Firmware</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="389"/>
+        <source>micro:bit V2:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Preferences/ConfigurationPages/MicroPythonPage.ui" line="396"/>
+        <source>Enter the URL for the BBC micro:bit V2 MicroPython Firmware</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>MicroPythonProgressInfoDialog</name>
@@ -48516,54 +48516,54 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="529"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="531"/>
         <source>Press to connect the selected device</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="271"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="270"/>
         <source>&lt;h3&gt;The QtSerialPort package is not available.&lt;br/&gt;MicroPython support is deactivated.&lt;/h3&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message numerus="yes">
-        <location filename="../MicroPython/MicroPythonWidget.py" line="308"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="307"/>
         <source>%n supported device(s) detected.</source>
         <translation type="unfinished">
             <numerusform></numerusform>
         </translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="330"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="329"/>
         <source>No supported devices detected.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="499"/>
-        <source>Clear</source>
-        <translation type="unfinished">清除</translation>
-    </message>
-    <message>
         <location filename="../MicroPython/MicroPythonWidget.py" line="501"/>
+        <source>Clear</source>
+        <translation type="unfinished">清除</translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="503"/>
         <source>Copy</source>
         <translation type="unfinished">复制</translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="502"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="504"/>
         <source>Paste</source>
         <translation type="unfinished">粘贴</translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="524"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="526"/>
         <source>Press to disconnect the current device</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="545"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="547"/>
         <source>No device attached</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="545"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="547"/>
         <source>Please ensure the device is plugged into your computer and selected.
 
 It must have a version of MicroPython (or CircuitPython) flashed onto it before anything will work.
@@ -48572,217 +48572,217 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="572"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="574"/>
         <source>Start REPL</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="572"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="574"/>
         <source>&lt;p&gt;The REPL cannot be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="974"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="976"/>
         <source>Serial Device Connect</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="974"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="976"/>
         <source>&lt;p&gt;Cannot connect to device at serial port &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1019"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1021"/>
         <source>Run Script</source>
         <translation type="unfinished">运行脚本</translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1002"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1004"/>
         <source>There is no editor open. Abort...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1010"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1012"/>
         <source>The current editor does not contain a script. Abort...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1019"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1021"/>
         <source>&lt;p&gt;Cannot run script.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1043"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1045"/>
         <source>Open Python File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1043"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1045"/>
         <source>Python3 Files (*.py);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1088"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1090"/>
         <source>Start Chart</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1088"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1090"/>
         <source>&lt;p&gt;The Chart cannot be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1117"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1119"/>
         <source>Unsaved Chart Data</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1117"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1119"/>
         <source>The chart contains unsaved data.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1168"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1170"/>
         <source>Start File Manager</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1168"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1170"/>
         <source>&lt;p&gt;The File Manager cannot be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1239"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1241"/>
         <source>Show Version</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1242"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1244"/>
         <source>Show Implementation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1364"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1370"/>
         <source>Synchronize Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1250"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1252"/>
         <source>Show Device Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1253"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1255"/>
         <source>Show Local Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1582"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1588"/>
         <source>Compile Python File</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1602"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1608"/>
         <source>Compile Current Editor</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1301"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1307"/>
         <source>&lt;h3&gt;Device Version Information&lt;/h3&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1310"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1316"/>
         <source>No version information available.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1312"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1318"/>
         <source>Device Version Information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1335"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1341"/>
         <source>unknown</source>
         <translation type="unfinished">未知</translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1339"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1345"/>
         <source>Device Implementation Information</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1339"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1345"/>
         <source>&lt;h3&gt;Device Implementation Information&lt;/h3&gt;&lt;p&gt;This device contains &lt;b&gt;{0} {1}&lt;/b&gt;.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1364"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1370"/>
         <source>&lt;p&gt;The time of the connected device was synchronized with the local time.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1386"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1392"/>
         <source>&lt;h3&gt;Device Date and Time&lt;/h3&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Date&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Time&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{1}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1394"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1400"/>
         <source>&lt;h3&gt;Device Date and Time&lt;/h3&gt;&lt;p&gt;{0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1409"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1415"/>
         <source>Device Date and Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1422"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1428"/>
         <source>Local Date and Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1422"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1428"/>
         <source>&lt;h3&gt;Local Date and Time&lt;/h3&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Date&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Time&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{1}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1490"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1496"/>
         <source>Error handling device</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1490"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1496"/>
         <source>&lt;p&gt;There was an error communicating with the connected device.&lt;/p&gt;&lt;p&gt;Method: {0}&lt;/p&gt;&lt;p&gt;Message: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1530"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1536"/>
         <source>The MicroPython cross compiler &lt;b&gt;mpy-cross&lt;/b&gt; cannot be found. Ensure it is in the search path or configure it on the MicroPython configuration page.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1552"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1558"/>
         <source>Python Files (*.py);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1562"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1568"/>
         <source>The Python file &lt;b&gt;{0}&lt;/b&gt; does not exist. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1572"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1578"/>
         <source>&apos;mpy-cross&apos; Output</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1595"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1601"/>
         <source>The current editor does not contain a Python file. Aborting...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="219"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="218"/>
         <source>MicroPython Menu</source>
         <translation type="unfinished"></translation>
     </message>
@@ -48792,102 +48792,107 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1101"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1103"/>
         <source>&#xc2;&#xb5;Py Chart</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1184"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1186"/>
         <source>&#xc2;&#xb5;Py Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1282"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1284"/>
         <source>Show Documentation</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1291"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1297"/>
         <source>Configure</source>
         <translation type="unfinished">配置</translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1256"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1258"/>
         <source>Show Time</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1275"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1277"/>
         <source>Download Firmware</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1465"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1471"/>
         <source>Date and Time</source>
         <translation type="unfinished">日期和时间</translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1448"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1454"/>
         <source>&lt;table&gt;&lt;tr&gt;&lt;th&gt;&lt;/th&gt;&lt;th&gt;Local Date and Time&lt;/th&gt;&lt;th&gt;Device Date and Time&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Date&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;center&apos;&gt;{0}&lt;/td&gt;&lt;td align=&apos;center&apos;&gt;{2}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Time&lt;/b&gt;&lt;/td&gt;&lt;td align=&apos;center&apos;&gt;{1}&lt;/td&gt;&lt;td align=&apos;center&apos;&gt;{3}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1465"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1471"/>
         <source>&lt;table&gt;&lt;tr&gt;&lt;th&gt;Local Date and Time&lt;/th&gt;&lt;th&gt;Device Date and Time&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align=&apos;center&apos;&gt;{0} {1}&lt;/td&gt;&lt;td align=&apos;center&apos;&gt;{2}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="380"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="382"/>
         <source>Unknown MicroPython Device</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1288"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1294"/>
         <source>Ignored Serial Devices</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1224"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1226"/>
         <source>Downloads</source>
         <translation type="unfinished">下载</translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="313"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="312"/>
         <source>{0} - {1} ({2})</source>
         <comment>board name, description, port name</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="352"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="354"/>
         <source>&lt;p&gt;Detected these unknown serial devices&lt;/p&gt;&lt;ul&gt;&lt;li&gt;{0}&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Please report them together with the board name and a short description to &lt;a href=&quot;mailto:{1}&quot;&gt; the eric bug reporting address&lt;/a&gt; if it is a MicroPython board.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="352"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="354"/>
         <source>{0} (0x{1:04x}/0x{2:04x})</source>
         <comment>description, VId, PId</comment>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="380"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="382"/>
         <source>Would you like to add them to the list of manually configured devices?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1286"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1292"/>
         <source>Manage Unknown Devices</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1687"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1693"/>
         <source>Add Unknown Devices</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicroPythonWidget.py" line="1687"/>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1693"/>
         <source>Select the devices to be added:</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="../MicroPython/MicroPythonWidget.py" line="1289"/>
+        <source>Flash UF2 Device</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>MicrobitDevice</name>
@@ -48912,32 +48917,32 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicrobitDevices.py" line="317"/>
+        <location filename="../MicroPython/MicrobitDevices.py" line="326"/>
         <source>The script is empty. Aborting.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicrobitDevices.py" line="307"/>
+        <location filename="../MicroPython/MicrobitDevices.py" line="316"/>
         <source>The current editor does not contain a Python script. Write it anyway?</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicrobitDevices.py" line="345"/>
+        <location filename="../MicroPython/MicrobitDevices.py" line="354"/>
         <source>&lt;p&gt;The script could not be saved to the device.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicrobitDevices.py" line="304"/>
+        <location filename="../MicroPython/MicrobitDevices.py" line="313"/>
         <source>Save Script</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../MicroPython/MicrobitDevices.py" line="343"/>
+        <source>Save Script as &apos;{0}&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../MicroPython/MicrobitDevices.py" line="334"/>
-        <source>Save Script as &apos;{0}&apos;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../MicroPython/MicrobitDevices.py" line="325"/>
         <source>Enter a file name on the device:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -48967,48 +48972,58 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicrobitDevices.py" line="273"/>
+        <location filename="../MicroPython/MicrobitDevices.py" line="282"/>
         <source>Flash MicroPython/Firmware</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicrobitDevices.py" line="201"/>
+        <location filename="../MicroPython/MicrobitDevices.py" line="210"/>
         <source>&lt;p&gt;The BBC micro:bit is not ready for flashing the DAPLink firmware. Follow these instructions. &lt;/p&gt;&lt;ul&gt;&lt;li&gt;unplug USB cable and any batteries&lt;/li&gt;&lt;li&gt;keep RESET button pressed an plug USB cable back in&lt;/li&gt;&lt;li&gt;a drive called MAINTENANCE should be available&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;See the &lt;a href=&quot;https://microbit.org/guide/firmware/&quot;&gt;micro:bit web site&lt;/a&gt; for details.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicrobitDevices.py" line="221"/>
+        <location filename="../MicroPython/MicrobitDevices.py" line="230"/>
         <source>&lt;p&gt;The BBC micro:bit is not ready for flashing the MicroPython firmware. Please make sure, that a drive called MICROBIT is available.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicrobitDevices.py" line="234"/>
+        <location filename="../MicroPython/MicrobitDevices.py" line="243"/>
         <source>&lt;p&gt;The &quot;Calliope mini&quot; is not ready for flashing the DAPLink firmware. Follow these instructions. &lt;/p&gt;&lt;ul&gt;&lt;li&gt;unplug USB cable and any batteries&lt;/li&gt;&lt;li&gt;keep RESET button pressed an plug USB cable back in&lt;/li&gt;&lt;li&gt;a drive called MAINTENANCE should be available&lt;/li&gt;&lt;/ul&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicrobitDevices.py" line="251"/>
+        <location filename="../MicroPython/MicrobitDevices.py" line="260"/>
         <source>&lt;p&gt;The &quot;Calliope mini&quot; is not ready for flashing the MicroPython firmware. Please make sure, that a drive called MINI is available.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicrobitDevices.py" line="264"/>
+        <location filename="../MicroPython/MicrobitDevices.py" line="273"/>
         <source>MicroPython/Firmware Files (*.hex *.bin);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/MicrobitDevices.py" line="404"/>
+        <location filename="../MicroPython/MicrobitDevices.py" line="415"/>
         <source>MicroPython Firmware</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="../MicroPython/MicrobitDevices.py" line="417"/>
+        <source>DAPLink Firmware</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/MicrobitDevices.py" line="282"/>
+        <source>There are multiple devices ready for flashing. Please make sure, that only one device is prepared.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="../MicroPython/MicrobitDevices.py" line="406"/>
-        <source>DAPLink Firmware</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../MicroPython/MicrobitDevices.py" line="273"/>
-        <source>There are multiple devices ready for flashing. Please make sure, that only one device is prepared.</source>
+        <source>MicroPython Firmware for BBC micro:bit V1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/MicrobitDevices.py" line="408"/>
+        <source>MicroPython Firmware for BBC micro:bit V2</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
@@ -54605,17 +54620,17 @@
 <context>
     <name>Preferences</name>
     <message>
-        <location filename="../Preferences/__init__.py" line="1636"/>
+        <location filename="../Preferences/__init__.py" line="1639"/>
         <source>Export Preferences</source>
         <translation>导出首选项</translation>
     </message>
     <message>
-        <location filename="../Preferences/__init__.py" line="1664"/>
+        <location filename="../Preferences/__init__.py" line="1667"/>
         <source>Import Preferences</source>
         <translation>导入首选项</translation>
     </message>
     <message>
-        <location filename="../Preferences/__init__.py" line="1664"/>
+        <location filename="../Preferences/__init__.py" line="1667"/>
         <source>Properties File (*.ini);;All Files (*)</source>
         <translation>属性文件 (*.ini);;所有文件 (*)</translation>
     </message>
@@ -58831,7 +58846,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/PyBoardDevices.py" line="382"/>
+        <location filename="../MicroPython/PyBoardDevices.py" line="391"/>
         <source>Flash MicroPython Firmware</source>
         <translation type="unfinished"></translation>
     </message>
@@ -58841,57 +58856,57 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/PyBoardDevices.py" line="265"/>
+        <location filename="../MicroPython/PyBoardDevices.py" line="274"/>
         <source>dfu-util not available</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/PyBoardDevices.py" line="265"/>
+        <location filename="../MicroPython/PyBoardDevices.py" line="274"/>
         <source>The dfu-util firmware flashing tool &lt;b&gt;dfu-util&lt;/b&gt; cannot be found or is not executable. Ensure it is in the search path or configure it on the MicroPython configuration page.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/PyBoardDevices.py" line="286"/>
+        <location filename="../MicroPython/PyBoardDevices.py" line="295"/>
         <source>&lt;h3&gt;Enable DFU Mode&lt;/h3&gt;&lt;p&gt;1. Disconnect everything from your board&lt;/p&gt;&lt;p&gt;2. Disconnect your board&lt;/p&gt;&lt;p&gt;3. Connect the DFU/BOOT0 pin with a 3.3V pin&lt;/p&gt;&lt;p&gt;4. Re-connect your board&lt;/p&gt;&lt;hr /&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/PyBoardDevices.py" line="296"/>
-        <source>&lt;p&gt;&lt;b&gt;Warning:&lt;/b&gt; Make sure that all other DFU capable devices except your PyBoard are disconnected.&lt;hr /&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../MicroPython/PyBoardDevices.py" line="302"/>
-        <source>&lt;p&gt;Press &lt;b&gt;OK&lt;/b&gt; to continue...&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
         <location filename="../MicroPython/PyBoardDevices.py" line="305"/>
+        <source>&lt;p&gt;&lt;b&gt;Warning:&lt;/b&gt; Make sure that all other DFU capable devices except your PyBoard are disconnected.&lt;hr /&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/PyBoardDevices.py" line="311"/>
+        <source>&lt;p&gt;Press &lt;b&gt;OK&lt;/b&gt; to continue...&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/PyBoardDevices.py" line="314"/>
         <source>Enable DFU mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/PyBoardDevices.py" line="319"/>
+        <location filename="../MicroPython/PyBoardDevices.py" line="328"/>
         <source>&lt;h3&gt;Disable DFU Mode&lt;/h3&gt;&lt;p&gt;1. Disconnect your board&lt;/p&gt;&lt;p&gt;2. Remove the DFU jumper&lt;/p&gt;&lt;p&gt;3. Re-connect your board&lt;/p&gt;&lt;hr /&gt;&lt;p&gt;Press &lt;b&gt;OK&lt;/b&gt; to continue...&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/PyBoardDevices.py" line="327"/>
+        <location filename="../MicroPython/PyBoardDevices.py" line="336"/>
         <source>Disable DFU mode</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/PyBoardDevices.py" line="382"/>
+        <location filename="../MicroPython/PyBoardDevices.py" line="391"/>
         <source>&apos;dfu-util&apos; Output</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/PyBoardDevices.py" line="348"/>
+        <location filename="../MicroPython/PyBoardDevices.py" line="357"/>
         <source>List DFU capable Devices</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../MicroPython/PyBoardDevices.py" line="370"/>
+        <location filename="../MicroPython/PyBoardDevices.py" line="379"/>
         <source>MicroPython Firmware Files (*.dfu);;All Files (*)</source>
         <translation type="unfinished"></translation>
     </message>
@@ -79098,6 +79113,149 @@
     </message>
 </context>
 <context>
+    <name>UF2FlashDialog</name>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.ui" line="14"/>
+        <source>Flash UF2 Device</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.ui" line="25"/>
+        <source>Detected Devices:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.ui" line="38"/>
+        <source>Select the device to be flashed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.ui" line="45"/>
+        <source>MicroPython:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.ui" line="61"/>
+        <source>Enter the path of the MicroPython / CircuitPython firmware file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.ui" line="68"/>
+        <source>&apos;Boot&apos; Path:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.ui" line="84"/>
+        <source>Enter the path of the bootloader volume</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.ui" line="93"/>
+        <source>Flash MicroPython / CircuitPython</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.ui" line="140"/>
+        <source>Refresh</source>
+        <translation type="unfinished">刷新</translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="288"/>
+        <source>&lt;h3&gt;CircuitPython Board&lt;/h3&gt;&lt;p&gt;In order to prepare the board for flashing follow these steps:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Switch your device to &apos;bootloader&apos; mode by double-pressing the reset button.&lt;/li&gt;&lt;li&gt;Wait until the device has entered &apos;bootloader&apos; mode.&lt;/li&gt;&lt;li&gt;(If this does not happen, then try shorter or longer pauses between presses.)&lt;/li&gt;&lt;li&gt;Ensure the boot volume is available (this may require mounting it).&lt;/li&gt;&lt;li&gt;Select the firmware file to be flashed and click the flash button.&lt;/li&gt;&lt;/ol&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="311"/>
+        <source>&lt;h3&gt;Pi Pico (RP2040) Board&lt;/h3&gt;&lt;p&gt;In order to prepare the board for flashing follow these steps:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Plug in your board while holding the BOOTSEL button.&lt;/li&gt;&lt;li&gt;Wait until the device has entered &apos;bootloader&apos; mode.&lt;/li&gt;&lt;li&gt;Ensure the boot volume is available (this may require mounting it).&lt;/li&gt;&lt;li&gt;Select the firmware file to be flashed and click the flash button.&lt;/li&gt;&lt;/ol&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="386"/>
+        <source>MicroPython/CircuitPython Files (*.uf2);;All Files (*)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="454"/>
+        <source>Manual Select</source>
+        <translation type="unfinished">手动选择</translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="555"/>
+        <source>Reset Instructions:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="499"/>
+        <source>&lt;h4&gt;No known devices detected.&lt;/h4&gt;&lt;p&gt;Follow the appropriate instructions below to set &lt;b&gt;one&lt;/b&gt; board into &apos;bootloader&apos; mode. Press &lt;b&gt;Refresh&lt;/b&gt; when ready.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="522"/>
+        <source>&lt;h4&gt;Flash {0} Firmware&lt;/h4&gt;&lt;p&gt;Follow the instructions below to set &lt;b&gt;one&lt;/b&gt; board into &apos;bootloader&apos; mode. Press &lt;b&gt;Refresh&lt;/b&gt; when ready.&lt;/p&gt;&lt;hr/&gt;{1}</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="532"/>
+        <source>&lt;h4&gt;Potentially UF2 capable devices found&lt;/h4&gt;&lt;p&gt;Found these potentially UF2 capable devices:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;{0}&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Follow the instructions below to set &lt;b&gt;one&lt;/b&gt; board into &apos;bootloader&apos; mode. Press &lt;b&gt;Refresh&lt;/b&gt; when ready.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="557"/>
+        <source>&lt;h4&gt;No known devices detected.&lt;/h4&gt;&lt;p&gt;Follow the instructions below to set &lt;b&gt;one&lt;/b&gt; board into &apos;bootloader&apos; mode. Press &lt;b&gt;Refresh&lt;/b&gt; when ready.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="569"/>
+        <source>Flash Instructions:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="594"/>
+        <source>Boot Volume not found:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="596"/>
+        <source>&lt;h4&gt;No Boot Volume detected.&lt;/h4&gt;&lt;p&gt;Please ensure that the boot volume of the device to be flashed is available. </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="602"/>
+        <source>This volume should be named &lt;b&gt;{0}&lt;/b&gt;. Press &lt;b&gt;Refresh&lt;/b&gt; when ready.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="607"/>
+        <source>This volume should have one of these names.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;{0}&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Press &lt;b&gt;Refresh&lt;/b&gt; when ready.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="624"/>
+        <source>Multiple Boot Volumes found:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="626"/>
+        <source>&lt;h4&gt;Multiple Boot Volumes were found&lt;/h4&gt;&lt;p&gt;These volume paths were found.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;{0}&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Please ensure that only one device of a type is ready for flashing. Press &lt;b&gt;Refresh&lt;/b&gt; when ready.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="645"/>
+        <source>Flashing {0}</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="571"/>
+        <source>&lt;h4&gt;Flash method &apos;manual&apos; selected.&lt;/h4&gt;&lt;p&gt;Follow the instructions below to flash a device by entering the data manually.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Change the device to &apos;bootloader&apos; mode.&lt;/li&gt;&lt;li&gt;Wait until the device has entered &apos;bootloader&apos; mode.&lt;/li&gt;&lt;li&gt;Ensure the boot volume is available (this may require mounting it) and select its path.&lt;/li&gt;&lt;li&gt;Select the firmware file to be flashed and click the flash button.&lt;/li&gt;&lt;/ol&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../MicroPython/UF2FlashDialog.py" line="647"/>
+        <source>&lt;p&gt;Flashing the {0} firmware to the device. Please wait until the device resets automatically.&lt;/p&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>UIPreviewer</name>
     <message>
         <location filename="../Tools/UIPreviewer.py" line="320"/>

eric ide

mercurial