Notepad++Introduction

To say that humans are creatures of habit would be an understatement. All of us strive for good habits but have a list of bad habits. We even develop habits around our preferences. Developers and software engineers are no different, everyone has their preferred code editor but what if you are changing operating systems (OS) can you still use your favorite code editor? The question even extends to those learning to code who want to copy their teachers for at least their first steps. And even to those learning an in-demand language, they don’t need the hassle of learning another code editor.

Notepad++ and Mac

Those moving over from Windows to Mac and who want to bring Notepad++ might not want to hear what’s next. The good news is there is a solution, but the notepad++ mac relationship is complicated at best. The problem lies in the fact that Notepad++ is an open-source project built on the Win32 API. The API is responsible for file systems, error handling, threads, and critical devices. This reliance on the API means that running Notepad++ on a Mac is not just a case of downloading and installing the package. Given that the code editor supports 84 different languages, many will want the code editor to work. The good news is this can be done, and several options are available. 

The Hard Way

For those with enough experience can rewrite Notepad++ to work on Mac. While it is an option it is one that takes time, often time a lot of users don’t have. Similar to rewriting the entire editor is use only the functions that don’t rely on the Win32 API. There are even more downsides to this option in that many of the useful plugins will not be supported if forced to run on a Mac. Given that Notepad++ is open source there won’t be much support from companies to develop a Mac exclusive version of Notepad++ as the return on investment is simply not there for a company to dive in. To further, elaborate on this point there are several great code editors for Mac as it is, meaning more competition to contend with.

The Easier Way

 For those not wanting to nearly build the application from near the ground up or lose the functionality of some great plugins that have been developed over the years, there are two more practical solutions. The first is to use an emulator like Wine to create a layer of compatibility between Window applications and your Mac OS. Once installed this allows a user to run many Windows applications within its interface. How the emulator does is complicated and far beyond the scope of this article, however, emulators like Wine are a great choice if you must have Notepad++. It is important to note that by using an emulator, users are running an app within an app which can cause some novel bugs.

The second option is to run a virtual machine on your Mac. This is the option to choose if stability and an absolute minimum of bugs are needed. A virtual machine effectively allows a Mac user to run a full environment on a Mac, allowing for the install and use of any software dedicated to Windows. Of the available virtual machine packages currently available, VMWare Fusion comes highly recommended. It is robust and easier to use than several other options currently available. It deserves to be mentioned that before you dive headfirst into installing a virtual machine be sure to first have an official license key and ISO copy of the version of Windows you want.

Notepad++ Alternatives

Mac is not without its dedicated code editors that have received rave reviews. Of special mention are CoderRunner and Expresso. The first of the honorable mentions, CodeRunner, can handle pretty much any development project you throw at it. The code editor functions as a complete developer environment, whereas Expresso is more focused on web development and design.

Conclusion

Just like the great debate of whether tabs or spaces are the best indentation method determined by the gods of all things code, the debate around which is the best code editor still rages. For those swapping to a new OS, namely Mac, at least can still run Notepad++ if they so desire.