Timeline for How can I define symbols but not have them show up in the front end?
Current License: CC BY-SA 3.0
18 events
when toggle format | what | by | license | comment | |
---|---|---|---|---|---|
Aug 18, 2017 at 4:59 | history | edited | b3m2a1 | CC BY-SA 3.0 |
added 2421 characters in body
|
Aug 2, 2017 at 5:10 | comment | added | b3m2a1 | @QuantumDot look at the end of this .wl file github.com/b3m2a1/mathematica-BTools/blob/master/BTools.wl for what I do (it's auto-configured, so forgive any funky formatting). | |
Aug 2, 2017 at 5:08 | comment | added | b3m2a1 |
@QuantumDot the Internal`SymbolList trick only works before a thing is introduced (it just disables all coloring). If you didn't do it from a fresh kernel it won't work. On the other hand FERehideSymbols should be working, but as it's written there, it works just on symbols, not on strings. Try feSomethingWithSymbols[Names["MyPackage`*"],{2}] . I made sure to support strings there. I use a variant of FERehideSymbols in my own packages and it seems to work just fine there.
|
|
Aug 2, 2017 at 5:04 | comment | added | QuantumDot |
So I want to hide all the symbols in a particular context, say "`MyPackage`Internal`*" . I try to call your FERehideSymbols[...] with all the full names of the symbols I want to hide, but it fails to actually hide them in the front end (unless run directly from a notebook window). I also tried to put Internal`SymbolList[False] right before Begin["`Private`"] and Internal`SymbolList[True] after End[] in hopes of making all the MyPackage`Private symbols blue. But that doesn't work. Instead, it made (an apparently random subset) of the main MyPackage` symbols blue!
|
|
Aug 2, 2017 at 4:58 | comment | added | b3m2a1 | @QuantumDot It depends what you want to do. I actually do use it that way. But I have found it to be fragile, yes. | |
Aug 2, 2017 at 4:57 | comment | added | QuantumDot |
Interestingly, it doesn't seem to work completely right if called from an .m file inside a package, to hide certain symbols. Have you noticed this?
|
|
Jul 31, 2017 at 1:22 | history | bounty ended | QuantumDot | ||
Jul 29, 2017 at 22:23 | comment | added | QuantumDot | Very neat! Thanks a bunch for your efforts! | |
Jul 29, 2017 at 20:31 | comment | added | b3m2a1 | @QuantumDot took a while to figure it out, but I think I now know what everything is for. | |
Jul 29, 2017 at 20:18 | history | edited | b3m2a1 | CC BY-SA 3.0 |
expanded answer
|
Jul 29, 2017 at 19:04 | comment | added | b3m2a1 | @QuantumDot I have some ideas. I'll put up an update. | |
Jul 29, 2017 at 16:55 | comment | added | QuantumDot |
Its kind of entertaining to play around with this... have you found out what happens if you put the list of symbols in the second or fourth positions of the last argument of FrontEnd`UpdateKernelSymbolContexts ?
|
|
Jul 27, 2017 at 2:15 | history | edited | b3m2a1 | CC BY-SA 3.0 |
shrunk pictures
|
Jul 27, 2017 at 1:00 | comment | added | b3m2a1 |
@QuantumDot I'll do a bit more digging before throwing up my hands in defeat, but if you look at Names["FrontEnd*`*Symbol*"] there really isn't much left to cover.
|
|
Jul 27, 2017 at 0:57 | comment | added | QuantumDot | Ok, thanks for the info! | |
Jul 27, 2017 at 0:43 | comment | added | b3m2a1 | @QuantumDot don't know if that's possible via the FrontEnd directly but it is however settable at the system level and maybe soon at the paclet level, if Itai Seggev's "[forward] ... to the relevant developer" bears fruit. | |
Jul 27, 2017 at 0:40 | comment | added | QuantumDot | Do you know how to make the symbol appear black, but not appear in the autocompletion list? That would be very nice. | |
May 17, 2017 at 20:30 | history | answered | b3m2a1 | CC BY-SA 3.0 |