-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extended terminal handling #2
Conversation
@mmatera @GarkGarcia @suhr @rljacobson I don't have much knowledge of Mathematica's keyboard handling. Just what I can find from the online docs. If you happen to know about this aspect and want to look this over to make suggestions, I'd be grateful. Thanks. |
The command line interface for wma is quite basic. I think any of your proposals are implemented there. |
@rocky Mathematica's official CLI is spartan, to put it nicely. Even the most basic features are likely to be an improvement. |
@mmatera and @rljacobson thanks for the information. Somewhat related to this is the change in 8322c4a where directed arrows and double arrows were allowed in input. What I don't understand is the use of F3D5 and F3D4 as the arrow symbols when in Unicode the values are diffferent. Do you understand what is up here? Also, by the way the FoxySheep parser I think needs to be updated so that it parses these kinds of arrows. I am guessing this was a more recent addition so that's why there aren't in the otherwise meticulously precise FoxySheep? (By the way the whole pymathics Graph package is pretty cool even if very very rough. This is where I run into this where you can enter edges by using one of these symbols.) |
The reasons Mathematica makes some decisions about Unicode character choices are not known to me, but in most cases they are at least reasonable. In this case, 0xF3D4 & 0xF3D5 are in a private use block and thus are allowed to be used in this way by the Unicode standard. Pure speculation here, but I imagine that instead of dealing with the mess that is the Unicode arrows (see "About the Arrows" here), they chose private use code points that they could guarantee will have a consistent semantic meaning. (I am without access to Mathematica at the moment, so I can't investigate further.)
Correct. In fact, the graph operators are parsed differently in current versions from when they were introduced not that long ago. They used to be non associative so that I complained in the WolframLanguage Slack group that I wanted it to be parsed as |
@rljacobson would you be up for making the correction to FoxySheep? (or FoxySheep2 - your choice) You clearly are more qualified to do this than I. Although I've been working mostly here, I think the FoxySheep code should exist as a reasonable alternative. If on the other hand, you think it should be abandoned in favor of one of the other alternatives such as https://github.com/WolframResearch/codeparser (in C++) or the scanner/parser code in Mathics, then let me know and for the latter I will increase priority on bundling this separately. Know that you do great work, have a lot of insightful knowledge on WL and why it is the way it is, and this is appreciated. |
I do think there should be an independent parser like FoxySheep. From my perspective, the most important thing is that the operators are accurately described in the Language Spec, in particular in the table of operators. I want a single source of truth for operator syntax. But I certainly welcome any pull requests to the current FoxySheep code base—especially if it is useful to someone. That's my polite way of saying, "I don't want to do it, but you are welcome to." :) |
Start extended keyboard completion