502E532E 93d27ea72a feat: add a copy button to serial monitor (#2718)
* Add a copy output button to serial monitor

If the arduino collects some data that you want to store on your
computer, a rather simple way is to write it to the serial monitor and
copy it to the clipboard. This commit introduces a button that copies
the whole content of the serial monitor to the clipboard to make this
rather simple. It is a new component added to the menu, and does not
change the behaviour of other compontents.

* Test merging lines to str in serial monitor utils

Adds a test for merging one or more lines to a single string. It is
supposed to just concatenate the content of the lines, without doing
anything else. This method is used when copying the serial monitor content to
the clipboard.

* Add copy output translation key

This serves as an addition to the previous commits. It is the result of
running `yarn i18n:generate` on the state after adding the copy output
button to the serial monitor (see 2df3f465). I hope that this will
resolve the current Github action failure.

* Improve readability for serial monitor utils

Replace return statement in inline method by direct statement, some
minor formatting changes. Does not affect the functionality.

* Rename linesToMergedStr in monitor-utils

Renames the method linesToMergedStr to joinLines in the serial monitor
utils. This brings the name more in line with truncateLines. No
functionality changes.

* Move label and icon registration for copy serial

Moves the registration of the label and icon for the copy output
button of the serial monitor to the toolbar item registration. Before,
it happened at the command registration, but is not necessary at this
level, as the icon and label are meant for the toolbar button only.

* Do not update widget when copying output

No longer updates the serial monitor output after its content is copied.
Copying the content does not change anything for the view, so there is
no need to update.
2025-11-05 16:56:04 +01:00
2023-09-26 10:06:47 +02:00
2023-09-26 10:06:47 +02:00
2023-09-26 10:06:47 +02:00
2023-09-26 10:06:47 +02:00
2021-02-25 11:11:45 +01:00
2025-03-29 01:33:25 +09:00

Arduino IDE 2.x

Build status Check JavaScript status Test JavaScript status

This repository contains the source code of the Arduino IDE 2.x. If you're looking for the old IDE, go to the repository of the 1.x version.

The Arduino IDE 2.x is a major rewrite, sharing no code with the IDE 1.x. It is based on the Theia IDE framework and built with Electron. The backend operations such as compilation and uploading are offloaded to an arduino-cli instance running in daemon mode. This new IDE was developed with the goal of preserving the same interface and user experience of the previous major version in order to provide a frictionless upgrade.

Download

You can download the latest release version and nightly builds from the software download page on the Arduino website.

Support

If you need assistance, see the Help Center and browse the forum.

Bugs & Issues

If you want to report an issue, you can submit it to the issue tracker of this repository.

See the issue report guide for instructions.

Security

If you think you found a vulnerability or other security-related bug in this project, please read our security policy and report the bug to our Security Team 🛡️ Thank you!

e-mail contact: security@arduino.cc

Contributions and development

Contributions are very welcome! There are several ways to participate in this project, including:

  • Fixing bugs
  • Beta testing
  • Translation

See the contributor guide for more information.

See the development guide for a technical overview of the application and instructions for building the code.

Support the project

This open source code was written by the Arduino team and is maintained on a daily basis with the help of the community. We invest a considerable amount of time in development, testing and optimization. Please consider buying original Arduino boards to support our work on the project.

License

The code contained in this repository and the executable distributions are licensed under the terms of the GNU AGPLv3. The executable distributions contain third-party code licensed under other compatible licenses such as GPLv2, MIT and BSD-3. If you have questions about licensing please contact us at license@arduino.cc.

Description
Arduino IDE 2.x
Readme 171 MiB
Languages
TypeScript 51.5%
JavaScript 46.6%
CSS 1.7%
HTML 0.2%