Community
    • Login

    7.5.3 (x64) Where is the 'default' autocompletion dictionary? Can I copy, modify and use?

    Scheduled Pinned Locked Moved Help wanted · · · – – – · · ·
    autocompletedictionary
    17 Posts 4 Posters 6.0k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Chip CooperC
      Chip Cooper
      last edited by Chip Cooper

      So, if I’m understanding you correctly, if the CreateFrame is built into the programming language, it won’t store the poor spelling, and will offer an autocompletion as CreateFrame, and not CreateFram, so it won’t hold onto the CreatFram because it’s stored ‘correctly’ as language dependant, in this case to .lua

      But, if it’s the ‘default one’ then it will fix it, if i correct it immediately; if however, it went through a save stored incorrectly, it will always remember that one, and there’s no editing it?

      So, we live with our error forever?!

      Did I get that right? Because apparently, though I did ultimately correct it, it wasn’t until I reopened the session /file and caught it… so I get punished with that error forever? ;-) Sounds like an oversite, or a bug to me!

      Or, if I could add it to the .lua file as part of the language dependency, then that ‘will’/‘might’ fix it? y/n? Because I’m not sure if it’s .lua dependent, though I suspect it is not; it is part of the language dependent framework in which I’m programming as an interface within the program/game that will use it.

      Claudia FrankC 1 Reply Last reply Reply Quote 1
      • Chip CooperC
        Chip Cooper
        last edited by

        So, I have to retract… apparently, this typo had propagated through several backup iterations of the code, and the reason I was seeing it, apparently, was I hadn’t saved the change, like I thought?! Now that it has changed, it’s gone. In a new file, this autocomplete keyword doesn’t even exist, so it’s part of the default… and once I changed it in the original, that file no longer shows the typo, just as you said.

        So, no bug, it now looks like a great feature! I can see if I’ve misspelled a word in the document, and if it shows in Autocomplete, then I know it exists in the document… somewhere. Which is awesome!

        Jason ClarkJ 1 Reply Last reply Reply Quote 1
        • Claudia FrankC
          Claudia Frank @Chip Cooper
          last edited by Claudia Frank

          @Chip-Cooper

          yep - you got it :-)

          Cheers
          Claudia

          1 Reply Last reply Reply Quote 1
          • Chip CooperC
            Chip Cooper
            last edited by Chip Cooper

            OK, so now I know it’s not in autocompletion, I found the english.xml file, it’s under /localization instead of /api as the wiki indicated. Guess everyone could edit that, but, I’d like to confirm before I do that, or clarify it by adding location for 7.5.3(x64).
            Now that I’ve found it, it doesn’t look that easy to add words to the language… Or am I mistaking that file for the one governing my .lua keywords. If it’s not too problematic, I would like to make a branch of .lua that covers my personal needs… until it proves useful, then share if it does.

            Can I get a clue about where this ‘programming language dependent’ file is located, and how I might go about understanding the structure? I can probably eventually find it, so just a clue for the latter would suffice. Thanks.

            1 Reply Last reply Reply Quote 0
            • Chip CooperC
              Chip Cooper
              last edited by

              Gack! english.xml has nothing to do with autocomplete! o.O but, ironically, I think I’m learning some .xml :-)

              1 Reply Last reply Reply Quote 0
              • Chip CooperC
                Chip Cooper
                last edited by

                Many thanks to Claudia Frank!
                aha, I see… I think… “functionList.xml”, and there’s none for .lua, or specifically in my case, perhaps a .lua_WoW…
                Brain hurts a lot… but, would need to learn and add here… (sigh) it’s a start. There appears to be no .lua function completion .xml. In the english.xml - a “Here be dragons” warning… with a “Keep out!” which I’ll heed… but basic .lua stuff here.

                But, I see I have a long way to go; still, exploration has started, seeing what’s up here with various aspects of notepad++, and perhaps, whatever I do here will be a work in progress for quite some time… at least until I could contribute anything useful. :-(

                @ 63yrs of age, I can still (gratefully) handle a pretty steep learning curve… but, yes… slowing down just a bit… got some handy links now, to make progress. At least your responses actually encouraged me to take a peek under the hood. I always say, when it comes to programming and languages… I’ve forgotten more than I know; but, what I do have embedded is a pretty comprehensive concept of structures in languages. This can and does go a long ways… and xml is not that hard to read…, and I see the .xml scintilla structures (I think)… and function parsers (I know)… and how this is implemented… just a wee bit with my head peeking at the surface of what pokes out… under the hood.

                Claudia FrankC 2 Replies Last reply Reply Quote 0
                • Claudia FrankC
                  Claudia Frank @Chip Cooper
                  last edited by Claudia Frank

                  @Chip-Cooper

                  no no, the functionlist.xml isn’t what you are looking for, at least I assume.
                  You are looking for the API xml files which are stored under
                  … notepad++/plugins/APIs/.
                  There is no default one for lua you either have to download one from the web
                  or create it yourself. (I was under the impression you already have downloaded one)

                  The functionlist.xml is for showing the functions defined in the current program.
                  Basically you declare regex to search your current code and display the matches in the
                  function list window in a tree form.

                  Cheers
                  Claudia

                  Claudia FrankC 1 Reply Last reply Reply Quote 1
                  • Claudia FrankC
                    Claudia Frank @Chip Cooper
                    last edited by

                    @Chip-Cooper

                    this is what functionlist offers

                    Cheers
                    Claudia

                    1 Reply Last reply Reply Quote 1
                    • Claudia FrankC
                      Claudia Frank @Claudia Frank
                      last edited by Claudia Frank

                      @Chip-Cooper

                      and this is, what I assume, you are looking for - auto-completion
                      On windows it is looking much nicer - this is one of the quirks when running npp on linux.

                      Cheers
                      Claudia

                      1 Reply Last reply Reply Quote 1
                      • Chip CooperC
                        Chip Cooper
                        last edited by

                        I see what you’re saying @Claudia-Frank… so please wrap me up here (please… and thank you of course)
                        Ah, I see… yes the first would be very helpful… So, the lang.xml & functionList.xml go hand in hand. (in this case) lua.xml (which I’d have to make) in the ./plugins/APIs/ and functionList.xml to parse the list and selection. Does this also require a PlugIn .dll or would that only be if I need more than a parse and lookup. Or would the alone provide the list… I guess it’s still not completely clear.

                        So, to have parsing the language functions the components are: (for lua)
                        lua.xml which is the list of functions and descriptions
                        modify functionList .xml which is used to display and parse the list of functions
                        ?? PlugIn.dll if I need more, or to interpret or parse the whole line… or display something else, or… or…

                        lang.xml (Python) in action… using both lang.xml and functionList.xml?
                        I’m seeing what the lang.xml does

                        Claudia FrankC 2 Replies Last reply Reply Quote 0
                        • chcgC
                          chcg
                          last edited by

                          As a starting point you might checkout this: http://ageekandhisblog.com/notepad-plugin-lua-corona-api-autocompletion/

                          1 Reply Last reply Reply Quote 1
                          • Claudia FrankC
                            Claudia Frank @Chip Cooper
                            last edited by

                            @Chip-Cooper

                            not exactly.

                            langs.xml is provided to scintilla, the edit control notepad++ uses, which does all the coloring an folding.
                            If, for example, lua is evolving to version X and introduces new keywords then one has to edit this file
                            an add the keywords to let scintilla know that those new words need to be colored as well. But I would
                            avoid editing this file directly, use the StyleConfigurator instead.

                            functionlist.xml is used by npp. By defining languages specific regular expressions, npp is able
                            to scan the current document open and outline the matches from the regular expression in a tree-view like manner.
                            One would edit functionlist.xml when the programming language used hasn’t the needed regular expression yet or
                            when an already supported programming language needs to be enhanced by new functionality.
                            Let’s say you want to see the pythons doc strings in the functionlist window as well.

                            API.xml (API needs to be replaced by the language specific word) is used by npp to provide language dependent
                            auto completion and hints. Like you can also fade in a window explaining the syntax of a command which, of course,
                            has to be added to the API.xml beforehand. A good starting point, also not maintained anymore, to find
                            some api files is http://docs.notepad-plus-plus.org/index.php/User_Defined_Language_Files

                            stylers.xml is used by npp to get the information how to style certain words, like keyword open should
                            be colored in blue use bold font with size 10… This can be set as an general rule or per language but,
                            again, don’t edit this file directly but use StyleConfigurator instead.

                            I hope I was able to clarify the usage of the different xml files a little bit more.

                            Cheers
                            Claudia

                            1 Reply Last reply Reply Quote 1
                            • Claudia FrankC
                              Claudia Frank @Chip Cooper
                              last edited by

                              @Chip-Cooper

                              Those files, when available, are used by npp automatically. No additional plugins needed but
                              this doesn’t mean a language specific plugin doesn’t provide additional features you might
                              want to have.

                              Cheers
                              Claudia

                              1 Reply Last reply Reply Quote 0
                              • Chip CooperC
                                Chip Cooper
                                last edited by

                                By George, I think I’ve got it! Yes, I’ll look for a language specific API.xml first. The code seems straight forward, and my xml is improving daily. Clear on the Scintilla langs.xml (I was confusing programming languages with native languages we speak) Naturally I’ll stay out of files marked, do not change, or even “Here be Dragons”, though it didn’t keep me out of Microsoft’s registry. lol
                                Yes, I’m already using the Style Configurator… And I just realized that some of the things I was looking for are under the Global Styles, for changing color… (no wonder I couldn’t find them under the language). Here though, I’d worry about conflicting colors with a global change.

                                I like the idea of a plugin. It’s been a while since I wrote a .dll. I was once proficient in C, C++ (no C#) Nothing a good ‘dictionary’ and 'syntax" reference can’t solve. Of course, a savvy IDE wouldn’t hurt either… but don’t get me wrong… I love my Notepad++, been a fan for years… Best (more than basic) editor around, IMHO. I’ve been using it for since I can remember, it’s about time I poked under the hood… it’s fairly friendly that way IMO, awesome!.

                                That does clarify it pretty much. I can’t Thank you enough for all the help, much appreciated. I may be a newbie here; but, I’m anything but when it comes to… well… a lot. I hope for many more productive years… Somehow I’ve managed to make programming and development a hobby, as well as a profession…

                                Thanks to you both, and you’ve been a fantastic help! @Claudia-Frank @chcg

                                1 Reply Last reply Reply Quote 1
                                • Jason ClarkJ
                                  Jason Clark @Chip Cooper
                                  last edited by

                                  @Chip-Cooper Thank you, this finally answered my question about autocomplete! I wish it were documented better. Thanks!

                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post
                                  The Community of users of the Notepad++ text editor.
                                  Powered by NodeBB | Contributors