AutoComplete only shows what is already typed - ONLY?



  • @Meta-Chuh,

    I noticed in your screenshot that DemoUDL.xml was still open. Are you sure it isn’t grabbing the auto-complete from the open file, rather than really processing it as an auto-complete file? In my experiments, if I closed the DemoUDL.xml, then exited NPP and came back in and loaded my file that was using the DemoUDL file type, it would no longer do autocompletes from keywords in the xml file.



  • @PeterJones

    sure. i’ve now closed all opened tabs (except change.log)
    closed notepad++
    reopened notepad++
    created a new 1 document
    set it to DemoUDL
    and started typing <Pe

    here’s a new screenshot:

    Imgur

    btw: my apologies, before posting, i read everything from beginning until your chime in call, but nothing below that, so i wrote many things which you’ve already posted after the call.



  • Interesting: If I do File > new then Language > DemoUDL, and start typing, it will auto-complete per the DemoUDL.xml settings, as you described. However, If I associate .demo with the DemoUDL (Language > Define Your Language and set Ext. = demo), then exit/re-run, and load file a file called tryAutoComplete.demo, it properly says “User Defined language file - DemoUDL”, so I know Notepad++ knows it’s a UDL file. But when I start typing in it, it does not auto-complete per the DemoUDL.xml settings. If I then set Language to Normal Text then back to DemoUDL and type more, then it will auto-complete.

    I tried the new vs Language toggle over multiple loads of Notepad++, and it consistently behaved that way.

    @Meta-Chuh, does yours work the way you expect, or the way I just described, for a file-extension that auto-selects the DemoUDL file-type? If it matches my behavior for you, then there might be a race condition where it’s not loading the DemoUDL.xml until some file is manually set

    Notepad++ v7.6.3   (64-bit)
    Build time : Jan 27 2019 - 17:16:47
    Path : C:\usr\local\apps\notepad++\notepad++.exe
    Admin mode : OFF
    Local Conf mode : ON
    OS : Windows 10 (64-bit)
    Plugins : ComparePlugin.dll DSpellCheck.dll MarkdownViewerPlusPlus.dll mimeTools.dll NppConverter.dll NppExec.dll NppFTP.dll PythonScript.dll
    

    <?xml version="1.0" encoding="Windows-1252" ?>
    <NotepadPlus>
    	<AutoComplete>
    		<KeyWord name="PeterJonesAddedThis" />
    		<KeyWord name="PeterJonesAddedThat" />
    		<KeyWord name="PeterJonesAddedTheOther" />
    	</AutoComplete>
    </NotepadPlus>
    


  • @PeterJones

    intriguing …

    does yours work the way you expect, or the way I just described, for a file-extension that auto-selects the DemoUDL file-type? If it matches my behavior for you, then there might be a race condition where it’s not loading the DemoUDL.xml until some file is manually set

    it works correctly on my installed version, which i guess is what you’ve expected prior to your tests from today.

    this also made me very curious, as i don’t understand it yet.
    and as the tests i conducted before were on an installed x86 version 7.6.3. and yours were on a portable 7.6.3 x64, i’ve repeated all tests on the portable versions too (x86 and x64).
    i got the same, working as expected results.

    here is a step by step list of what i did.
    please check if i missed out on something vital:

    • i’ve created a new udl called DemoUDL in each of the portable versions.

    • i’ve created and saved a file called autocomplete.demoudl, instead of using an unsaved new 1 tab.

    • i associated the extension demoudl to the udl DemoUDL at language > define your language > DemoUDL > Ext.:

    • i’ve opened the file autocomplete.demoudl the following 3 ways:
      a) right click > open with notepad++
      b) drag and drop from explorer
      c) open file from within notepad++

    once opened, regardless how, autocomplete is working as expected, without the need to switch to normal text and back to DemoUDL

    here are the new screenshots of both x86 and x64 portable 7.6.3:

    x86:
    Imgur

    x64:
    Imgur

    and here’s my DemoUDL.xml file:

    <?xml version="1.0" encoding="Windows-1252" ?>
    <NotepadPlus>
    	<AutoComplete>
    		<KeyWord name="MetaWroteSomethingUseful" />
    		<KeyWord name="MetaWroteSomethingUseless" />
    		<KeyWord name="MetaWroteSomethingMeaningful" />
    		<KeyWord name="MetaWroteSomethingMeaningless" />
    		<KeyWord name="MetaWroteSomethingGroundbreaking" />
    		<KeyWord name="MetaWroteSomethingUtterlyAbsurd" />
    	</AutoComplete>
    </NotepadPlus>
    

    my x86 portable debug info:

    Notepad++ v7.6.3   (32-bit)
    Build time : Jan 27 2019 - 17:20:30
    Path : C:\Users\User\Desktop\npp.7.6.3.bin\notepad++.exe
    Admin mode : OFF
    Local Conf mode : ON
    OS : Windows 7 (64-bit)
    Plugins : DSpellCheck.dll LuaScript.dll mimeTools.dll NppConverter.dll NppExport.dll NppSnippets.dll _CustomizeToolbar.dll 
    

    my x64 portable debug info:

    Notepad++ v7.6.3   (64-bit)
    Build time : Jan 27 2019 - 17:16:47
    Path : C:\Users\User\Desktop\npp.7.6.3.bin.x64\notepad++.exe
    Admin mode : OFF
    Local Conf mode : ON
    OS : Windows 7 (64-bit)
    Plugins : DSpellCheck.dll mimeTools.dll NppConverter.dll NppExport.dll NppSnippets.dll XMLTools.dll 
    

    important note: we have to find out why it does behave differently on your machine, this would otherwise drive me bonkers 😉



  • btw: @scot-65

    sorry, we got a bit carried away from your own non auto-complete experience, my apologies for that.

    did you resolve your auto-completion already with any given information, or with anything else you’ve been able to find out ?



  • @Meta-Chuh ,

    You can rest easy. I made it work.

    Well, don’t rest too easy, because I don’t know exactly the root cause. :-)

    I unzipped a fresh portable x64, and followed your steps exactly, and it worked. So I went back to my main portable x64, removed the old autocompletion XML file, renamed userDefineLang.xml, opened Notepad++, created the UDL and associated it with demoudl extension, and it auto-completed as expected. I copied all the contents of my old userDefineLang.xml (one UDL at a time, expecting it might break on one of them) – even once my new userDefineLang.xml was identical to my old one, it continued to work. I deleted my new one, and renamed my old back to userDefineLang.xml, and it still worked as expected. I even played around with whether it was called DemoUDL.xml or demoudl.xml, but that didn’t influence it.

    So, either I was doing something differently before that I didn’t notice, or there was a funny character that somehow got into the demoudl.xml, or… I don’t know. Oh, I was using remote-desktop from a linux machine into my PC for the earlier tests, and now I’m actually directly on my PC. Maybe the next time I remote-desktop in, I’ll try it again – it might be that the remote-desktop was intercepting some windows notification-message that Notepad++ needed.

    The good news is, it’s working for me. Hopefully @scot-65 will be able to get it to work.



  • Hi Meta and Peter,

    Reading thru what you two have mentioned makes sense however,
    one basic question I ask(ed) is “By completely uninstalling NP++ and
    manually removing leftover files/folders, will a complete reinstall
    build the file/folder paths correctly?”

    What places to check for leftover files/folders after an uninstall?

    If so, then there are a few files I wish to hold onto so the transition
    is smooth.
    a) Preferences - what is this file name? Is it version-specific?
    b) stylers.xml
    c) userDefineLang.xml
    d) Any other that comes to mind?

    I ask this in hopes that future visitors viewing this thread can
    have a smooth transition to the new file/folder geometry.

    I did notice in my folder system the two places where plugins.
    Since “Plugin Admin” is now in the program’s core (or is it?),
    do I need to install the (old) plugin manager?

    Shall I wait for the release that will now have a dedicated folder
    for the separate UDL’s, to redo the install?

    I thank you both for your time.

    Scot-65



  • Preferences are scattered in lots of different files. But for an installed version, they should all be in %AppData%\Notepad++\ – including stylers.xml and userDefineLang.xml.

    After doing the uninstall, make sure that %ProgramData(x86)%\Notepad++ is completely deleted – no files or folders left. Then installing fresh should have everything you need in that directory.

    After that, you might want to try starting with @Meta-Chuh’s steps where he demonstrated to me how to get the UDL autocomplete to work. After that is working, then replicate the steps, but using your UDL’s name.

    You do not need (and should not install) the old Plugin Manager plugin, because it is not compatible with 7.6.3, and Plugins Admin works for 7.6.3.

    Whether you wait for the dedicated UDL folder is up to you, and how urgent your needs are. Since the dedicated-folder version will also read the old userDefineLang.xml, it shouldn’t be a problem to re-install now. (And selfishly, @Meta-Chuh and I are impatient to know if you’re able to get it working ;-) )



  • @scot-65

    indeed, we are both very selfishly impatient to get your system up and running 😉

    in addition, just to be safe, and to get the best, cleanest possible result:
    before you uninstall, and clean all folders, i would suggest to make a copy of your C:\Program Files (x86)\Notepad++ and %AppData%\Notepad++ folders (the later one contains your config.xml where your settings are stored) somewhere else, for example in a backup folder your desktop.

    this way you can restore anything we might have forgotten.

    then uninstall and delete all folders posted by @PeterJones.
    then check for any leftovers and delete C:\Program Files (x86)\Notepad++ and C:\Program Files\Notepad++ if any of those are left.

    then make a fresh install of notepad++ 7.6.3 x86, and start by conducting your auto completion tests with a simple DemoUDL like we did before you import anything from your old installation or install any further plugins.

    regarding plugins: it is recommended not to use your old plugins, but to reinstall them by using the built in “plugin manager” as stated by @PeterJones , just to be on the safe side, that they work on 7.6.3



  • reinstall them by using the built in “plugin manager”

    ITYM “by using the built in Plugins Admin” :-)



  • @PeterJones

    ITYM “by using the built in Plugins Admin” :-)

    omg (-‸ლ)

    after so many times of writing this same sentence, this confusion has finally managed to infect me as well 😂😂😂👍



  • >> we are both very selfishly impatient…

    OK folks, did a complete backup and uninstall.

    Checked the following locations for stray files/folders:

    • appdata/local - Manually removed a empty NP++ root folder (probably from an ancient install of NP++).
    • appdata/local low - None found.
    • appdata/roaming - Manually removed root NP++ folder (with UDL and plugin folder inside).
    • program files - None found.
    • program files (x86) - Manually removed the NP++ root folder.
    • program data - None found.

    Also looked inside the registry “HKLM/software” and found nothing.

    Did a fresh install of “npp.7.6.3.Installer.exe”.

    Checked to see if folder “C:\Program Files (x86)\Notepad++\autoCompletion”. OK, it’s there.

    Opened an HTML document to see if Auto-Complete is working. Yes it is.

    Yes, a fresh install of plugins was on my mind. I made a screen capture of the plugin manager to see what I had before the uninstall…

    I could hold up a glass and propose a toast to both of you, but I am not an extrovert. :-)

    Thanks for your help Peter and Meta.
    Scot-65



  • @PeterJones I was able to replicate the issue you had and tried to see if there is a resolve as to why an edited xml file cannot be seen for an existing file loaded in the NP++ editor.

    Observations:

    • Inserting a brand new xml (dcl.xml) into the autoCompletion folder everything worked as expected.
    • Closing NP++ then replacing the xml file with an edited version, then reopening NP++, the file did not recognize the edited xml at all!
    • Close the file, clear the recent files list, then closing NP++ and finally double-click to open the file, the edited xml was not recognized.
    • However, if the file exists but has no characters inside, the edited xml can be seen.
    • By beginning a new file, the edited xml file can be seen.

    One item I did not try is to relocate the file in a different folder, then double-click in the file manager to open.
    Another I did not try is to close NP++, delete the edited xml file, open NP++ (with file present), close NP++, reinsert the edited xml into the autoCompletion folder then reopen NP++.

    For now the only resolve when an edited xml file replaces another in the autoCompletion folder is to start a new file in the editor to check the work…

    Hope this helps.

    Scot-65


Log in to reply