<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[[Help] Function list doesn&#x27;t support my language.]]></title><description><![CDATA[<p dir="auto">So, I just discovered that notepad++ has a built in function list, I can already see how this can be useful. However, a language that I use, Lua is not here. As well as many other languages that use functions I think.</p>
<p dir="auto">Also, I hear there can be some improvements made for some languages with functions, like better detection of functions et cetera.</p>
<p dir="auto">If you know how to do this by editing the functionList.xml or by another means please share them with me, I use Lua so I want to be able to use the function list feature with this language.</p>
<p dir="auto">thx!</p>
]]></description><link>https://community.notepad-plus-plus.org/topic/15662/help-function-list-doesn-t-support-my-language</link><generator>RSS for Node</generator><lastBuildDate>Fri, 10 Apr 2026 20:27:45 GMT</lastBuildDate><atom:link href="https://community.notepad-plus-plus.org/topic/15662.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 23 Apr 2018 04:14:00 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Fri, 27 Apr 2018 09:53:30 GMT]]></title><description><![CDATA[<p dir="auto">I just tested this new code here, and it doesn’t catch the comments or the strings incorrectly.</p>
<p dir="auto">Thanks a lot for this!</p>
<p dir="auto">I am trying to combine the table support from the code above into this new code.</p>
]]></description><link>https://community.notepad-plus-plus.org/post/31882</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31882</guid><dc:creator><![CDATA[SalviaSage]]></dc:creator><pubDate>Fri, 27 Apr 2018 09:53:30 GMT</pubDate></item><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Fri, 27 Apr 2018 09:14:28 GMT]]></title><description><![CDATA[<p dir="auto">This one works for me (no classes/tables yet though):</p>
<pre><code class="language-xml">			&lt;parser
				displayName="Lua w/o Class"
				id         ="lua_function"
				commentExpr="(?x)                                               # free-spacing (see `RegEx - Pattern Modifiers`)
								(?s:                                            # Multi Line Comment
									(?&amp;lt;!-)-{2}                               # - start-of-comment indicator with
									\x5B(?'MLCLVL'=*)\x5B                       #   ...specific level
									.*?                                         # - whatever, until
									\x5D\k'MLCLVL'\x5D                          # - end-of-comment indicator of equal level
								)
							|	(?m-s:-{2}.*$)                                  # Single Line Comment
							|	(?s-m:                                          # String Literal
									=\s*
									\x5B(?'SLLVL'=*)\x5B                        # - start-of-string indicator with specific level
									.*?                                         # - whatever, until
									\x5D\k'SLLVL'\x5D                           # - end-of-string indicator of equal level
								)
							"
			&gt;
				&lt;function
					mainExpr="(?x)                                              # free-spacing (see `RegEx - Pattern Modifiers`)
							(?m)                                                # ^ and $ match at line-breaks
							(?:
								^\h*                                            # optional leading white-space at start-of-line
								(?-i:local\s+)?
								(?-i:function)
								\s+[A-Za-z_]\w*
								(?:\.[A-Za-z_]\w*)*
								(?::[A-Za-z_]\w*)?
							|
								\s*[A-Za-z_]\w*
								(?:\.[A-Za-z_]\w*)*
								\s*=
								\s*(?-i:function)
							)
							\s*\([^()]*\)
						"
				&gt;
					&lt;functionName&gt;
						&lt;nameExpr expr="(?&amp;lt;=\bfunction\b)\s+[A-Za-z_][\w.:]*\s*\(|[A-Za-z_][\w.]*\s*=" /&gt;
						&lt;nameExpr expr="[A-Za-z_][\w.:]*" /&gt;
					&lt;/functionName&gt;
				&lt;/function&gt;
			&lt;/parser&gt;
</code></pre>
]]></description><link>https://community.notepad-plus-plus.org/post/31881</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31881</guid><dc:creator><![CDATA[MAPJe71]]></dc:creator><pubDate>Fri, 27 Apr 2018 09:14:28 GMT</pubDate></item><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Fri, 27 Apr 2018 08:36:32 GMT]]></title><description><![CDATA[<p dir="auto">I don’t think that worked.</p>
]]></description><link>https://community.notepad-plus-plus.org/post/31880</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31880</guid><dc:creator><![CDATA[SalviaSage]]></dc:creator><pubDate>Fri, 27 Apr 2018 08:36:32 GMT</pubDate></item><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Fri, 27 Apr 2018 08:19:50 GMT]]></title><description><![CDATA[<p dir="auto">Change the <code>?&lt;=</code> to <code>?&amp;lt;=</code>.</p>
]]></description><link>https://community.notepad-plus-plus.org/post/31879</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31879</guid><dc:creator><![CDATA[MAPJe71]]></dc:creator><pubDate>Fri, 27 Apr 2018 08:19:50 GMT</pubDate></item><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Fri, 27 Apr 2018 08:17:04 GMT]]></title><description><![CDATA[<p dir="auto">I just entered this code into the functionlist.xml as such:</p>
<pre><code>			&lt;/parser&gt;

			&lt;!-- Basic lua parser for functionList.xml in Notepad++ 6.5.3 --&gt;
			&lt;!-- See http://notepad-plus-plus.org/features/function-list.html --&gt;
			&lt;parser
				displayName="Lua"
				id         ="lua_function"
				commentExpr="(?x)                                               # free-spacing (see `RegEx - Pattern Modifiers`)
					(?s:                                            # Multi Line Comment
						(?&amp;lt;!-)-{2}                               # - start-of-comment indicator with
						\x5B(?'MLCLVL'=*)\x5B                       #   ...specific level
						.*?                                         # - whatever, until
						\x5D\k'MLCLVL'\x5D                          # - end-of-comment indicator of equal level
					)
				|   (?m-s:-{2}.*$)                                  # Single Line Comment
				|   (?s-m:                                          # String Literal
						=\s*
						\x5B(?'SLLVL'=*)\x5B                        # - start-of-string indicator with specific level
						.*?                                         # - whatever, until
						\x5D\k'SLLVL'\x5D                           # - end-of-string indicator of equal level
					)
				"
			&gt;

				&lt;!-- Basic lua table view, nested lua table not supported --&gt;
				&lt;classRange
					mainExpr="[.\w]+[\s]*=[\s]*\{"
					openSymbole="\{"
					closeSymbole="\}"
					displayMode="node"&gt;
					&lt;className&gt;
						&lt;nameExpr expr="[.\w]+"/&gt;
					&lt;/className&gt;
					&lt;function
						mainExpr="[.\w]+[\s]*=[\s]*['&amp;quot;]?[\w]+['&amp;quot;]?"&gt;
						&lt;functionName&gt;
							&lt;funcNameExpr expr=".*"/&gt;
						&lt;/functionName&gt;
					&lt;/function&gt;
				&lt;/classRange&gt;
				&lt;!-- Basic lua functions support --&gt;
				&lt;function
					mainExpr="(function[\s]+[.\w]+(:[\w]+)?)|([.\w]+[\s]*=[\s]*function)"
					displayMode="$className-&gt;$functionName"&gt;
					&lt;functionName&gt;
						&lt;nameExpr expr="((?&lt;=function)[\s]+[.:\w]+)|(([.\w]+)(?=([\s]*=[\s]*function)))"/&gt;
					&lt;/functionName&gt;
					&lt;className&gt;
						&lt;nameExpr expr="[.\w]+(?=:)"/&gt;
					&lt;/className&gt;
				&lt;/function&gt;
			&lt;/parser&gt;

			&lt;!-- ================================================================= --&gt;
		&lt;/parsers&gt;
	&lt;/functionList&gt;
&lt;/NotepadPlus&gt;
</code></pre>
<p dir="auto">It didn’t change anything. I think I indented right.<br />
It errors on this line &lt;nameExpr expr=“((?&lt;=function)[\s]+[.:\w]+)|(([.\w]+)(?=([\s]*=[\s]*function)))”/&gt;<br />
according to the online xml validator.</p>
]]></description><link>https://community.notepad-plus-plus.org/post/31878</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31878</guid><dc:creator><![CDATA[SalviaSage]]></dc:creator><pubDate>Fri, 27 Apr 2018 08:17:04 GMT</pubDate></item><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Fri, 27 Apr 2018 07:30:00 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://community.notepad-plus-plus.org/uid/11655">@SalviaSage</a><br />
Change the parsers header from</p>
<pre><code class="language-xml">        &lt;parser id="lua_function" displayName="Lua" commentExpr="--.*?$"&gt;
</code></pre>
<p dir="auto">to</p>
<pre><code class="language-xml">			&lt;parser
				displayName="Lua"
				id         ="lua_function"
				commentExpr="(?x)                                               # free-spacing (see `RegEx - Pattern Modifiers`)
								(?s:                                            # Multi Line Comment
									(?&amp;lt;!-)-{2}                               # - start-of-comment indicator with
									\x5B(?'MLCLVL'=*)\x5B                       #   ...specific level
									.*?                                         # - whatever, until
									\x5D\k'MLCLVL'\x5D                          # - end-of-comment indicator of equal level
								)
							|	(?m-s:-{2}.*$)                                  # Single Line Comment
							|	(?s-m:                                          # String Literal
									=\s*
									\x5B(?'SLLVL'=*)\x5B                        # - start-of-string indicator with specific level
									.*?                                         # - whatever, until
									\x5D\k'SLLVL'\x5D                           # - end-of-string indicator of equal level
								)
							"
			&gt;
</code></pre>
]]></description><link>https://community.notepad-plus-plus.org/post/31877</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31877</guid><dc:creator><![CDATA[MAPJe71]]></dc:creator><pubDate>Fri, 27 Apr 2018 07:30:00 GMT</pubDate></item><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Fri, 27 Apr 2018 06:42:03 GMT]]></title><description><![CDATA[<p dir="auto">This one for example:</p>
<pre><code>--&lsqb;&lsqb;
	Resize and hide any unusable bag slots in the frame.
		This function needs to know about the size and layout of the frame
--&rsqb;&rsqb;
</code></pre>
<p dir="auto">“needs” here is recognized as a function because it is right after the word “function”</p>
<pre><code>and here:
</code></pre>
<p dir="auto">–this function is there so that it can be overriden</p>
<pre><code>the word "is" is recognized here also.</code></pre>
]]></description><link>https://community.notepad-plus-plus.org/post/31876</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31876</guid><dc:creator><![CDATA[SalviaSage]]></dc:creator><pubDate>Fri, 27 Apr 2018 06:42:03 GMT</pubDate></item><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Fri, 27 Apr 2018 06:26:03 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://community.notepad-plus-plus.org/uid/11655">@SalviaSage</a><br />
Sigh, a <em>Lua source code example</em> containing function definitions in comment that the parser should not find.</p>
]]></description><link>https://community.notepad-plus-plus.org/post/31875</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31875</guid><dc:creator><![CDATA[MAPJe71]]></dc:creator><pubDate>Fri, 27 Apr 2018 06:26:03 GMT</pubDate></item><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Fri, 27 Apr 2018 06:06:17 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://community.notepad-plus-plus.org/uid/14">@MAPJe71</a></p>
<p dir="auto">This is my code, already integrated into functionlist and working.</p>
<p dir="auto">Just need to parse out the comments, so they dont appear in thefunction list.</p>
<pre><code>		&lt;!-- Basic lua parser for functionList.xml in Notepad++ 6.5.3 --&gt;
		&lt;!-- See http://notepad-plus-plus.org/features/function-list.html --&gt;
		&lt;parser id="lua_function" displayName="Lua" commentExpr="--.*?$"&gt;
			&lt;!-- Basic lua table view, nested lua table not supported --&gt;
			&lt;classRange
				mainExpr="[.\w]+[\s]*=[\s]*\{"
				openSymbole="\{"
				closeSymbole="\}"
				displayMode="node"&gt;
				&lt;className&gt;
					&lt;nameExpr expr="[.\w]+"/&gt;
				&lt;/className&gt;
				&lt;function
					mainExpr="[.\w]+[\s]*=[\s]*['&amp;quot;]?[\w]+['&amp;quot;]?"&gt;
					&lt;functionName&gt;
						&lt;funcNameExpr expr=".*"/&gt;
					&lt;/functionName&gt;
				&lt;/function&gt;
			&lt;/classRange&gt;
			&lt;!-- Basic lua functions support --&gt;
			&lt;function
				mainExpr="(function[\s]+[.\w]+(:[\w]+)?)|([.\w]+[\s]*=[\s]*function)"
				displayMode="$className-&gt;$functionName"&gt;
				&lt;functionName&gt;
					&lt;nameExpr expr="((?&lt;=function)[\s]+[.:\w]+)|(([.\w]+)(?=([\s]*=[\s]*function)))"/&gt;
				&lt;/functionName&gt;
				&lt;className&gt;
					&lt;nameExpr expr="[.\w]+(?=:)"/&gt;
				&lt;/className&gt;
			&lt;/function&gt;
		&lt;/parser&gt;

		&lt;!-- ================================================================= --&gt;
	&lt;/parsers&gt;
&lt;/functionList&gt;
</code></pre>
<p dir="auto">&lt;/NotepadPlus&gt;</p>
]]></description><link>https://community.notepad-plus-plus.org/post/31874</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31874</guid><dc:creator><![CDATA[SalviaSage]]></dc:creator><pubDate>Fri, 27 Apr 2018 06:06:17 GMT</pubDate></item><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Fri, 27 Apr 2018 05:22:39 GMT]]></title><description><![CDATA[<p dir="auto">Could you supply a code example?</p>
]]></description><link>https://community.notepad-plus-plus.org/post/31872</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31872</guid><dc:creator><![CDATA[MAPJe71]]></dc:creator><pubDate>Fri, 27 Apr 2018 05:22:39 GMT</pubDate></item><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Fri, 27 Apr 2018 05:04:46 GMT]]></title><description><![CDATA[<p dir="auto">I tried the one you suggested and it works.</p>
<p dir="auto">However, it also finds the word function in comments, obviously these are not functions…</p>
<p dir="auto">I guess the code can be made so that it skips these comments using regex or something like that.</p>
<p dir="auto">Unfortunately I don’t know regex and this is beyond my coding skill.<br />
I would be happy if someone could code this into the code that is found here (the code with green checkmark): <a href="https://stackoverflow.com/questions/19246077/how-to-add-lua-functions-to-the-notepad-functionlist-xml" rel="nofollow ugc">https://stackoverflow.com/questions/19246077/how-to-add-lua-functions-to-the-notepad-functionlist-xml</a></p>
<p dir="auto">That’s all, thanks if you look into this.</p>
]]></description><link>https://community.notepad-plus-plus.org/post/31871</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31871</guid><dc:creator><![CDATA[SalviaSage]]></dc:creator><pubDate>Fri, 27 Apr 2018 05:04:46 GMT</pubDate></item><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Fri, 27 Apr 2018 03:02:33 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://community.notepad-plus-plus.org/uid/11655">@SalviaSage</a> Why pick that one? And why not try one of the others when it appears not to work?</p>
<p dir="auto">Hint: pick the one from the favoured answer on <a href="https://stackoverflow.com/questions/19246077/how-to-add-lua-functions-to-the-notepad-functionlist-xml" rel="nofollow ugc">stackoverflow</a>.</p>
]]></description><link>https://community.notepad-plus-plus.org/post/31870</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31870</guid><dc:creator><![CDATA[MAPJe71]]></dc:creator><pubDate>Fri, 27 Apr 2018 03:02:33 GMT</pubDate></item><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Fri, 27 Apr 2018 01:45:53 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://community.notepad-plus-plus.org/uid/374">@Scott-Sumner</a></p>
<p dir="auto">Hi, I added this piece of code to the functionlist.xml that is found in both n++ installation directory and the user directory</p>
<p dir="auto">&lt;association langID=“23” id=“lua_function”/&gt;</p>
<p dir="auto">&lt;parser id=“lua_function” displayName=“Lua”&gt;<br />
&lt;function mainExpr=“^[t|locals]<em>functions+[^0-9][_A-Za-z0-9.: ]+s</em>(” displayMode=“$functionName”&gt;<br />
&lt;functionName&gt;<br />
&lt;nameExpr expr=“[.:]?s<em>K[^0-9][_A-Za-z0-9]+s</em>(”/&gt;<br />
&lt;nameExpr expr=“[^0-9][_A-Za-z0-9]+s*(”/&gt;<br />
&lt;nameExpr expr=“[^0-9][_A-Za-z0-9]+”/&gt;<br />
&lt;/functionName&gt;<br />
&lt;className&gt;<br />
&lt;nameExpr expr=“functions<em>K[^0-9][_A-Za-z0-9.:]+(?=s</em>[.:])”/&gt;<br />
&lt;/className&gt;<br />
&lt;/function&gt;<br />
&lt;/parser&gt;</p>
<p dir="auto">I took this code from an over 3 years old post,<br />
<a href="https://hristoz.com/2014/04/08/notepad-lua-function-list-with-tables/" rel="nofollow ugc">https://hristoz.com/2014/04/08/notepad-lua-function-list-with-tables/</a></p>
<p dir="auto">I think I integrated this code into the functionlist.xml correctly. Does anyone know how I can get it working?</p>
]]></description><link>https://community.notepad-plus-plus.org/post/31869</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31869</guid><dc:creator><![CDATA[SalviaSage]]></dc:creator><pubDate>Fri, 27 Apr 2018 01:45:53 GMT</pubDate></item><item><title><![CDATA[Reply to [Help] Function list doesn&#x27;t support my language. on Mon, 23 Apr 2018 17:01:45 GMT]]></title><description><![CDATA[<p dir="auto">Did you even <em>try</em> to find a Lua parser?</p>
<p dir="auto">With a Google-search:</p>
<ol>
<li><a href="https://notepad-plus-plus.org/community/topic/11351/function-list" rel="nofollow ugc">https://notepad-plus-plus.org/community/topic/11351/function-list</a></li>
<li><a href="https://hristoz.com/2014/04/08/notepad-lua-function-list-with-tables/" rel="nofollow ugc">https://hristoz.com/2014/04/08/notepad-lua-function-list-with-tables/</a></li>
<li><a href="http://yohanip.blogspot.nl/2014/01/lua-function-list-on-notepad.html" rel="nofollow ugc">http://yohanip.blogspot.nl/2014/01/lua-function-list-on-notepad.html</a></li>
<li><a href="http://stackoverflow.com/questions/19246077/how-to-add-lua-functions-to-the-notepad-functionlist-xml" rel="nofollow ugc">http://stackoverflow.com/questions/19246077/how-to-add-lua-functions-to-the-notepad-functionlist-xml</a></li>
</ol>
]]></description><link>https://community.notepad-plus-plus.org/post/31815</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/31815</guid><dc:creator><![CDATA[MAPJe71]]></dc:creator><pubDate>Mon, 23 Apr 2018 17:01:45 GMT</pubDate></item></channel></rss>