问题
I'm trying to add the syntax plugin for the Go programming language in Notepad++.
There is a repository for such user-defined languages. I downloaded and unzipped the Go files, which contained a README, a userDefinedLang_Go.xml, and go.xml.
I attempted to follow the instructions at the bottom of the page as follows. Since I am using Windows 7 (x64), my Notepad++ directory is "C:\Program Files (x86)\Notepad++".
Having not installed a user defined language before, I didn't have a userDefinedLang.xml file already, so I copied userDefinedLang_Go.xml into the root directory, and renamed it to remove the "_Go", making it userDefinedLang.xml.
I then copied go.xml into C:\Program Files (x86)\Notepad++\plugins\APIs\
This seems to be all of the steps necessary. However, when I open Notepad++, there is no "Go" near "Lang => User Defined", and there is no syntactic coloring on a .go file. Attempting to import via "View => User-Defined Dialogue => import" gives a "fail to import" error.
What am I doing wrong? I'm using a clean installation of Notepad++, which is version 6.1.8.
回答1:
I had to put my userDefineLang.xml
file in my AppData\Roaming
folder:
C:\Users\[user]\AppData\Roaming\Notepad++
回答2:
New install of Notepad++ 6.4.5 on Windows 7 64 bit
Download from Notepad++ site:
http://docs.notepad-plus-plus.org/index.php?title=User_Defined_Language_Files#G
Copy "go.xml" to C:\Program Files (x86)\Notepad++\plugins\APIs
.
The default install doesn't have any user-defined languages, so you can do this:
- Copy "userDefineLang_Go.xml" to C:\Users\\AppData\Roaming\Notepad++
- Remove the "_Go" from the file name, so it's "userDefineLang.xml"
- Uncomment the opening and closing "NotepadPlus" tags.
(If you already have a userDefineLang.xml then add the content from the _Go file.)
Restart Notepad++.
回答3:
I just got it working on my system after some tinkering. Put this at the top of the userDefinedLang.xml file and the go.xml file:
<?xml version="1.0" encoding="Windows-1252" ?>
That should do the trick (after reopening Notepad++).
go.xml should be in the plugins/APIs folder, and userDefinedLang.xml goes in the root of Notepad++ as you said.
回答4:
Something other answers do not discuss: Some older versions of Notepad++ do not appear to work with any of these answers.
I tried pretty much all the solutions before upgrading Notepad++ to version 6.4.2.
xkcd 979
Tested Notepad++ versions:
- 5.9 - not working - tested by
namey
- 6.4.2 - working - tested by
Elysian Fields
- 6.6.9 - working - tested by
namey
For other versions your mileage may vary.
回答5:
I share the solution I found for Notepad++ 6.5, because I had the same issue than the previous messages.
If not done, do the install steps explained in go\misc\notepadplus\README (userDefineLang.xml,functionList.xml,APIs). When you don 't have useDefineLang.xml in Notepad++, create one using the file from go\misc\notepadplus\useDefineLang.xml, but don't forget to add the first line
<?xml version="1.0" encoding="Windows-1252" ?>
and uncomment NotepadPlus part to have<NotepadPlus>
at the beginning and</NotepadPlus>
at the end.Change in functionList.xml:
<association ext=".go" id="go"/>
BY<association userDefinedLangName="go" id="go"/>
As I didn't have any userDefineLang.xml file by default in Notepad++, I imported this file using the menu Language → Define your language → *Import. Then stop/start Notepad++. Check that Go is in the Language menu at the end of the list. Open a .go file. If the color doesn't change automatically click on go in /Language menu
All were OK after that for me (indentation, color, autocompletion, etc.).
回答6:
I added pl/sql language syntax to Notepad++. The syntax /language was on the web. Here's how I got it to work ...
- Open the XML file using Notepad and added
<?xml version="1.0" encoding="Windows-1252" ?>
to the very beginning, as David had suggested. Then save it touserDefinedLang_plsql.xml
- Paste the file in the Notepad++ root directory.
- I also copied it into
C:\Program Files (x86)\Notepad++\plugins\APIs\
, and navigated to menu Languages → Userdefined, but it did nothing. - So, I then went to menu Languages → Define your language and selected
pl/sql
from the drop down, renamed it, and saved it in that dialog window.
The new language then it appeared in the language dialog at the end.
回答7:
userDefineLang resides in C:\Users\username\AppData\Roaming\Notepad++\userDefineLang.xml.
Make sure your Notepad++ is installed under "C:\Program Files(86)", and not under "C:\npp.#.#.#.bin" folder.
And download from https://notepad-plus-plus.org/download. Or simply google "Download Notepad++".
Check out a sample Scala language userDefineLang.xml file here: https://github.com/nfang/scala-syntax-highlighter
回答8:
If you don't have any user languages defined before, then after renaming userDefinedLang_Go.xml
to userDefinedLang.xml
, also edit the text of file by adding the tags <NotepadPlus></NotepadPlus>
around the original content.
来源:https://stackoverflow.com/questions/12574121/adding-a-user-defined-language-in-notepad