Community
    • Login

    Efficient Way to Format and Debug Arduino Code in Notepad++

    Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
    2 Posts 2 Posters 34 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Aria JamesA
      Aria James
      last edited by

      Hello everyone,

      I’m currently working on an embedded systems project involving Arduino microcontrollers, and I’ve been using Notepad++ extensively to edit my sketches. Recently, I came across an article on link text. It provides a solid introduction to the Arduino IDE, but I prefer Notepad++ for its lightweight interface and plugin flexibility.

      My question is: what’s the most efficient way to configure Notepad++ to format and debug Arduino code effectively? Specifically, I’m curious about:

      Recommended plugins for C/C++ syntax highlighting, auto-indentation, or even code suggestions for Arduino.

      Is there a way to integrate serial monitor output or debugging processes within Notepad++ or via external tools? Is there a recommended workflow that allows me to combine Notepad++ with the Arduino IDE or PlatformIO for compiling and uploading, while primarily coding in Notepad++?

      I’m working on a project involving sensor data collection and actuator control for an automation prototype, and good formatting and debugging could really speed things up. Any suggestions from experienced users would be greatly appreciated!

      Thanks in advance.

      PeterJonesP 1 Reply Last reply Reply Quote 0
      • PeterJonesP
        PeterJones @Aria James
        last edited by PeterJones

        @Aria-James,

        Recommended plugins for C/C++ syntax highlighting, auto-indentation, or even code suggestions for Arduino.

        Syntax highlighting occurs without plugins in Notepad++. You can set Settings > Style Configurator > Language: C++ to have user ext.: = ino so that Arduino sketches automatically get associated with C++ language.

        Further, you can set the USER KEYWORDS # > user-defined-keywords per my post here to add the Arduino-specific keywords to the syntax highlighter.

        Notepad++ does some auto-indentation natively: see Settings > Preferences > Indentation > Indent Settings = cpp to control tabs-vs-spaces on a per-language basis, and the Auto-indent = basic vs advanced which applies globally throughout Notepad++ (described in more detail here in the User Manual). But it’s not super-fancy, and is only “as you add new lines”, so it won’t clean previous code. @Michael-Vincent shares an example script for the NppExec plugin that is able to run an external “pretty print” utility for multiple languages depending on file extension in this post: his script does it for C, HTML, Perl, and Python, but once you understand what you shared, you could definitely call one for a different language (like C++: I am betting that most c pretty-printers are really c++ pretty-printers, too).

        Code suggestions – there is some auto-completion, but it won’t go as far as code suggestions (and it’s definitely not going to be a copilot AI or anything like that).

        Is there a way to integrate serial monitor output or debugging processes within Notepad++ or via external tools? Is there a recommended workflow that allows me to combine Notepad++ with the Arduino IDE or PlatformIO for compiling and uploading, while primarily coding in Notepad++?

        I’ve never tried anything like that, so maybe someone else will be able to give more advice on that end.

        1 Reply Last reply Reply Quote 0
        • First post
          Last post
        The Community of users of the Notepad++ text editor.
        Powered by NodeBB | Contributors