Sublime Text versus Notepad++

18 min readJun 5, 2020

The text editor that you use for your programming purposes can have a lasting impact on how optimally you can code. Sublime Text and Notepad++ are among the most popular text editors used by programmers. There are obviously some other code editors that are extensively used, for example Atom, but in this write-up, we are going to focus on Sublime Text and Notepad++.

So, which is better, Sublime Text or Notepad++?

They both have their strengths. You can call Notepad++ an extension of the traditional Notepad application that has been coming with the Windows operating system since time immemorial. Sublime Text on the other hand, is a comparatively newer entry.

One thing you must keep in mind is that these are hard core code editors or text editors. They are useful only when you need to write individual lines of code, by hand.

Fundamental differences between Sublime Text and Notepad++

What is Sublime Text?

It is a cross-platform source code editor with the Python application programming interface. It is partly written in Python and C++ and it is available in all major operating systems including Windows, Mac and Linux.

The grapevine has it that a Google employee named Joh Skinner created Sublime Text in 2007 after quitting the company.

It is a shareware code editor. You can use it for free for as much time as you want and after a while, if you wish, you can pay for it. It natively supports many programming languages (47 and counting) as well as markup languages. Various extensions and functions can be added to it to make it more powerful. These functions and extensions are built by the community around Sublime Text with free-software licenses.

Sublime Text gives you all the standing features that you need for efficient code organization such as syntax highlighting, auto completion (depends on a plug-in), auto indentation, scrollable sidebar and many other features. As mentioned above, through packages and plug-ins you can extend its features. You can also use your own themes (color coding of various screen elements).

What is Notepad++?

Notepad++ is a text editor and a source code editor that is mostly used on Microsoft Windows. The name Notepad++ has been, as explained on its website, inspired by C++. It is distributed as free software. Notepad++ is licensed under the GNU Public License. Its source code is available on GitHub, so, to make your own version of a text editor or a code editor, you can download the source files and make changes.

If you want to use it on your machine as a code editor, then obviously you don’t want to download the source code files as you want to download the executable installer.

Notepad++ was created by Don Ho in 2003. It has been written in C++.

It supports over 50 programming languages. Once you have chosen the language you want to code in, it gives you syntax highlighting, collapsible functions, auto completion, auto indenting and much more. It gives you auto completion based on the language you are working in (in PHP the PHP function names will be auto completed and in C++, the C++ function names will be auto completed, and so on), without additional plug-ins.

It has a very actively involved community over GitHub and elsewhere so there is no shortage of plug-ins and extensions for Notepad++.

Why does it matter what text editor you choose for your coding needs?

There can be an answer which is blown out of proportion and there can be a simple answer. The “blown out of proportion” answer would be that choosing a text editor for your coding needs is a matter of life and death and in case you end up choosing the wrong text editor, you are bound to fail in your programming pursuits.

This is not the case. These days most of the text editors work decently well. Whether you choose Sublime Text or Notepad++, as long as you are capable programmer, you are going to do well. Even if you work with none of these editors and simply work on the default Notepad app that comes with Windows or the Vim editor that comes with Linux or UNIX, you can build awesome applications.

You should choose a text editor based on your programming preferences. Do you like color coding? Do you often open scores of files and work on them simultaneously? How often do you have to find the functions you are working with? Do you work alone or do you have a big team? Are you working with code libraries? Does it matter how your coding window appears? How much time do you have at hand?

All these, and many more questions can be considered while deciding which is the best text editor for you.

Talking about best, it is fine that you are reading this review, but ultimately, it depends on your personal choice. This writer has worked on more than 8 major and minor text editors for programming purposes (including Dreamweaver) in the past 12 years and still it is difficult to decide the ultimate text editor.

Nonetheless, there are big and small things that can help you speed up your process and you should take into consideration while deciding which text editor you’re going to settle with, at least for the next one year or so.

Can you use Sublime Text as an IDE?

IDE stands for Integrated Development Environment. It is a software application that provides a comprehensive set of facilities when you’re writing computer programs.

Anyway, is Sublime Text a good substitute for a dedicated IDE? Can you use Sublime Text as an IDE?

Most of the features that are provided by an IDE are also provided by Sublime Text. What do you need when you are programming?

Auto suggestion (what parameters are needed when you start typing a function or suggesting what function you are typing as you start typing).
Auto indentation (segments of code are indented, for example, if you’re using a for() loop, all the statements appearing within the opening and closing brackets of the loop must be indented).
Code segment collapse and expansion.
Syntax highlighting.

These are very important functions that a programmer needs. Syntax highlighting, for example, can save you hundreds of hours of debugging because it nips a problem in the bud. For example, you begin a while loop with an opening bracket and after writing 50 lines of code, you forget to use the closing bracket. If there is no syntax highlighting, you’re not going to realize it. But when syntax highlighting is available, the code color will appear differently until you close the bracket. Even if within one bracket set there are 20 bracket subsets, they must be properly closed otherwise, the code will appear in a different color.

All these features are available in Sublime Text so, in that sense, it can be used in an IDE. It may not be as strong as a dedicated IDE (for example, an IDE specifically developed for C++) but if you prefer to work in Sublime Text, basically there is nothing to stop you.

Can you use Notepad++ as an IDE?

Let’s take this opportunity to explore further what an IDE does. There is a reason why an IDE is used for programming. Aside from the usual editing features that all the mainstream text editors like Notepad++ and Sublime Text offer, a typical IDE also gives you a compiler, a debugger, code completion, and other programming language features.

Hence, if you have access to a full-blown IDE that is dedicated to C++ programming or Python programming or Java programming, a good choice would be going for that IDE instead of a text editor. For example, if you are working in C++, you may need to compile your code before you can run your program. If you work in a plain text editor, then you will need to resort to a command line compiler to run your program.

Debugging may be another issue. Debugging provided in an IDE is much advanced. If you are missing a bracket or a comma or a semi-colon or an apostrophe, the debugger will tell you on which line such an oversight has occurred. This is something that a text editor does not offer you.

Now, coming to the question of can you use Notepad++ as an IDE?

If you have no other choice, then sure. It might be your best option. Notepad++ may not provide you a compiler or a debugger, but everything else it does. It gives you auto completion. Syntax highlighting works similar to a debugger. Indentation is there. Hence, as far as programming help goes, you can use Notepad++ partly as an IDE.

What is the purpose of this Sublime Text versus Notepad++ article? It is to help you decide which is better. Both have their strengths and weaknesses. Both are widely used. Both have their fan following.

Although a text editor is mostly related to editing text, most of the mainstream text editors are used for coding.

Can you use a text editor for writing? Surely, you can. Can you write articles and blog posts in text editors? There is nothing to stop you. One small problem is that word processing capabilities are not provided in text editors. Even formatting is not there unless you’re using markdown language. So, yes, if you are fully confident of your writing you can use text editors like Sublime Text and Notepad++ for writing articles, blog posts and web pages, but by the end of the day, these text editors are mostly used for programming.

Below we are providing feature -wise differences between Sublime Text and Notepad++.

Which is more popular, Sublime Text or Notepad++?

It depends on what you call popular. Many blog posts and articles comparing Sublime Text and Notepad++ often refer to Google Trends. If you observe Google Trends you will notice that the number of people searching for Sublime Text is much more than Notepad++. It might be because some people confuse Notepad++ with the traditional notepad application that comes with Windows, which is barebones and quite uninspiring. In fact, most people close the notepad application and quickly search on Google to find a better alternative the moment they come across it. So, the reputation of notepad for Windows might be harming Notepad++, at least in this regard.

Sublime Text is obviously more popular because it is a newer text editor compared to Notepad++. Also, visually Sublime Text is more appealing than Notepad++. The theme options are greater in Sublime Text. Also, many functions that make it easier for programmers to code are inbuilt in Sublime Text. The moment you load Sublime Text, you tend to find it attractive and more user-friendly. You use Notepad++ only when you actually want to use it.

As mentioned above, we will be comparing Sublime Text and Notepad++ feature -wise.

Availability in multiple operating systems

Sublime Text is available on Windows, Mac computers and Linux. For all the operating systems, in case you decide to purchase the license (you don’t have to), you need just a single license.

Notepad++ is Windows-only text editor. It is not available on Mac and Linux. There may be workarounds, but given the effort required, it is better to use the text editors that are already available.

Working in multiple files

In both Sublime Text and Notepad++ you can work in multiple files. You may not face a problem when you are working with 5–10 files, but many programmers are known to work with 50–100 files. Yes, it is hard to believe, but this happens.

When you are working with 50–100 files, then you realize how important it is to be able to efficiently manage all these open files. In Sublime Text and Notepad++, different files are shown under different tabs. Hence, when people are talking about managing multiple files in Sublime Text and Notepad++, they are also talking about managing multiple tabs.

A great thing about Sublime Text is that you can open multiple files not just under different tabs, but also under different columns. This means you can view different files at the same time. You can also copy/paste content between different files. Normally, although you can open multiple files, they are under different tabs and you can see just one file at a time. In Sublime Text you can view multiple files that are arranged horizontally.

In fact, you can view multiple files in different rows and different columns.

Suppose you have opened 3 files in Sublime Text. You can go to the View menu and then in the Layout section you can decide whether you want a single column or multiple columns. You can also have multiple rows.

As mentioned above, it is not that you can just work with one file at a time. You can mix and match. Just click on the file and the cursor will start blinking on it and you can start working.

The similar feature is available in Notepad++ too. Just open multiple files and then right-click on one of the tabs. Then click “Move To Other View”. It will split your screen and show your files in different columns. Just like in Sublime Text, you can simultaneously work on both the files and even move chunks of text from one file to another.

Code auto complete feature

Find it difficult to remember what parameters to provide with a function? Need to use a function can only roughly remember what it is for? The auto complete function of your text editor can help you.

Not just functions and the programming -related keywords, even the regular variables and session variables that you have defined show up in the auto complete options. This way, if you have defined very long (but easy to understand) variable names for your program, the next time you have to type them, you just have to key in a few alphabets and the remaining name will appear on its own.

To be able to use auto complete, your text editor must be configured for the particular language. If you are using Python, your text editor must know that you’re using Python so that it can show you the related function names and variable names. Similarly, if you’re working in PHP, if you have set your text editor to recognise PHP commands, the auto complete function will show all the PHP -related information as well as the variables that you have defined.

One of the greatest benefits of auto completion is that if a statement needs to be closed, it is closed automatically so that you don’t forget to close it.

For example, you are working in HTML, as soon as you type <p>, </p> automatically appears and your cursor is placed between both the opening and closing HTML tags.

Similarly, when you start a for() loop, when you type “(“ the matching “)” appears on its own, and when you type “{“ the matching “}” appears on its own with appropriate indentation. An opening quote is immediately paired with a closing quote. These errors can take a serious turn if they are not addressed immediately hence, it is very useful if they are taken care of by the text editor auto complete feature.

Both Sublime Text and Notepad++ give you auto complete.

In Sublime Text different packages are available. For example, if you want to complete for HTML 5 and CSS3 (web development conventions that are continuously evolving) you may need to install extra packages in Sublime Text. But, by default, most of the languages are covered in the auto complete feature without you having to install any extra package.

In many Notepad++ installations you may have to manually activate auto completion because sometimes by default, it is turned off. But auto completion is available in Notepad++. It is available for all major languages. It is also available for HTML and CSS. You can easily work in C#, Visual Basic, C++, Python, PHP, JavaScript, HTML 5, Java and many other languages with native support for auto completion in Notepad++.

In Notepad++ you can also define custom auto completion functions. If you go to Settings and then Auto-Completion you can create “Matched pairs” in which you can instruct Notepad++ how to auto complete certain expressions.

The size of the programming project

As already mentioned above, one of the biggest reasons why you should take selecting your text editor seriously is that in the long run, as the size of your project increases, even small things will matter and will leave a big impact on your coding speed.

Notepad++ is a small editor. It will be good if you are just starting out. The benefit of being a small text editor is that there will be fewer distractions. Everything you need to start learning how to code and even create medium-sized applications, is there in Notepad++. Some may find it limiting because it supports only 600 odd packages (folders) with minimal extra features. Since you cannot use lots of plug-ins and features, it keeps you focused on the core needs of your program. Another problem, of course, is that it is only available for Windows so if you need to switch between different machines with different operating systems but you are working on the same program, this may pose a problem for you.

In Sublime Text you have 4500 packages which means there are 4500 extra functional components that you can install within Sublime Text. There is no limit to the size of the application you can program for in Sublime Text. You can zoom in and zoom out entire block of code to get a bird’s eye view of your complete document.

Again, just because Sublime Text gives you 4500 packages doesn’t mean that you’re going to use all those packages. When you are just starting out, you’re hardly going to need five extra features and not more than that. So don’t use Sublime Text over Notepad++ simply because it has more features.

The number of languages supported

According to the Notepad++ manual, the text editor can support around 80 programming languages. It can highlight the elements of 78 syntaxes including ActionScript, Ada, ASN.1, ASP, Assembly, AutoIt, AviSynth scripts, BaanC, batch files, Blitz Basic, C, C#, C++, Caml, CMake, Cobol, CoffeeScript, Csound, CSS, D, Diff, Erlang, escript, Forth, Fortran, FreeBASIC, Gui4Cli, Haskell, HTML, INI files, Intel HEX Inno Setup scripts, fishJava, JavaScript, JSON, JSP, KiXtart, LaTeX, LISP, Lua, Makefile, Matlab, MMIX, Nim, nnCron, NSIS scripts, Objective-C, OScript, Pascal, Perl, PHP, PostScript, PowerShell (Broken), PureBasic, Python, R, Rebol, Registry script (.reg), Resource file, Ruby, Rust, Scheme, Shell script, Smalltalk, SPICE, SQL, Swift, S-Record, Tcl, Tektronix HEX, TeX, txt2tags, Visual Basic, Visual Prolog, VHDL, Verilog, XML and YAML.

Sublime Text too supports all the languages listed above, and many more. It can be easily extended by adding new packages.

Package control in Sublime Text and Notepad++

Every major software these days comes with a stripped down version and as you need more features, you can keep adding them. To be frank, even the stripped down version is more than enough when you are just learning to code. As you proceed you may need new features and support for different languages whether you are using Notepad++ or Sublime Text. Not just languages, you may even like to change the view of your code editor window. You may want new facilities. All these can be controlled with the help of “packages”.

What is package control?

Package control is a feature, or the way a text editor allows you to manage packages. Sublime Text gives you more than 4500 packages. Notepad++ gives you 600 packages.

Both the editors have an easy interface to install and manage packages. In Sublime Text you will first have to install the package control feature. In the text editor, you can go to the Tools menu and then to “Install Package Control…”. This downloads and installs the latest version of Package Control. Once the package control is installed, you go to the Preferences menu option and install the package you want.

Notepad++ calls this feature the “Plug-ins Manager”. The latest version of Notepad++ has the “Plug-ins” menu already active. You can go to the option and install the plug-ins you want to use.

Multiple text selection

Want to make lots of repetitive changes? Normally you repeatedly need to find the text that you want to change and then you make the changes. This involves lots of redundant steps. Sublime Text allows you to select multiple regions with your keyboard or mouse.

Let’s take a small example: You have the following list

Los Angeles
New Delhi

You want to turn this into a markdown list but for that, you have to put an asterisk in front of every place name. What do you do?

Take the cursor in front of Amsterdam, just before “A”. Now press CTRL+ALT+ Down arrow. Although the cursor will remain before Amsterdam, now it will also cover Los Angeles. Go on repeating CTRL+ALT+ Down arrow until all the places are covered.

Then, whatever you want to add, just add it. For example, in this case, you want to add an asterisk, so type “*” (without quotes) and a space, and this extra character will be typed in front of every place name. Once you are done, press the Escape key.

Now you will have

* Amsterdam
* Los Angeles
* Singapore
* New Delhi
* Budapest
* Honolulu

Similarly, in Sublime Text, there are many ways of selecting instances of text without having to select a big chunk.

What about selecting multiple instances of a single word? Suppose, you want to change the name of a variable. Very simple in Sublime Text. Simply select the word or the string and then press ALT+F3. All the instances of the string will be selected. And then, when you make changes to the one string, the change is implemented throughout.

In Notepad++ the same thing is called “Multi-editing”. Want to select multiple instances of similar text? In Notepad++, hold the CTRL key while selecting one instance of the text with your mouse cursor and all the instances of the text are selected. Then, as you make changes to one instance, the changes are implemented across the entire selection.

Jump to a function

When you work on very large projects, sometimes even in a single file, you are going to end up with 50–60 or even 100 functions. One, you want to know the names of all the functions you have defined in a particular file, and two, you want to go to a particular function.

In Sublime Text, you can simply press CTRL+R and it shows you a list of all the functions you can jump to.

Unfortunately, in Notepad++, there is no direct feature that takes you to the desired function. For that, you may have to install the TagsJump plug-in using the plug-in manager. It’s no big deal actually. Once you have installed the plug-in, you can always use it.

Setting appearance in Notepad++ and Sublime Text

The default appearance or the theme used by Notepad++ or Sublime may be quite uninspiring.

Luckily, both Notepad++ and Sublime Text allow you to change the complete appearance of your coding and programming environment.

In Notepad++ you have the inbuilt Style Configurator. You can access it by going to Settings and then Style Configurator. The good thing about this style configurator in Notepad++ is that you can control the appearance of individual file types. For example, you may like a different color coding and background color, or even the font scheme for different files. For HTML you may want different color scheme and for PHP, different and for Python, different. The Style Configurator allows you to make minute changes to every aspect of your code.

Suppose you select PHP in the Language column. You can select how the keywords appear, how the variables appear, how the comments section appear and so on. If you don’t want to change individual colors, you can simply choose a theme from the drop-down menu.

Sublime Text also has its own set of themes. All the theme definitions in Sublime Text are saved in the Jason format. You can go to the Preferences menu and from there you can select your favorite theme. Once you have selected your theme, you can make individual changes and tweaks to make it look exactly how you want it.

Ease of accessing the command palette

Command palette includes a list of items or commands which are used frequently when working in your favorite text editor. In Sublime Text, you can quickly access the command palette with the shortcut key combination CTRL+SHIFT+P. It gives you a list of all the commands that you can use in Sublime Text such as changing the theme, switching the language syntax, installing and removing packages and switching views. Just stop typing the first few characters of the command and the command palette shows you all the related commands.

There is no concept of command palette in Notepad++.

Companies using Notepad++ and Sublime Text

Just because we have been focusing on learning to code it doesn’t mean that these text editors aren’t used for serious programming. In fact, they ARE used for serious programming, both Notepad++ and Sublime Text.

Some of the major companies using Sublime Text include Lyft, Typeform, Trivago, TransferWise and Stack.

Some of the major companies using Notepad++ include Capgemini, AdAsia and Implisit.

Affordable Programming Service Provider on the internet.

Differences between Notepad++ and Sublime Text

Above we have mostly compared different features in Notepad++ and Sublime Text. Sometimes the features are existing in both the text editors, and sometimes, only one of the editors has those features. Let’s now go through some of the biggest differences between Notepad++ Sublime Text.

Notepad++ is open source and is governed by GPL license. You can use it. You can change the source code and create an entirely new application out of it. You can use chunks of its code to do something else. Since it is written in C++, if you want to use some of its functions in another C++ program, you can easily do so.

Sublime Text is shareware. As an individual you can go on using it without paying but if you are a business, you may have to pay for it. If you are an individual, it goes on politely reminding you that you must pay. You can simply decline and life goes on. Hence, this is not a problem and given a choice, you would select Sublime Text over Notepad++.

Another positive thing about Sublime Text is that it’s cross-platform. You can use it in all major operating systems including Macintosh, Windows and Linux. Once you have purchased a license, no separate licenses are required. Notepad++ is available just for Windows.

Other than these big differences, it is all a matter of taste. Both are highly advanced code editors with practically everything you need to write programs for HTML pages. They support all contemporary languages.

Eventually, you must make your own decisions. Play around with different text editors. Not just Sublime Text and Notepad++. There are a great many text editors out there, for example Visual Studio Code, which is an excellent code editor for Windows, by Microsoft. Then there is Atom, although, it seems a bit buggy but if you can get it going, it is an excellent text editor.

Happy programming.

You can also read about How to Become Java Developer.

Originally published at on June 5, 2020.