11
$\begingroup$

I'd like to generate a compiled search TRIE file (like those found in $InstallationDirectory\SystemFiles\FrontEnd\SystemResources\FunctionalFrequency\) to help implement the auto-completion feature on user-defined functions.

As described in File-name completion for custom functions, I could directly add a list of strings into the specialArgFunctions.tr file. However, my lists of arguments is long and likely to change during development, so I'd prefer to point to a TRIE file that I can update as needed.

How can I create a compiled TRIE file? Can this be done in Mathematica or Workbench? Is the TRIE file extension structure documented anywhere?


b3m2a1 comment:

These files are here in v11:

FileNames["*.trie", 
  PacletFind["AutoCompletionData"][[1]]["Location"],
  Infinity
 ]

Similarly in 11 is CA`CADumpTriePacket which seems to extract the properties from a trie file, but not the trie format itself.

$\endgroup$
4
  • $\begingroup$ Duplicate of 441? $\endgroup$ Apr 20, 2016 at 14:59
  • $\begingroup$ @DanielLichtblau, Thanks for the link to 441, but I am not asking about general practices for implementing a trie data structure in Mathematica. I am looking for the specific TRIE file structure used by Mathematica's FrontEnd. $\endgroup$
    – Rashid
    Apr 21, 2016 at 0:52
  • $\begingroup$ You may be interested in this: mathematica.stackexchange.com/a/129910/12 It shows how to add completion without editing specialArgFunctions.tr. What I don't know how to do is enable completion of non-string arguments, as all examples that do this use .trie files and I don't know how to create such files. $\endgroup$
    – Szabolcs
    Nov 2, 2016 at 13:36
  • $\begingroup$ @Szabolcs, thanks for the suggestion. I will try it out and let you know if I make any progress. Thanks again! $\endgroup$
    – Rashid
    Nov 5, 2016 at 23:07

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.