On 18 Oct 2016, at 15:03, Stephan Witt 
<st.w...@gmx.net<mailto:st.w...@gmx.net>> wrote:

Am 18.10.2016 um 15:41 schrieb Paola Manzini 

On 18 Oct 2016, at 13:41, Stephan Witt 
<st.w...@gmx.net<mailto:st.w...@gmx.net>> wrote:

Am 18.10.2016 um 13:58 schrieb Paola Manzini 

On 18 Oct 2016, at 12:33, Kornel Benko <kor...@lyx.org<mailto:kor...@lyx.org>> 

Am Dienstag, 18. Oktober 2016 um 11:10:06, schrieb Paola Manzini 

Hi all,

I’ve searched the list and though this is not the first time the problem
noted, I haven’t been able to find any solution. The short of it is: it
just won’t work. So for instance if I type “5+2” then invoke
I only get a lonely = side to the right of the expression, and no result
(see screenshot)>


What happens if you call maxima from the console window and input the
string '(5+2);' followed by <Return>? Here I get:
(%i1) (5+2);
(%o1)                                  7


from the console I get the same as you:

     (%i2) 5+2;
     (%o2)                                  7

It should work. Do you have the same PATH settings on console?
Note, that I am not on MAC, so only guessing.


I know it should work, which is why it is sooo frustrating! I cannot see any 
path settings in the Terminal, but I have put in lyX the same address as the 
one invoked for Maxima run from a terminal window, and still no joy!

The problem is that LyX contains the call of the external utility as hard-coded 
string and it is „maxima“.

The only solution I can see is to wrap the wrapper script „maxima.sh“ located 
inside the Maxima.app bundle
with a utility script like the following code (I cannot attach it - every virus 
checker will block the transport):
======= 8< snip here >8 =======
exec /Applications/Maxima.app/Contents/Resources/maxima.sh "$@"
======= 8< snip here >8 =======

In terminal you may do this:
$ mkdir -p $HOME/bin
$ cat - > $HOME/bin/maxima <<EOF
exec /Applications/Maxima.app/Contents/Resources/maxima.sh "\$@"
$ chmod +x $HOME/bin/maxima

Then verify that "$HOME/bin“ is in LyX’s configured PATH - either as written or 
as "~/bin".

Then it should work.


PS: Be careful with the quotation marks and the backslash. They’re essential.

many thanks Stephan, I’ll try, but as I am as far from a techie as you can 
imagine, some questions for you:
1. are these two alternative methods, or do I need first to create the wrapper, 
then run from the terminal?
2. where should I save the wrapper, and with what name?
3. the <snip here> means joining the two “8”?

1. You need to create the wrapper first and may try it (after creating it) in 
terminal by typing "$HOME/bin/maxima“
2. The wrapper should be placed in folder $HOME/bin (which is created first in 
case it doesn’t exist already by „mkdir“)
3. The snip surrounded two lines is the contents of the wrapper script - „8<" 
and „>8" are the two scissors :)

To explain the terminal commands:
The first terminal command is ensuring the existence of the folder „$HOME/bin“.
The second one (starting with „cat“ and ending with EOF) is one the way to 
create the wrapper script without any editor.
The third command is making your new wrapper script executable.

The 2nd command needs to be entered exactly as you see it.

You can verify what you did by using the terminal command:

It should give you the 2-line-script between the lines surrounded by the 

The problem why you has to do it yourself is: I cannot send you any shell 
No virus scanner will let it through. It doesn’t matter if it is useful or not.


hi Stephan, thanks for the scissor tip, will never look at 8< the same way 
again :-)

I’ve followed all your steps, but sadly still nothing has changed - tough maybe 
I have erred somewhere? Here is what I did:

First of all I created the wrapper file, and put it in HOME\bin, which I had 
already created following your instructions.

Then I’ve run

$ cat $HOME/bin/maxima
in the terminal window, and got the two lines of the new “wrapper” file.

Then put both ~/bin and HOME/bin in the LyX path for good measure, reconfigured 
LyX, closed Lyx and relaunched it, and again, it does not work.

So I thought maybe I should also have run the last two of the three other lines 
of code to be run in the terminal. Did that, but as you can see from the 
attachment after running that command I do not get a “$” sign, but a “>” as 
terminal prompt. Maybe this is the problem?

Thanks for your patience!


Reply via email to