According to the site you provided: "The value argument can be a string, boolean, or integer."
Obviously, a string can contain much more information than an integer or a logical one.
Since GreaseMonkey scripts are JavaScript, the maximum length for GM_setValue is the maximum length of the JavaScript string. In fact, the browser-specific JavaScript engine determines the maximum length of a string.
I do not know any features, but you can write a script to determine the maximum length.
Continue doubling the length until you get an error. Then try the value halfway between maxGoodLen and minBadLen, until maxGoodLen = maxBadLen - 1.
Steven
source share