对coder来说,notepad ++ 是一个很不错的文本编辑器。平时用来看看代码、xml文件,都比系统自带的记事本舒服得多。不过,对于像我这种每天用notepad ++写代码的人,一个原装的notepad ++远远不能满足。下面对notepad++做一些调整。
一、更改主题与颜色
npp的主题与颜色设置在setting/style configurator下。
首先,先选择一种主题。主题是一般包含了各种语言的代码高亮方案,当然也包含全局设置。全局设置也就无法识别语言时的方案(如打开一txt文本时)。notepad ++在改变主题时是即时预览的。所以当你改变主题时当前文本没有改变高亮,检查一下当前文件是否识别正确。例如当前文本被识别为java语言,但你改变的是C++的高亮,则当前文本反映不出来的。
下面以C语言为例,修改代码高亮
在language里选中C语言后,在Style里可以看到C语言可自定义的项(好像不同主题、不同语言的可定义项都不一样)。下面列出各个可自定义项:
PREPROCESSOR 预处理
DEFAULT 默认(即除了其他可定义项目以外的代码)
INSTRUCTION WORD 结构关键字if else for while switch之类
TYPE WORD 类型关键字,int float struct之类
NUMBER 数字,也就是常数
STRING 字符串,通常在""之间的字符被认为是字符串
CHARACTER 字符,在''之间的单个字符被认为是字符
OPERATOR 操作数,如+ - * / =
COMMENT 注释,通常在//之后
COMMENT LINE 注释行,以/*开头以*/结束
COMMENT DOC 文档注释,以/**开头,以*/结束
有部分我也不知道是什么,抱歉。
知道了这些类型,我们选择自己要调整的类型,在右边选择颜色、字体、大小、是否加粗、倾斜、是否加下划线即OK。
有部分是可以添加自定义数据的。如TYPE WORD和INSTRUCTION WORD,是否要添加自定义的关键字类型
注意:搜索结果是在language的最底下,而选中文字后的高亮则在global style里。
二、添加自己所需要的插件。
在plugins/plugin manager里可以管理插件。
我常用的插件:
light explorer 轻量的资源管理器,有收藏夹功能,stander menu可打开系统的右键。比explorer插件好用
nppFTP FTP插件,主要是因为服务器不在身边,经常需要上传、下载
sourcecookefier 主要是函数列表、定义跳转,比npp自带的function list好用。函数列表能自动刷新、排列。
下面介绍一下sourcecookefier的跳转,也就是go go define功能。
先把source cookefier的模式改为cookie session mode(这三个模式的介绍在右键/帮助下有介绍)
然后把工程目录拖到sorucecookifier里,它会自动列出所有文件类型,选择检测的文件类型(C语言一般为.c和.h文件)
等待生成缓存文件,之后在代码里按住ctrl键+鼠标左击就会自动跳转到函数或宏定义的声明处理。这个功能主要是用CTAGS实现的,不能区分同名函数(会有选择)。另外,请记得保存缓存文件。下次打开npp时也要再次打开。每次修改文件后,也要记得保存。
三、修改右键菜单
npp修改右键的入口在setting/edit popup contextMenu,然后打开一个文件让我们编辑。其实我们也可以自己找到那个contextMenu.xml文件自己修改。这个文件里有比较详细的注释。
npp的右键菜单分三种类型,一种是以名字来区分菜单,一种是插件菜单,另一种是以ID来区分的菜单。
1、以名字来区分的菜单就是你把Npp的语言改为英文,在npp菜单里的功能都可以添加到右键。如
<Item MenuEntryName="Edit" MenuItemName="Cut"/> <Item MenuEntryName="Edit" MenuItemName="Copy"/> <Item MenuEntryName="Edit" MenuItemName="Paste"/> <Item MenuEntryName="Edit" MenuItemName="Delete"/> <Item MenuEntryName="Edit" MenuItemName="Select all"/> <Item MenuEntryName="Edit" MenuItemName="Begin/End Select"/>
Item MenuEntryName="Edit" MenuItemName="Cut"则表示其功能就是编辑里的剪切功能。当然,你也可以添加一个Item MenuEntryName="Search" MenuItemName="Find In Files...",即搜索下的在文件中查找。
2、插件菜单就是你装的插件的功能。
<Item FolderName="Plugin commands" PluginEntryName="MIME Tools" PluginCommandItemName="Base64 Encode" /> <Item FolderName="Plugin commands" PluginEntryName="MIME Tools" PluginCommandItemName="Base64 Decode" />
把PluginEnteerName改成自己的插件名,PluginCommandItemName改成自己的功能就OK.这些都可以在菜单栏中plugin里找到。
3、最后一种则是以ID来区分的,
<Item FolderName="Remove style" id="43023"/> <Item FolderName="Remove style" id="43025"/> <Item FolderName="Remove style" id="43027"/> <Item FolderName="Remove style" id="43029"/> <Item FolderName="Remove style" id="43031"/> <Item FolderName="Remove style" id="43032"/>
这里头疼的是这些ID表示什么。它在安装目录下的localizationenglish.xml里。
<?xml version="1.0" encoding="Windows-1252" ?> <NotepadPlus> <Native-Langue name="English" filename="english.xml" version="6.5.2"> <Menu> <Main> <!-- Main Menu Entries --> <Entries> <Item menuId="file" name="&File"/> <Item menuId="edit" name="&Edit"/> <Item menuId="search" name="&Search"/> <Item menuId="view" name="&View"/> <Item menuId="encoding" name="E&ncoding"/> <Item menuId="language" name="&Language"/> <Item menuId="settings" name="Se&ttings"/> <Item menuId="macro" name="Macro"/> <Item menuId="run" name="Run"/> <Item idName="Plugins" name="Plugins"/> <Item idName="Window" name="Window"/> </Entries> <!-- Sub Menu Entries --> <SubEntries> <Item subMenuId="file-openFolder" name="Open Containing Folder"/> <Item subMenuId="file-closeMore" name="Close More"/> <Item subMenuId="file-recentFiles" name="Recent Files"/> <Item subMenuId="edit-copyToClipboard" name="Copy to Clipboard"/> <Item subMenuId="edit-indent" name="Indent"/> <Item subMenuId="edit-convertCaseTo" name="Convert Case to"/> <Item subMenuId="edit-lineOperations" name="Line Operations"/> <Item subMenuId="edit-comment" name="Comment/Uncomment"/> <Item subMenuId="edit-autoCompletion" name="Auto-Completion"/> <Item subMenuId="edit-eolConversion" name="EOL Conversion"/> <Item subMenuId="edit-blankOperations" name="Blank Operations"/> <Item subMenuId="edit-pasteSpecial" name="Paste Special"/> <Item subMenuId="search-markAll" name="Mark All"/> <Item subMenuId="search-unmarkAll" name="Unmark All"/> <Item subMenuId="search-jumpUp" name="Jump Up"/> <Item subMenuId="search-jumpDown" name="Jump Down"/> <Item subMenuId="search-bookmark" name="Bookmark"/> <Item subMenuId="view-showSymbol" name="Show Symbol"/> <Item subMenuId="view-zoom" name="Zoom"/> <Item subMenuId="view-moveCloneDocument" name="Move/Clone Current Document"/> <Item subMenuId="view-tab" name="Tab"/> <Item subMenuId="view-collapseLevel" name="Collapse Level"/> <Item subMenuId="view-uncollapseLevel" name="Uncollapse Level"/> <Item subMenuId="view-project" name="Project"/> <Item subMenuId="encoding-characterSets" name="Character Set"/> <Item subMenuId="encoding-arabic" name="Arabic"/> <Item subMenuId="encoding-baltic" name="Baltic"/> <Item subMenuId="encoding-celtic" name="Celtic"/> <Item subMenuId="encoding-cyrillic" name="Cyrillic"/> <Item subMenuId="encoding-centralEuropean" name="Central European"/> <Item subMenuId="encoding-chinese" name="Chinese"/> <Item subMenuId="encoding-easternEuropean" name="Eastern European"/> <Item subMenuId="encoding-greek" name="Greek"/> <Item subMenuId="encoding-hebrew" name="Hebrew"/> <Item subMenuId="encoding-japanese" name="Japanese"/> <Item subMenuId="encoding-korean" name="Korean"/> <Item subMenuId="encoding-northEuropean" name="North European"/> <Item subMenuId="encoding-thai" name="Thai"/> <Item subMenuId="encoding-turkish" name="Turkish"/> <Item subMenuId="encoding-westernEuropean" name="Western European"/> <Item subMenuId="encoding-vietnamese" name="Vietnamese"/> <Item subMenuId="settings-import" name="Import"/> </SubEntries> <!-- all menu item --> <Commands> <Item id="41001" name="&New"/> <Item id="41002" name="&Open"/> <Item id="41019" name="Explorer"/> <Item id="41020" name="cmd"/> <Item id="41003" name="Close"/> <Item id="41004" name="C&lose All"/> <Item id="41005" name="Close All BUT Current Document"/> <Item id="41009" name="Close All to the Left"/> <Item id="41018" name="Close All to the Right"/> <Item id="41006" name="&Save"/> <Item id="41007" name="Sav&e All"/> <Item id="41008" name="Save &As..."/> <Item id="41010" name="Print..."/> <Item id="1001" name="Print Now"/> <Item id="41011" name="E&xit"/> <Item id="41012" name="Load Session..."/> <Item id="41013" name="Save Session..."/> <Item id="41014" name="Reload from Disk"/> <Item id="41015" name="Save a Copy As..."/> <Item id="41016" name="Delete from Disk"/> <Item id="41017" name="Rename..."/> <Item id="42001" name="Cu&t"/> <Item id="42002" name="&Copy"/> <Item id="42003" name="&Undo"/> <Item id="42004" name="&Redo"/> <Item id="42005" name="&Paste"/> <Item id="42006" name="&Delete"/> <Item id="42007" name="Select A&ll"/> <Item id="42020" name="Begin/End Select"/> <Item id="42008" name="Increase Line Indent"/> <Item id="42009" name="Decrease Line Indent"/> <Item id="42010" name="Duplicate Current Line"/> <Item id="42012" name="Split Lines"/> <Item id="42013" name="Join Lines"/> <Item id="42014" name="Move Up Current Line"/> <Item id="42015" name="Move Down Current Line"/> <Item id="42016" name="UPPERCASE"/> <Item id="42017" name="lowercase"/> <Item id="42018" name="&Start Recording"/> <Item id="42019" name="&Stop Recording"/> <Item id="42021" name="&Playback"/> <Item id="42022" name="Toggle Single Line Comment"/> <Item id="42023" name="Block Comment"/> <Item id="42047" name="Block Uncomment"/> <Item id="42024" name="Trim Trailing Space"/> <Item id="42042" name="Trim Leading Space"/> <Item id="42043" name="Trim Leading and Trailing Space"/> <Item id="42044" name="EOL to Space"/> <Item id="42045" name="Remove Unnecessary Blank and EOL"/> <Item id="42046" name="TAB to Space"/> <Item id="42054" name="Space to TAB (All)"/> <Item id="42053" name="Space to TAB (Leading)"/> <Item id="42038" name="Paste HTML Content"/> <Item id="42039" name="Paste RTF Content"/> <Item id="42048" name="Copy Binary Content"/> <Item id="42049" name="Cut Binary Content"/> <Item id="42050" name="Paste Binary Content"/> <Item id="42037" name="Column Mode..."/> <Item id="42034" name="Column Editor..."/> <Item id="42051" name="Character Panel"/> <Item id="42052" name="Clipboard History"/> <Item id="42025" name="Save Currently Recorded Macro"/> <Item id="42026" name="Text Direction RTL"/> <Item id="42027" name="Text Direction LTR"/> <Item id="42028" name="Set Read-Only"/> <Item id="42029" name="Current File Path to Clipboard"/> <Item id="42030" name="Current Filename to Clipboard"/> <Item id="42031" name="Current Dir. Path to Clipboard"/> <Item id="42032" name="Run a Macro Multiple Times..."/> <Item id="42033" name="Clear Read-Only Flag"/> <Item id="42035" name="Single Line Comment"/> <Item id="42036" name="Single Line Uncomment"/> <Item id="42055" name="Remove Empty Lines"/> <Item id="42056" name="Remove Empty Lines (Containing Blank characters)"/> <Item id="42057" name="Insert Blank Line Above Current"/> <Item id="42058" name="Insert Blank Line Bellow Current"/> <Item id="42059" name="Sort Lines in Ascending Order"/> <Item id="42060" name="Sort Lines in Descending Order"/> <Item id="43001" name="&Find..."/> <Item id="43002" name="Find &Next"/> <Item id="43003" name="Replace..."/> <Item id="43004" name="Go to..."/> <Item id="43005" name="Toggle Bookmark"/> <Item id="43006" name="Next Bookmark"/> <Item id="43007" name="Previous Bookmark"/> <Item id="43008" name="Clear All Bookmarks"/> <Item id="43018" name="Cut Bookmarked Lines"/> <Item id="43019" name="Copy Bookmarked Lines"/> <Item id="43020" name="Paste to (Replace) Bookmarked Lines"/> <Item id="43021" name="Remove Bookmarked Lines"/> <Item id="43051" name="Remove Unmarked Lines"/> <Item id="43050" name="Inverse Bookmark"/> <Item id="43052" name="Find characters in range..."/> <Item id="43053" name="Select All Between Matching Braces"/> <Item id="43009" name="Go to Matching Brace"/> <Item id="43010" name="Find Previous"/> <Item id="43011" name="&Incremental Search"/> <Item id="43013" name="Find in Files"/> <Item id="43014" name="Find (Volatile) Next"/> <Item id="43015" name="Find (Volatile) Previous"/> <Item id="43016" name="Mark All"/> <Item id="43017" name="Unmark All"/> <Item id="43022" name="Using 1st Style"/> <Item id="43023" name="Clear 1st Style"/> <Item id="43024" name="Using 2nd Style"/> <Item id="43025" name="Clear 2nd Style"/> <Item id="43026" name="Using 3rd Style"/> <Item id="43027" name="Clear 3rd Style"/> <Item id="43028" name="Using 4th Style"/> <Item id="43029" name="Clear 4th Style"/> <Item id="43030" name="Using 5th Style"/> <Item id="43031" name="Clear 5th Style"/> <Item id="43032" name="Clear All Styles"/> <Item id="43033" name="1st style"/> <Item id="43034" name="2nd style"/> <Item id="43035" name="3rd style"/> <Item id="43036" name="4th style"/> <Item id="43037" name="5th style"/> <Item id="43038" name="Find style"/> <Item id="43039" name="1st style"/> <Item id="43040" name="2nd style"/> <Item id="43041" name="3rd style"/> <Item id="43042" name="4th style"/> <Item id="43043" name="5th style"/> <Item id="43044" name="Find style"/> <Item id="43045" name="Search Results Window"/> <Item id="43046" name="Next Search Result"/> <Item id="43047" name="Previous Search Result"/> <Item id="43048" name="Select and Find Next"/> <Item id="43049" name="Select and Find Previous"/> <Item id="44009" name="Post-It"/> <Item id="44010" name="Fold All"/> <Item id="44019" name="Show All Characters"/> <Item id="44020" name="Show Indent Guide"/> <Item id="44022" name="Wrap"/> <Item id="44023" name="Zoom &In Ctrl+Mouse Wheel Up"/> <Item id="44024" name="Zoom &Out Ctrl+Mouse Wheel Down"/> <Item id="44025" name="Show White Space and TAB"/> <Item id="44026" name="Show End of Line"/> <Item id="44029" name="Unfold All"/> <Item id="44030" name="Collapse Current Level"/> <Item id="44031" name="Uncollapse Current Level"/> <Item id="44049" name="Summary..."/> <Item id="44080" name="Document Map"/> <Item id="44084" name="Function List"/> <Item id="44086" name="1st Tab"/> <Item id="44087" name="2nd Tab"/> <Item id="44088" name="3rd Tab"/> <Item id="44089" name="4th Tab"/> <Item id="44090" name="5th Tab"/> <Item id="44091" name="6th Tab"/> <Item id="44092" name="7th Tab"/> <Item id="44093" name="8th Tab"/> <Item id="44094" name="9th Tab"/> <Item id="44095" name="Next Tab"/> <Item id="44096" name="Previous Tab"/> <Item id="44032" name="Toggle Full Screen Mode"/> <Item id="44033" name="Restore Default Zoom"/> <Item id="44034" name="Always on Top"/> <Item id="44035" name="Synchronise Vertical Scrolling"/> <Item id="44036" name="Synchronise Horizontal Scrolling"/> <Item id="44041" name="Show Wrap Symbol"/> <Item id="44072" name="Focus on Another View"/> <Item id="44081" name="Project Panel 1"/> <Item id="44082" name="Project Panel 2"/> <Item id="44083" name="Project Panel 3"/> <Item id="45001" name="Convert to Windows Format"/> <Item id="45002" name="Convert to UNIX Format"/> <Item id="45003" name="Convert to MAC Format"/> <Item id="45004" name="Encode in ANSI"/> <Item id="45005" name="Encode in UTF-8"/> <Item id="45006" name="Encode in UCS-2 Big Endian"/> <Item id="45007" name="Encode in UCS-2 Little Endian"/> <Item id="45008" name="Encode in UTF-8 without BOM"/> <Item id="45009" name="Convert to ANSI"/> <Item id="45010" name="Convert to UTF-8 without BOM"/> <Item id="45011" name="Convert to UTF-8"/> <Item id="45012" name="Convert to UCS-2 Big Endian"/> <Item id="45013" name="Convert to UCS-2 Little Endian"/> <Item id="10001" name="Move to Other View"/> <Item id="10002" name="Clone to Other View"/> <Item id="10003" name="Move to New Instance"/> <Item id="10004" name="Open in New Instance"/> <Item id="46001" name="Style Configurator..."/> <Item id="46150" name="Define your language..."/> <Item id="46080" name="User-Defined"/> <Item id="47000" name="About Notepad++..."/> <Item id="47001" name="Notepad++ Home"/> <Item id="47002" name="Notepad++ Project Page"/> <Item id="47003" name="Online Documentation"/> <Item id="47004" name="Forum"/> <Item id="47005" name="Get More Plugins"/> <Item id="47006" name="Update Notepad++"/> <Item id="47008" name="Help Contents"/> <Item id="47009" name="Set Updater Proxy..."/> <Item id="48005" name="Import Plugin(s) ..."/> <Item id="48006" name="Import Theme(s) ..."/> <Item id="48018" name="Edit Popup ContextMenu"/> <Item id="48009" name="Shortcut Mapper..."/> <Item id="48011" name="Preferences..."/> <Item id="49000" name="&Run..."/> <Item id="50000" name="Function Completion"/> <Item id="50001" name="Word Completion"/> <Item id="50002" name="Function Parameters Hint"/> <Item id="50006" name="Path Completion"/> <Item id="44042" name="Hide Lines"/> <Item id="42040" name="Open All Recent Files"/> <Item id="42041" name="Empty Recent Files List"/> <Item id="48016" name="Modify Shortcut/Delete Macro..."/> <Item id="48017" name="Modify Shortcut/Delete Command..."/> </Commands> </Main> <Splitter> </Splitter> <TabBar> <Item CMID="0" name="Close"/> <Item CMID="1" name="Close All BUT This"/> <Item CMID="2" name="Save"/> <Item CMID="3" name="Save As..."/> <Item CMID="4" name="Print"/> <Item CMID="5" name="Move to Other View"/> <Item CMID="6" name="Clone to Other View"/> <Item CMID="7" name="Full File Path to Clipboard"/> <Item CMID="8" name="Filename to Clipboard"/> <Item CMID="9" name="Current Dir. Path to Clipboard"/> <Item CMID="10" name="Rename"/> <Item CMID="11" name="Move to Recycle Bin"/> <Item CMID="12" name="Read-Only"/> <Item CMID="13" name="Clear Read-Only Flag"/> <Item CMID="14" name="Move to New Instance"/> <Item CMID="15" name="Open in New Instance"/> <Item CMID="16" name="Reload"/> <Item CMID="17" name="Close All to the Left"/> <Item CMID="18" name="Close All to the Right"/> <Item CMID="19" name="Open Containing Folder in Explorer"/> <Item CMID="20" name="Open Containing Folder in cmd"/> </TabBar> </Menu> <Dialog> <Find title="" titleFind="Find" titleReplace="Replace" titleFindInFiles="Find in Files" titleMark="Mark"> <Item id="1" name="Find Next"/> <Item id="2" name="Close"/> <Item id="1620" name="Find what:"/> <Item id="1603" name="Match &whole word only"/> <Item id="1604" name="Match &case"/> <Item id="1605" name="Regular &expression"/> <Item id="1606" name="Wrap aroun&d"/> <Item id="1612" name="&Up"/> <Item id="1613" name="&Down"/> <Item id="1614" name="Count"/> <Item id="1615" name="Find All"/> <Item id="1616" name="Mark line"/> <Item id="1617" name="Style found token"/> <Item id="1618" name="Purge for each search"/> <Item id="1621" name="Direction"/> <Item id="1611" name="Re&place with:"/> <Item id="1608" name="&Replace"/> <Item id="1609" name="Replace &All"/> <Item id="1623" name="Transparency"/> <Item id="1687" name="On losing focus"/> <Item id="1688" name="Always"/> <Item id="1632" name="In selection"/> <Item id="1633" name="Clear"/> <Item id="1635" name="Replace All in All Opened Documents"/> <Item id="1636" name="Find All in All Opened Documents"/> <Item id="1637" name="Find in Files"/> <Item id="1654" name="Filters:"/> <Item id="1655" name="Directory:"/> <Item id="1656" name="Find All"/> <Item id="1658" name="In all sub-folders"/> <Item id="1659" name="In hidden folders"/> <Item id="1624" name="Search mode"/> <Item id="1625" name="Normal"/> <Item id="1626" name="Extended ( , , , , x...)"/> <Item id="1660" name="Replace in Files"/> <Item id="1661" name="Follow current doc."/> <Item id="1641" name="Find All in Current Document"/> <Item id="1686" name="Transparency"/> <Item id="1703" name="&. matches newline"/> </Find> <GoToLine title="Go to..."> <Item id="2007" name="Line"/> <Item id="2008" name="Offset"/> <Item id="1" name="&Go"/> <Item id="2" name="I'm going nowhere"/> <Item id="2004" name="You are here:"/> <Item id="2005" name="You want to go to:"/> <Item id="2006" name="You can't go further than:"/> </GoToLine> <Run title="Run..."> <Item id="1903" name="The Program to Run"/> <Item id="1" name="Run"/> <Item id="2" name="Cancel"/> <Item id="1904" name="Save..."/> </Run> <StyleConfig title="Style Configurator"> <Item id="2" name="Cancel"/> <Item id="2301" name="Save && Close"/> <Item id="2303" name="Transparency"/> <Item id="2306" name="Select theme: "/> <SubDialog> <Item id="2204" name="Bold"/> <Item id="2205" name="Italic"/> <Item id="2206" name="Foreground colour"/> <Item id="2207" name="Background colour"/> <Item id="2208" name="Font name:"/> <Item id="2209" name="Font size:"/> <Item id="2211" name="Style:"/> <Item id="2212" name="Colour Style"/> <Item id="2213" name="Font Style"/> <Item id="2214" name="Default ext.:"/> <Item id="2216" name="User ext.:"/> <Item id="2218" name="Underline"/> <Item id="2219" name="Default keywords"/> <Item id="2221" name="User-defined keywords"/> <Item id="2225" name="Language:"/> <Item id="2226" name="Enable global foreground colour"/> <Item id="2227" name="Enable global background colour"/> <Item id="2228" name="Enable global font"/> <Item id="2229" name="Enable global font size"/> <Item id="2230" name="Enable global bold font style"/> <Item id="2231" name="Enable global italic font style"/> <Item id="2232" name="Enable global underline font style"/> </SubDialog> </StyleConfig> <UserDefine title="User-Defined"> <Item id="20001" name="Dock"/> <Item id="20002" name="Rename"/> <Item id="20003" name="Create New..."/> <Item id="20004" name="Remove"/> <Item id="20005" name="Save As..."/> <Item id="20007" name="User language: "/> <Item id="20009" name="Ext.:"/> <Item id="20012" name="Ignore case"/> <Item id="20011" name="Transparency"/> <Item id="20015" name="Import..."/> <Item id="20016" name="Export..."/> <StylerDialog title="Styler Dialog"> <Item id="25030" name="Font options:"/> <Item id="25006" name="Foreground colour"/> <Item id="25007" name="Background colour"/> <Item id="25031" name="Name:"/> <Item id="25032" name="Size:"/> <Item id="25001" name="Bold"/> <Item id="25002" name="Italic"/> <Item id="25003" name="Underline"/> <Item id="25029" name="Nesting:"/> <Item id="25008" name="Delimiter 1"/> <Item id="25009" name="Delimiter 2"/> <Item id="25010" name="Delimiter 3"/> <Item id="25011" name="Delimiter 4"/> <Item id="25012" name="Delimiter 5"/> <Item id="25013" name="Delimiter 6"/> <Item id="25014" name="Delimiter 7"/> <Item id="25015" name="Delimiter 8"/> <Item id="25018" name="Keyword 1"/> <Item id="25019" name="Keyword 2"/> <Item id="25020" name="Keyword 3"/> <Item id="25021" name="Keyword 4"/> <Item id="25022" name="Keyword 5"/> <Item id="25023" name="Keyword 6"/> <Item id="25024" name="Keyword 7"/> <Item id="25025" name="Keyword 8"/> <Item id="25016" name="Comment"/> <Item id="25017" name="Comment line"/> <Item id="25026" name="Operator 1"/> <Item id="25027" name="Operator 2"/> <Item id="25028" name="Numbers"/> </StylerDialog> <Folder title="Folder && Default"> <Item id="21101" name="Default style"/> <Item id="21102" name="Styler"/> <Item id="21105" name="Documentation:"/> <Item id="21104" name="Temporary doc site:"/> <Item id="21106" name="Fold compact (fold empty lines too)"/> <Item id="21220" name="Folding in code 1 style:"/> <Item id="21224" name="Open:"/> <Item id="21225" name="Middle:"/> <Item id="21226" name="Close:"/> <Item id="21227" name="Styler"/> <Item id="21320" name="Folding in code 2 style (separators needed):"/> <Item id="21324" name="Open:"/> <Item id="21325" name="Middle:"/> <Item id="21326" name="Close:"/> <Item id="21327" name="Styler"/> <Item id="21420" name="Folding in comment style:"/> <Item id="21424" name="Open:"/> <Item id="21425" name="Middle:"/> <Item id="21426" name="Close:"/> <Item id="21127" name="Styler"/> </Folder> <Keywords title="Keywords Lists"> <Item id="22101" name="1st Group"/> <Item id="22201" name="2nd Group"/> <Item id="22301" name="3rd Group"/> <Item id="22401" name="4th Group"/> <Item id="22451" name="5th Group"/> <Item id="22501" name="6th Group"/> <Item id="22551" name="7th Group"/> <Item id="22601" name="8th Group"/> <Item id="22121" name="Prefix mode"/> <Item id="22221" name="Prefix mode"/> <Item id="22321" name="Prefix mode"/> <Item id="22421" name="Prefix mode"/> <Item id="22471" name="Prefix mode"/> <Item id="22521" name="Prefix mode"/> <Item id="22571" name="Prefix mode"/> <Item id="22621" name="Prefix mode"/> <Item id="22122" name="Styler"/> <Item id="22222" name="Styler"/> <Item id="22322" name="Styler"/> <Item id="22422" name="Styler"/> <Item id="22472" name="Styler"/> <Item id="22522" name="Styler"/> <Item id="22572" name="Styler"/> <Item id="22622" name="Styler"/> </Keywords> <Comment title="Comment && Number"> <Item id="23003" name="Line comment position"/> <Item id="23004" name="Allow anywhere"/> <Item id="23005" name="Force at beginning of line"/> <Item id="23006" name="Allow preceeding whitespace"/> <Item id="23001" name="Allow folding of comments"/> <Item id="23326" name="Styler"/> <Item id="23323" name="Open"/> <Item id="23324" name="Continue character"/> <Item id="23325" name="Close"/> <Item id="23301" name="Comment line style"/> <Item id="23124" name="Styler"/> <Item id="23122" name="Open"/> <Item id="23123" name="Close"/> <Item id="23101" name="Comment style"/> <Item id="23201" name="Number style"/> <Item id="23220" name="Styler"/> <Item id="23230" name="Prefix 1"/> <Item id="23232" name="Prefix 2"/> <Item id="23234" name="Extras 1"/> <Item id="23236" name="Extras 2"/> <Item id="23238" name="Suffix 1"/> <Item id="23240" name="Suffix 2"/> <Item id="23242" name="Range:"/> <Item id="23244" name="Decimal separator"/> <Item id="23245" name="Dot"/> <Item id="23246" name="Comma"/> <Item id="23247" name="Both"/> </Comment> <Operator title="Operators && Delimiter"> <Item id="24101" name="Operators style"/> <Item id="24113" name="Styler"/> <Item id="24116" name="Operators 1"/> <Item id="24117" name="Operators 2 (separators required)"/> <Item id="24201" name="Delimiter 1 style"/> <Item id="24220" name="Open:"/> <Item id="24221" name="Escape:"/> <Item id="24222" name="Close:"/> <Item id="24223" name="Styler"/> <Item id="24301" name="Delimiter 2 style"/> <Item id="24320" name="Open:"/> <Item id="24321" name="Escape:"/> <Item id="24322" name="Close:"/> <Item id="24323" name="Styler"/> <Item id="24401" name="Delimiter 3 style"/> <Item id="24420" name="Open:"/> <Item id="24421" name="Escape:"/> <Item id="24422" name="Close:"/> <Item id="24423" name="Styler"/> <Item id="24451" name="Delimiter 4 style"/> <Item id="24470" name="Open:"/> <Item id="24471" name="Escape:"/> <Item id="24472" name="Close:"/> <Item id="24473" name="Styler"/> <Item id="24501" name="Delimiter 5 style"/> <Item id="24520" name="Open:"/> <Item id="24521" name="Escape:"/> <Item id="24522" name="Close:"/> <Item id="24523" name="Styler"/> <Item id="24551" name="Delimiter 6 style"/> <Item id="24570" name="Open:"/> <Item id="24571" name="Escape:"/> <Item id="24572" name="Close:"/> <Item id="24573" name="Styler"/> <Item id="24601" name="Delimiter 7 style"/> <Item id="24620" name="Open:"/> <Item id="24621" name="Escape:"/> <Item id="24622" name="Close:"/> <Item id="24623" name="Styler"/> <Item id="24651" name="Delimiter 8 style"/> <Item id="24670" name="Open:"/> <Item id="24671" name="Escape:"/> <Item id="24672" name="Close:"/> <Item id="24673" name="Styler"/> </Operator> <Item id="24001" name="Enable escape character:"/> </UserDefine> <Preference title="Preferences"> <Item id="6001" name="Close"/> <Global title="General"> <Item id="6101" name="Toolbar"/> <Item id="6102" name="Hide"/> <Item id="6103" name="Small icons"/> <Item id="6104" name="Big icons"/> <Item id="6105" name="Standard icons"/> <Item id="6106" name="Tab Bar"/> <Item id="6107" name="Reduce"/> <Item id="6108" name="Lock (no drag and drop)"/> <Item id="6109" name="Darken inactive tabs"/> <Item id="6110" name="Draw a coloured bar on active tab"/> <Item id="6111" name="Show status bar"/> <Item id="6112" name="Show close button on each tab"/> <Item id="6113" name="Double click to close document"/> <Item id="6118" name="Hide"/> <Item id="6119" name="Multi-line"/> <Item id="6120" name="Vertical"/> <Item id="6121" name="Menu Bar"/> <Item id="6122" name="Hide (use Alt or F10 key to toggle)"/> <Item id="6123" name="Localization"/> <Item id="6125" name="Document List Panel"/> <Item id="6126" name="Show"/> </Global> <Scintillas title="Editing"> <Item id="6216" name="Caret Settings"/> <Item id="6217" name="Width:"/> <Item id="6219" name="Blink Rate:"/> <Item id="6221" name="F"/> <Item id="6222" name="S"/> <Item id="6224" name="Multi-Editing Settings"/> <Item id="6225" name="Enable (Ctrl+Mouse click/selection)"/> <Item id="6201" name="Folder Margin Style"/> <Item id="6202" name="Simple"/> <Item id="6203" name="Arrow"/> <Item id="6204" name="Circle tree"/> <Item id="6205" name="Box tree"/> <Item id="6226" name="None"/> <Item id="6227" name="Line Wrap"/> <Item id="6228" name="Default"/> <Item id="6229" name="Aligned"/> <Item id="6230" name="Indent"/> <Item id="6206" name="Display line numbers"/> <Item id="6207" name="Display bookmarks"/> <Item id="6208" name="Show vertical edge"/> <Item id="6209" name="Number of columns: "/> <Item id="6211" name="Vertical Edge Settings"/> <Item id="6212" name="Line mode"/> <Item id="6213" name="Background mode"/> <Item id="6214" name="Enable current line highlighting"/> <Item id="6231" name="Border Width"/> </Scintillas> <NewDoc title="New Document"> <Item id="6401" name="Format"/> <Item id="6402" name="Windows"/> <Item id="6403" name="Unix"/> <Item id="6404" name="Mac"/> <Item id="6405" name="Encoding"/> <Item id="6406" name="ANSI"/> <Item id="6407" name="UTF-8 without BOM"/> <Item id="6408" name="UTF-8"/> <Item id="6409" name="UCS-2 Big Endian"/> <Item id="6410" name="UCS-2 Little Endian"/> <Item id="6411" name="Default language:"/> <Item id="6419" name="New Document"/> <Item id="6420" name="Apply to opened ANSI files"/> </NewDoc> <DefaultDir title="Default Directory"> <Item id="6413" name="Default Directory (Open/Save)"/> <Item id="6414" name="Follow current document"/> <Item id="6415" name="Remember last used directory"/> </DefaultDir> <FileAssoc title="File Association"> <Item id="4009" name="Supported exts:"/> <Item id="4010" name="Registered exts:"/> </FileAssoc> <LangMenu title="Language Menu"> <Item id="6505" name="Available items"/> <Item id="6506" name="Disabled items"/> <Item id="6507" name="Make language menu compact"/> <Item id="6508" name="Language Menu"/> </LangMenu> <TabSettings title="Tab Settings"> <Item id="6301" name="Tab Settings"/> <Item id="6302" name="Replace by space"/> <Item id="6303" name="Tab size: "/> <Item id="6510" name="Use default value"/> </TabSettings> <Print title="Print"> <Item id="6601" name="Print line number"/> <Item id="6602" name="Colour Options"/> <Item id="6603" name="WYSIWYG"/> <Item id="6604" name="Invert"/> <Item id="6605" name="Black on white"/> <Item id="6606" name="No background colour"/> <Item id="6607" name="Marge Settings (Unit:mm)"/> <Item id="6612" name="Left"/> <Item id="6613" name="Top"/> <Item id="6614" name="Right"/> <Item id="6615" name="Bottom"/> <Item id="6706" name="Bold"/> <Item id="6707" name="Italic"/> <Item id="6708" name="Header"/> <Item id="6709" name="Left part"/> <Item id="6710" name="Middle part"/> <Item id="6711" name="Right part"/> <Item id="6717" name="Bold"/> <Item id="6718" name="Italic"/> <Item id="6719" name="Footer"/> <Item id="6720" name="Left part"/> <Item id="6721" name="Middle part"/> <Item id="6722" name="Right part"/> <Item id="6723" name="Add"/> <Item id="6725" name="Variable:"/> <Item id="6727" name="Here display your variable settings"/> <Item id="6728" name="Header and Footer"/> </Print> <RecentFilesHistory title="Recent Files History"> <Item id="6304" name="Recent Files History"/> <Item id="6306" name="Max. number of entries:"/> <Item id="6305" name="Don't check at launch time"/> <Item id="6429" name="Display"/> <Item id="6424" name="In Submenu"/> <Item id="6425" name="Only File Name"/> <Item id="6426" name="Full File Name Path"/> <Item id="6427" name="Customize Maximum Length:"/> </RecentFilesHistory> <Backup title="Backup"> <Item id="6801" name="Backup"/> <Item id="6315" name="None"/> <Item id="6316" name="Simple backup"/> <Item id="6317" name="Verbose backup"/> <Item id="6804" name="Custom Backup Directory"/> <Item id="6803" name="Directory:"/> </Backup> <AutoCompletion title="Auto-Completion"> <Item id="6807" name="Auto-Completion"/> <Item id="6808" name="Enable auto-completion on each input"/> <Item id="6809" name="Function completion"/> <Item id="6810" name="Word completion"/> <Item id="6811" name="From"/> <Item id="6813" name="th character"/> <Item id="6814" name="Valid value: 1 - 9"/> <Item id="6815" name="Function parameters hint on input"/> <Item id="6851" name="Auto-Insert"/> <Item id="6857" name=" html/xml close tag"/> <Item id="6858" name="Open"/> <Item id="6859" name="Close"/> <Item id="6860" name="Matched pair 1:"/> <Item id="6863" name="Matched pair 2:"/> <Item id="6866" name="Matched pair 3:"/> </AutoCompletion> <MultiInstance title="Multi-Instance"> <Item id="6151" name="Multi-instance settings"/> <Item id="6152" name="Open session in a new instance of Notepad++"/> <Item id="6153" name="Always in multi-instance mode"/> <Item id="6154" name="Default (mono-instance)"/> <Item id="6155" name="* The modification of this setting needs to restart Notepad++"/> </MultiInstance> <Delimiter title="Delimiter"> <Item id="6251" name="Delimiter selection settings (Ctrl + Mouse double click)"/> <Item id="6252" name="Open"/> <Item id="6255" name="Close"/> <Item id="6256" name="Allow on several lines"/> </Delimiter> <MISC title="MISC."> <Item id="6307" name="Enable"/> <Item id="6308" name="Minimize to system tray"/> <Item id="6309" name="Remember current session for next launch"/> <Item id="6312" name="File Status Auto-Detection"/> <Item id="6313" name="Update silently"/> <Item id="6318" name="Clickable Link Settings"/> <Item id="6325" name="Scroll to the last line after update"/> <Item id="6319" name="Enable"/> <Item id="6320" name="No underline"/> <Item id="6322" name="Session file ext.:"/> <Item id="6323" name="Enable Notepad++ auto-updater"/> <Item id="6324" name="Document Switcher (Ctrl+TAB)"/> <Item id="6326" name="Enable smart highlighting"/> <Item id="6329" name="Highlight Matching Tags"/> <Item id="6327" name="Enable"/> <Item id="6328" name="Highlight tag attributes"/> <Item id="6330" name="Highlight comment/php/asp zone"/> <Item id="6331" name="Show only filename in title bar"/> <Item id="6332" name="Match case"/> <Item id="6333" name="Smart Highlighting"/> <Item id="6114" name="Enable"/> <Item id="6115" name="Auto-indent"/> <Item id="6117" name="Enable MRU behaviour"/> </MISC> </Preference> <MultiMacro title="Run a Macro Multiple Times"> <Item id="1" name="Run"/> <Item id="2" name="Cancel"/> <Item id="8006" name="Macro to run:"/> <Item id="8001" name="Run"/> <Item id="8005" name="times"/> <Item id="8002" name="Run until the end of file"/> </MultiMacro> <Window title="Windows"> <Item id="1" name="Activate"/> <Item id="2" name="OK"/> <Item id="7002" name="Save"/> <Item id="7003" name="Close window(s)"/> <Item id="7004" name="Sort tabs"/> </Window> <ColumnEditor title="Column Editor"> <Item id="2023" name="Text to Insert"/> <Item id="2033" name="Number to Insert"/> <Item id="2030" name="Initial number:"/> <Item id="2031" name="Increase by:"/> <Item id="2035" name="Leading zeros"/> <Item id="2032" name="Format"/> <Item id="2024" name="Dec"/> <Item id="2025" name="Oct"/> <Item id="2026" name="Hex"/> <Item id="2027" name="Bin"/> <Item id="1" name="OK"/> <Item id="2" name="Cancel"/> </ColumnEditor> </Dialog> <MessageBox> <ContextMenuXmlEditWarning title="Editing contextMenu" message="Editing contextMenu.xml allows you to modify your Notepad++ popup context menu. You have to restart your Notepad++ to take effect after modifying contextMenu.xml."/> <NppHelpAbsentWarning title="File does not exist" message=" doesn't exist. Please download it on Notepad++ site."/> <SaveCurrentModifWarning title="Save Current Modification" message="You should save the current modification. All the saved modifications can not be undone. Continue?"/> <LoseUndoAbilityWarning title="Lose Undo Ability Warning" message="You should save the current modification. All the saved modifications can not be undone. Continue?"/> <CannotMoveDoc title="Move to new Notepad++ Instance" message="Document is modified, save it then try again."/> <DocReloadWarning title="Reload" message="Are you sure you want to reload the current file and lose the changes made in Notepad++?"/> <FileLockedWarning title="Save failed" message="Please check whether if this file is opened in another program"/> <FileAlreadyOpenedInNpp title="" message="The file is already opened in the Notepad++."/> <DeleteFileFailed title="Delete File" message="Delete File failed"/> <!-- $INT_REPLACE$ is a place holder, don't translate it --> <NbFileToOpenImportantWarning title="Amount of files to open is too large" message="$INT_REPLACE$ files are about to be opened. Are you sure to open them?"/> </MessageBox> <ClipboardHistory> <PanelTitle name="Clipboard History"/> </ClipboardHistory> <DocSwitcher> <PanelTitle name="Doc Switcher"/> <ColumnName name="Name"/> <ColumnExt name="Ext."/> </DocSwitcher> <AsciiInsertion> <PanelTitle name="ASCII Insertion Panel"/> <ColumnVal name="Value"/> <ColumnHex name="Hex"/> <ColumnChar name="Character"/> </AsciiInsertion> <DocumentMap> <PanelTitle name="Document Map"/> </DocumentMap> <FunctionList> <PanelTitle name="Function List"/> <SortTip name="Sort" /> <ReloadTip name="Reload" /> </FunctionList> <ProjectManager> <PanelTitle name="Project"/> <WorkspaceRootName name="Workspace"/> <NewProjectName name="Project Name"/> <NewFolderName name="Folder Name"/> <Menus> <Entries> <Item id="0" name="Workspace"/> <Item id="1" name="Edit"/> </Entries> <WorkspaceMenu> <Item id="3122" name="New Workspace"/> <Item id="3123" name="Open Workspace"/> <Item id="3124" name="Reload Workspace"/> <Item id="3125" name="Save"/> <Item id="3126" name="Save As..."/> <Item id="3127" name="Save a Copy As..."/> <Item id="3121" name="Add New Project"/> </WorkspaceMenu> <ProjectMenu> <Item id="3111" name="Rename"/> <Item id="3112" name="Add Folder"/> <Item id="3113" name="Add Files..."/> <Item id="3117" name="Add Files from Directory..."/> <Item id="3114" name="Remove"/> <Item id="3118" name="Move Up"/> <Item id="3119" name="Move Down"/> </ProjectMenu> <FolderMenu> <Item id="3111" name="Rename"/> <Item id="3112" name="Add Folder"/> <Item id="3113" name="Add Files..."/> <Item id="3117" name="Add Files from Directory..."/> <Item id="3114" name="Remove"/> <Item id="3118" name="Move Up"/> <Item id="3119" name="Move Down"/> </FolderMenu> <FileMenu> <Item id="3111" name="Rename"/> <Item id="3115" name="Remove"/> <Item id="3116" name="Modify File Path"/> <Item id="3118" name="Move Up"/> <Item id="3119" name="Move Down"/> </FileMenu> </Menus> </ProjectManager> </Native-Langue> </NotepadPlus>
其他的,如分隔线、文件夹(Folder)怎么添加,看注释就知道了。
四、更高级的自定义
本人写的语言是一种非主流的脚本LPC。没有IDE,没有语法高亮。幸好LPC与C十分类似,使用C的语法高亮就可以。一开始我考虑Npp的自定义语法高亮,但没有成功。好像不管我怎么设置,其的类型检测如宏定义、预处理、字符串这些不如它内置语言的精准,也有可能是我没设置好。下面记录一下相关文件:
主题文件在npp/themes里
<WordsStyle name="PREPROCESSOR" styleID="9" fgColor="FFAA00" bgColor="2A211C" fontName="" fontStyle="0" fontSize="10" />
name="PREPROCESSOR" styleID="9"是内置类型,用于正则表达式判断是否关键字、预处理以及如何高亮,不能自定义,有FUCNTION类型,但我设置了没效果
<LexerType name="searchResult" desc="Search result" ext="">是修改搜索结果,
在类型里如TYPE WORD能添加自定义是因为有insert1字段或type1字段,这两个字段在npp/stylers.xml里定义
Notepad++的自动补全的列表文件在pluginsAPIs文件夹下,xml文件,需要在设置里把自动补全打开