Thanks for asking this question; I might not have discovered this customizable area without it.
The auto-completion option values are automatically loaded on Front End start from:
FileNameJoin[{$InstallationDirectory, "SystemFiles", "FrontEnd", "SystemResources", "FunctionalFrequency", "OptionValues"}]
This directory contains a series of Package (.m) files each with the name of a function, e.g. ArrayPlot.m. The file name itself determines that this will apply to the function ArrayPlot. It also contains an additional file that appears to apply to all functions: CommonOptions.m
The structure of each file is a list of Rules:
{Extension -> {"Automatic"}, Trig -> {"True", "False"}}
- The right hand side of each rule is always a list of Strings or an empty list
{} - Option values that are actual strings must be escaped:
"\"string\"" - Option names must be Symbols (thanks Kuba)
A special Rule form exists for icons within the menu, e.g. from ArrayPlot.m:
PlotTheme -> {{"\"Web\"", "PlotTheme-ArrayPlot-Web.png"}, {"\"Minimal\"", "PlotTheme-ArrayPlot-Minimal.png"}, {"\"Detailed\"", "PlotTheme-ArrayPlot-Detailed.png"}, {"\"Business\"", "PlotTheme-ArrayPlot-Business.png"}, {"\"Marketing\"", "PlotTheme-ArrayPlot-Marketing.png"}, {"\"Scientific\"", "PlotTheme-ArrayPlot-Scientific.png"}, {"\"Monochrome\"", "PlotTheme-ArrayPlot-Monochrome.png"}, {"\"Classic\"", "PlotTheme-ArrayPlot-Classic.png"}, {"\"Default\"", "PlotTheme-ArrayPlot-Default.png"}}
Each of these icon files reside in:
FileNameJoin @ {$InstallationDirectory, "SystemFiles", "FrontEnd", "SystemResources", "Bitmaps", "Popups", "CodeCompletion", "Thumbnails"}
I have not checked to see if other paths are also searched.
As an example I created a new file foo.m in the OptionValues directory with the content:
{myOption -> {"Doc", "Grumpy", "Happy", "Sleepy", "Bashful", "Sneezy", "Dopey"}}
Now after (re)starting Mathematica:
