<?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[Custom&#x2F;user adapters for autocompletion]]></title><description><![CDATA[<p dir="auto">Current solution have many minuses:</p>
<ul>
<li>slow parsing of big xml files</li>
<li>outdated and incomplete function list</li>
<li>inconvenient customization</li>
<li>ignores current context/scope (namespace, class and etc.)</li>
</ul>
<p dir="auto"><strong>I suggest adding support for custom/user auto-completion adapters.</strong><br />
simple solution is customization by <code>autocompletionAdapters.xml</code> file:</p>
<pre><code class="language-xml">&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;NotepadPlus&gt;
&lt;AutocompletionAdapters&gt;
     &lt;!-- 
     name: adapter ID
     language: NPP language name
     command: pattern CLI command, placeholders
         $(WORD) text to search
         $(FILE_PATH) full path to active file
         $(LINE) current line
         $(COLUMN) current line position
     bgcolor: optional background color of adapter's items in autocompletion list
     --&gt;
    &lt;AutocompletionAdapter name="php7" language="php" command="php -f nppAutocomplete.php $(WORD) $(FILE_PATH) $(LINE) $(COLUMN)"/&gt;
&lt;/AutocompletionAdapters&gt;
&lt;/NotepadPlus&gt;
</code></pre>
<p dir="auto">Adapter <code>command</code> must return XML with custom list:</p>
<pre><code class="language-xml">&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;NotepadPlus&gt;
&lt;AutocompletionAdapterResults&gt;
     &lt;!--
     value: autocompletion value to insert
     label: optional label display in list instead value
     hint: optional hint/description
      --&gt;
      &lt;AutocompletionAdapterResult value="..." label="..." hint="..."/&gt;
     &lt;AutocompletionAdapterResult value="ClassName" label="Namespace\ClassName" hint="Internal PHP class"/&gt;
     &lt;AutocompletionAdapterResult value="ClassName2" label="Namespace\ClassName2" hint="Extend ClassName class"/&gt;
     &lt;AutocompletionAdapterResult value="ClassName3"/&gt;
&lt;/AutocompletionAdapterResults&gt;
&lt;/NotepadPlus&gt;
</code></pre>
]]></description><link>https://community.notepad-plus-plus.org/topic/22389/custom-user-adapters-for-autocompletion</link><generator>RSS for Node</generator><lastBuildDate>Wed, 17 Jun 2026 16:02:39 GMT</lastBuildDate><atom:link href="https://community.notepad-plus-plus.org/topic/22389.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 15 Jan 2022 22:46:24 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Custom&#x2F;user adapters for autocompletion on Wed, 02 Mar 2022 20:54:09 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/donho" aria-label="Profile: donho">@<bdi>donho</bdi></a> what do you think about this?</p>
]]></description><link>https://community.notepad-plus-plus.org/post/74791</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/74791</guid><dc:creator><![CDATA[WinterSilence]]></dc:creator><pubDate>Wed, 02 Mar 2022 20:54:09 GMT</pubDate></item><item><title><![CDATA[Reply to Custom&#x2F;user adapters for autocompletion on Tue, 25 Jan 2022 14:05:35 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ekopalypse" aria-label="Profile: ekopalypse">@<bdi>ekopalypse</bdi></a></p>
<blockquote>
<p dir="auto">External tools in PhpStorm IDE as example of adapters implementation.</p>
</blockquote>
<p dir="auto">too can help you discover how it’s can work and plug to editor</p>
]]></description><link>https://community.notepad-plus-plus.org/post/73285</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/73285</guid><dc:creator><![CDATA[WinterSilence]]></dc:creator><pubDate>Tue, 25 Jan 2022 14:05:35 GMT</pubDate></item><item><title><![CDATA[Reply to Custom&#x2F;user adapters for autocompletion on Tue, 25 Jan 2022 13:55:38 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ekopalypse" aria-label="Profile: ekopalypse">@<bdi>ekopalypse</bdi></a></p>
<blockquote>
<p dir="auto">The problem I see is that none of the “existing(?)” adapters know about an Npp-related interface yet, so they would have to adapt to it. Why would they be interested in doing this?</p>
</blockquote>
<p dir="auto">Adapter is bridge between NPP and third party software. User write adapter locally or copy existed adapter from some repository.<br />
Example of adapter of implementation in <a href="https://ace.c9.io" rel="nofollow ugc">Ace editor</a>:<br />
<a href="https://gist.github.com/yuvalherziger/aa48782568c6914b55066d290ff88360" rel="nofollow ugc">https://gist.github.com/yuvalherziger/aa48782568c6914b55066d290ff88360</a></p>
]]></description><link>https://community.notepad-plus-plus.org/post/73282</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/73282</guid><dc:creator><![CDATA[WinterSilence]]></dc:creator><pubDate>Tue, 25 Jan 2022 13:55:38 GMT</pubDate></item><item><title><![CDATA[Reply to Custom&#x2F;user adapters for autocompletion on Tue, 25 Jan 2022 10:51:14 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/wintersilence" aria-label="Profile: wintersilence">@<bdi>wintersilence</bdi></a></p>
<p dir="auto">Please don’t get me wrong, I have no objections to your idea, it sounds reasonable.<br />
The problem I see is that none of the “existing(?)” adapters know about an Npp-related interface yet, so they would have to adapt to it. Why would they be interested in doing this?<br />
Or is this already some kind of standard that I haven’t heard about?<br />
Btw, if you want this to happen at all, I would suggest opening a feature request at github, that should increase the likelihood, though I’m still skeptical about such a solution.</p>
]]></description><link>https://community.notepad-plus-plus.org/post/73274</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/73274</guid><dc:creator><![CDATA[Ekopalypse]]></dc:creator><pubDate>Tue, 25 Jan 2022 10:51:14 GMT</pubDate></item><item><title><![CDATA[Reply to Custom&#x2F;user adapters for autocompletion on Mon, 24 Jan 2022 01:17:35 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ekopalypse" aria-label="Profile: ekopalypse">@<bdi>ekopalypse</bdi></a> protocol is protocol, adapter is… adapter. I don’t vote to extending text editor into IDE. It’s just simple solution to customize autocompletion - add to NPP will not so long. You can writes adapters not only for languages  - it’s useful to insert paths or snippets.</p>
<p dir="auto"><a href="https://www.jetbrains.com/help/phpstorm/settings-tools-external-tools.html" rel="nofollow ugc">External tools in PhpStorm IDE</a> as example of adapters implementation.</p>
]]></description><link>https://community.notepad-plus-plus.org/post/73210</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/73210</guid><dc:creator><![CDATA[WinterSilence]]></dc:creator><pubDate>Mon, 24 Jan 2022 01:17:35 GMT</pubDate></item><item><title><![CDATA[Reply to Custom&#x2F;user adapters for autocompletion on Mon, 24 Jan 2022 00:47:57 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/troshindv" aria-label="Profile: troshindv">@<bdi>troshindv</bdi></a> yes, I’m <code>jn-npp-scripts</code> contributor (:</p>
]]></description><link>https://community.notepad-plus-plus.org/post/73209</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/73209</guid><dc:creator><![CDATA[WinterSilence]]></dc:creator><pubDate>Mon, 24 Jan 2022 00:47:57 GMT</pubDate></item><item><title><![CDATA[Reply to Custom&#x2F;user adapters for autocompletion on Fri, 21 Jan 2022 11:23:34 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/troshindv" aria-label="Profile: troshindv">@<bdi>troshindv</bdi></a> thanks man</p>
]]></description><link>https://community.notepad-plus-plus.org/post/73124</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/73124</guid><dc:creator><![CDATA[Ruby Scott]]></dc:creator><pubDate>Fri, 21 Jan 2022 11:23:34 GMT</pubDate></item><item><title><![CDATA[Reply to Custom&#x2F;user adapters for autocompletion on Fri, 21 Jan 2022 05:45:24 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/wintersilence" aria-label="Profile: wintersilence">@<bdi>wintersilence</bdi></a> said in <a href="/post/73016">Custom/user adapters for autocompletion</a>:</p>
<blockquote>
<p dir="auto">I suggest adding support for custom/user auto-completion adapters.</p>
</blockquote>
<p dir="auto">Есть обходные варианты:<br />
<a href="https://github.com/sieukrem/jn-npp-plugin/wiki/Direct-calls-to-Scintilla" rel="nofollow ugc">https://github.com/sieukrem/jn-npp-plugin/wiki/Direct-calls-to-Scintilla</a><br />
см. “How to show autocompletition list box”</p>
<ul>
<li><a href="https://github.com/trdm/jn-npp-scripts" rel="nofollow ugc">https://github.com/trdm/jn-npp-scripts</a><br />
<img src="https://camo.nodebb.org/477cae30ba46b2b98dc3581ff7ac68dff8b32309?url=https%3A%2F%2Fraw.githubusercontent.com%2Ftrdm%2Fjn-npp-scripts%2Fmaster%2FDoc%2FIntel_4.gif" alt="Описание" class=" img-fluid img-markdown" /></li>
</ul>
]]></description><link>https://community.notepad-plus-plus.org/post/73114</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/73114</guid><dc:creator><![CDATA[TroshinDV]]></dc:creator><pubDate>Fri, 21 Jan 2022 05:45:24 GMT</pubDate></item><item><title><![CDATA[Reply to Custom&#x2F;user adapters for autocompletion on Thu, 20 Jan 2022 07:48:23 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/wintersilence" aria-label="Profile: wintersilence">@<bdi>wintersilence</bdi></a></p>
<p dir="auto">The problem I see is that this would mean that every “language adapter” would have to provide this new protocol, and I don’t see that happening anytime soon now that there is this defacto standard called LSP, but who knows …</p>
]]></description><link>https://community.notepad-plus-plus.org/post/73076</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/73076</guid><dc:creator><![CDATA[Ekopalypse]]></dc:creator><pubDate>Thu, 20 Jan 2022 07:48:23 GMT</pubDate></item><item><title><![CDATA[Reply to Custom&#x2F;user adapters for autocompletion on Wed, 19 Jan 2022 01:57:58 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ekopalypse" aria-label="Profile: ekopalypse">@<bdi>ekopalypse</bdi></a> My solution based on current implementation of autocompletion in NPP /Scrilla. It’s easy to realize/integrate to NPP unlike LSP. You can add adapter for language server too.</p>
]]></description><link>https://community.notepad-plus-plus.org/post/73048</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/73048</guid><dc:creator><![CDATA[WinterSilence]]></dc:creator><pubDate>Wed, 19 Jan 2022 01:57:58 GMT</pubDate></item><item><title><![CDATA[Reply to Custom&#x2F;user adapters for autocompletion on Sun, 16 Jan 2022 21:41:06 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/wintersilence" aria-label="Profile: wintersilence">@<bdi>wintersilence</bdi></a></p>
<p dir="auto">I am not sure if this makes sense, as the “whole world of programming languages” has allowed itself to be pushed towards an <a href="https://microsoft.github.io/language-server-protocol/" rel="nofollow ugc">LSP</a> solution.</p>
]]></description><link>https://community.notepad-plus-plus.org/post/73023</link><guid isPermaLink="true">https://community.notepad-plus-plus.org/post/73023</guid><dc:creator><![CDATA[Ekopalypse]]></dc:creator><pubDate>Sun, 16 Jan 2022 21:41:06 GMT</pubDate></item></channel></rss>