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

      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