Notepad++ ships with around 20 themes available to define the formatting rules for normal text and syntax highlighting. However, users can create their own themes, or get themes from somewhere else.
To facilitate sharing of user-created themes, the Notepad++ Developers have create this Themes Collection to house the XML files for the user-created themes.
For now, you have to manually download and install a Theme from this Collection.
- Download the XML file from the
themes/
folder of this Collection.- From the
themes/
folder, click on the name of the theme's XML file. - From the file's page, click on either the "Raw" button (which will take you to a page where you can copy/paste the raw contents), or even easier, just click on the copy raw contents button, which will immediately place the raw contents in your clipboard for pasting.
- Do not just right click to try to download the file from the directory listing on GitHub, as either of those right-click actions will download the GitHub web page for that file (which is not the Theme's XML file and will not work).
- From the
- Import the file by placing the file in your
themes\
folder- For most installations, the easiest place to put a new theme is in the
%AppData%\Notepad++\themes\
folder. - If you have multiple users on the same computer, and want the theme available to all users on that machine, put it into
C:\Program Files\Notepad++\themes\
(orC:\Program Files (x86)\Notepad++\themes
for a 32-bit Notepad++) - For portable installations, instead put the themes in the
themes\
sub-folder under the directory where your portablenotepad++.exe
resides
- For most installations, the easiest place to put a new theme is in the
- Restart Notepad++
- Select the theme from the Preferences > Style Configurator dialog
It is also possible to use the menu entry Settings > Import > Import Style Themes... and select a Theme XML file from your computer instead of steps 2-3 above; Notepad++ will then install it in the right place.
- Include a comment block near the top of the theme, listing things including
- Name of the Theme
- Author (you)
- Date of creation or last modification
- Any other credits or acknowledgements or notes you'd like the user to see when downloading
- When possible, make use of "background inheritance" (set
colorStyle="1"
in the raw XML or right click on the Background colour input in the Style Configurator) so that styles for various language markups inherit the Default Style's background colour -- this will mean that a user of your theme only has to change one entry to get the background to change on hundreds of style entries. The 99er theme includes the steps used to do that in a bulk search-and-replace to the raw XML.
See the default styler and the themes included with Notepad++ distributions for good examples of Themes.
You can submit your Theme file(s) into this repo if you would like to share it with the general public.
To do so, you may either:
- Create a Pull Request: create your own fork of this repository; add the new theme XML file to the themes folder your fork; and finally, create the Pull Request (PR).
- or Create a new Issue: go to the issues page for this repository, click on the New issue button, give it a meaningful issue name, and attach the theme's .XML file to the issue, then submit the issue.
The Theme Collection team will validate your theme (using manual review and/or automated tools), and will decide whether or not to accept your submission. Following the Best Practices (above) will help ensure your submitted Theme is added into the Collection.
Since many contributors are not GitHub experts, we have added in this section to make it easier for you to submit your file in a Pull Request (PR)
- Create a GitHub account
- Without an account, you cannot submit a PR
- Create a fork of the Themes Collection
- Click the Fork label/icon from the main Notepad++ Themes Collection page
- If you already have a fork, use Sync Fork > Update Branch to make sure your fork is up-to-date with the main Collection
- Make your changes:
- Upload the Theme's XML file to the
themes/
folder in your fork
- Upload the Theme's XML file to the
- Create a PR from your fork
- from your fork's master branch, after you've made the changes above,
- click the down arrow on Contribute
- select Open Pull Request
- fill out your description for the PR, and submit the PR
All Themes in the Themes Collection are maintained by the Notepad++ user base, purely on a volunteer basis.
The original author of a given Theme is encouraged to return and make updates to the themes as necessary -- for example, when Notepad++ adds new languages to the available lexers, it would be helpful if the original Theme author would come back and add in the definitions for those languages with the colors of their Theme.
However, as this is a user-based Collection, and all the Themes are released as open source, they can be modified by other users... so if you see that your favorite Theme from this Collection is missing one or more lexer languages, feel free to add those languages into the theme, and create a PR (or attach the updated XML to an issue) to update that Theme with the new languages, so that the Themes in this Collection are kept as up-to-date with Notepad++ as possible.
The administrators of the Themes Collection are not responsible for maintaining the individual themes. They are here to facilitate adding Themes to the collection, not to do the work of creating and maintaining Themes. Do not expect to create an issue of "fix the colors in Theme XXX" or "add language ZZZ to all the themes"; such issues are likely to be rejected.
Any Theme uploaded to the Collection is automatically released under the terms of the GPL v3, as put forth in the Collection's LICENSE file. If you do not want to publish your Theme under that license, do not submit it to this Collection.