Using Notepad Plus Plus as a script editor

From Unify Community Wiki
Revision as of 18:57, 9 April 2010 by Lancerfour (Talk | contribs)

Jump to: navigation, search

Notepad++ is a powerful text editor based on Scintilla (which is where UniSciTE is also based from). It is available only in Windows.

Advantages:

  • it can manage more than ten text files opened simultaneously
  • customizable color scheme

Disadvantages:

  • when you double click on a Unity error in the Console, Notepad++ opens the corresponding file but doesn't go to the specified line number
Notepad++ editing a Unityscript file
Notepad++ editing a Unityscript file.

Contents

Directions

  1. Notepad++ can be found in http://notepad-plus.sourceforge.net/uk/site.htm. Download and install.
  2. Change your External Script Editor to Notepad++ (In Unity, Edit> Preferences > General)
  3. Unity should now open Notepad++ whenever you double-click a script (or any text file actually).


How to add searching of Unity Documentation within Notepad++

  1. Download the Language Help Plugin via the Plugin Manager: Plugins > Plugin Manager > Show Plugin Manager. Then choose "Language Help" from the list, and click Install.
  2. Go to Plugins > Language Help > Options...
  3. Click Add and put these values
Name: Unity
Extension List: "js" (and/or "cs" if you're using C#)
Extended help file path: http://unity3d.com/support/documentation/ScriptReference/30_search.html?q=$word$

Now whenever you press ctrl+f1 while your cursor is on a word, it will search that word in the Unity documentation. (You can change the key binding via Settings > Shortcut Mapper)


How to enable highlighting of unity "keywords" within N++

  1. Open "C:\Program Files\Unity\Editor\Data\Tools\UniSciTE\unitykeywords.properties" This text file contains all the unity keywords.
  2. In Notepad++ go to Settings > Style Configurator...
  3. In the "Language:" list, select your appropriate language.
  4. In the "Style:" list, select Keyword (or Instruction Word).
  5. Add the keywords from the unitykeywords.properties file (the big block of text) into the "User-Defined Keywords" box.
  6. Save & Close. Close and open Notepad++. Voila.


How to enable highlighting of unity "keywords" manually

  1. Open "C:\Program Files\Unity\Editor\Data\Tools\UniSciTE\unitykeywords.properties" This text file contains all the unity keywords.
  2. Open "C:\Program Files\Notepad++\stylers.xml" (If you're using a custom theme, open C:\Program Files\Notepad++\themes and open the theme XML file you are using instead.)
  3. In stylers.xml (or your theme's XML file), find: <LexerType name="javascript" desc="Javascript" ext="">
  4. Find the coressponding: <WordsStyle name="KEYWORD" styleID="47" fgColor="000080" bgColor="F2F4FF" fontName="" fontStyle="3" fontSize="" keywordClass="instre1">
  5. Insert all the unity keywords (found from the unitykeywords.properties you opened earlier) inside that <WordsStyle name="KEYWORD"> tag
  6. Save it. Close and open Notepad++. It should highlight the Unity keywords now.


How to add Intellisense (called Auto-Completion in Notepad++) for Unityscript

  1. Turn on Auto-Completion by going to: Settings > Preferences > Backup/Auto-Completion. Check "Function parameters hint on input"
  2. Open "C:\Program Files\Notepad++\plugins\APIs\javascript.xml"
  3. Copy paste contents of http://anomalousunderdog.webs.com/UnityProjectUploads/UnityJS_to_Npp_2.6.1.txt.zip (zipped text file, just extract it) to anywhere inside the <AutoComplete> tags of the "javascript.xml" file.
  4. Close and open Notepad++. A function tooltip should now appear whenever you type in an open parenthesis after a Unity function.

Note: The UnityJS_to_Npp.txt is created from the file found as "C:\Program Files\Unity\Editor\Data\Tools\UniSciTE\UnityJS.api", converting it using a program I made (http://anomalousunderdog.webs.com/UnityProjectUploads/UnityJSapi_to_Npp.py). If ever the UnityJS.api changes (in case of a Unity update), just run the python script.

Personal tools
Namespaces

Variants
Actions
Navigation
Extras
Toolbox