Comments (9)
Agreed. To hardcode "xterm" is probably a bad idea given that there is not just *nix systems.
However, honestly, I rather think that ")edit" should be removed completely. Nowadays you can access any file with any editor and you can do this while FriCAS is running. There is simply no need anymore to start an editor from within FriCAS. Am I wrong?
from fricas.
from fricas.
BTW, look into i-syscmd.boot. ")edit" calls editFile from compat.boot
editFile file ==
MEMQ(INTERN('"WIN32",FIND_-PACKAGE("KEYWORD")),_*FEATURES_*) =>
OBEY STRCONC('"notepad ", file)
OBEY STRCONC('"$FRICAS/lib/SPADEDIT ", file)
If you look into the script SPADEDIT, then you find that "xterm" is only used if you haven't set your FRICASEDITOR shell variable.
Unfortunately, I cannot give you a good value for FRICASEDITOR that works when running FriCAS inside WSL2 under Windows. So xterm is not totally hardcoded.
I guess, that it might make sense to change SPADEDIT so that the WSL2 case is nicely covered by default. (I have no clue, how.)
from fricas.
from fricas.
from fricas.
from fricas.
from fricas.
from fricas.
But, yes, as said by Ralf Hemmecke, on other systems like MinGW/MSYS where X11 (or the like) are not available xterm has no sense.
First, thanks for your response. Le sam. 17 juin 2023 à 01:04, hebisch @.***> a écrit :
Launching 'more' in an 'xterm'. You can specify different editor by setting FRICASEDITOR environment variable. Personally I would prefer this message. And, as an opinion, I would preferably use the $EDITOR (and eventually also $VISUAL) well known environment variables. > So 'xterm' is needed. If I run graphics examples via HyperDoc I also > need 'xterm'. If I install 'xterm', with X started I have graphic > examples produced from HyperDoc of course. Yes, I know. More precisely, FriCAS uses extra terminal when it _executes_ example code from HyperDoc: does not mater if graphics or not, what counts is fact that example is executed as opposed to using precomputed result (precomputed results, including graphics work without extra termial). We could make this configurable, but what are reasonable choices? We need ability to pass command line to execute inside the terminal and ability to set window title is desirable. We could easily check is say "FRICAS_TERM" environment variable is set and use it as command line string to which we concatenate command to start in the terminal. But it is not clear if such simple concatenation is convenient for other terminal emulators: it is not convenient for 'xterm', one would have to use shell functions to get desired functionality. Yes, I think FriCAS is right, 'xterm' in fact is _the_ good choice. My issue comes from a personal mistake. I likely removed some X11 apps like xterm. I checked via 'apt-cache rdepends xterm' and yes, installing xorg on my Debian-like system installs xterm. As needed. I checked other terminal emulator and they do not accept the same arguments so I think it would be a mess to handle other terminals correctly. So, it's my fault. […](#) > So I would first suggest to add 'xterm' in prerequisites in the > INSTALL file with X libraries. In past 35 years 'xterm' was considerd standard (mandatory) part of X11. This was exactly due to use cases like our: program needs a terminal emulator and wants to use one already installed in the system. System may have many different terminal emulators but 'xterm' was the only one warranted to exist. In INSTALL we probably should say that user needs _standard_ X windows including 'xterm'. -- Waldek Hebisch — Reply to this email directly, view it on GitHub <[#119 (comment)](https://github.com/fricas/fricas/issues/119#issuecomment-1595425914)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AKGLAMBJDKJW27SI6FI27P3XLTRATANCNFSM6AAAAAAVK7TKAE> . You are receiving this because you authored the thread.Message ID: ***@***.***>
from fricas.
Related Issues (20)
- sbcl build fails with "Heap exhausted, game over." HOT 1
- )edit without FRICASEDITOR set opens more in Xterm but closes immediately if a relative path is used HOT 4
- INSTALL: find: ‘target/x86_64-linux-gnu/doc’: No such file or directory HOT 2
- Assumption system? HOT 3
- [Feature Request]: Handle more C types in FriCAS FFI macros (fricas-lisp.lisp) HOT 1
- [compiler bug] type not properly checked
- OutputForm of float(i : Integer, j : Integer)
- `acosh` of Puiseux series fails with `series expansion has terms of fractional degree` HOT 4
- 1.3.10: Build fails without any particular error message in the end HOT 4
- would it make sense to teach Fricas about these simplifications involving `abs`? HOT 2
- Bad evaluation, for univariate polynomials, of 'x^2+2x+3' in the interpreter (should throw something) HOT 1
- compiler fails to reject a program HOT 4
- Strange characters in documentation HOT 2
- ')spool out.txt' does not write the output of a FriCAS command in the interpreter HOT 13
- sprintf region overruns HOT 1
- fast vs. slow compilation (with example code) HOT 1
- HyperDoc is not closed if it is only started with the system command synonym ')hd' HOT 4
- FriCAS crashes when closing a Xterm that has run an example using HyperDoc HOT 2
- Evaluation/substitution in matrices fails HOT 7
- spoonComp.c and spoon2D.c referenced undeclared function `fricas_sleep()` HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fricas.