Code Monkey home page Code Monkey logo

octave's Introduction

Octave

Join the chat at https://gitter.im/texmacs/Lobby

Installation

It is a built-in plugin in TeXmacs. If you need to customize it, please install it under the $TEXMACS_HOME_PATH:

# For GNU/Linux or macOS
git clone -b v1.99.19 https://github.com/texmacs/octave.git $HOME/.TeXmacs/plugins/octave

# For Windows (Please use CMD or manually expand the %APPDATA% variable)
git clone https://github.com/texmacs/octave.git %APPDATA%\TeXmacs\plugins/octave

-b v1.99.19 means that the octave plugin cloned is the same as the built-in one in GNU TeXmacs v1.99.19.

octave's People

Contributors

da-liii avatar fpoulain avatar mdbenito avatar mgubi avatar slowphil avatar vdhoeven avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

walwan woutersj

octave's Issues

Support command `format`

pi
format long
pi
format long e
pi
pi * 1000

Possible solution: use fdisp and then load the string from the temporary file.

An unexpected flash when the session is started

Problem Description

From #4, there will be a flash of the octave gui when a session is started because the plugin now starts 'octave' rather than 'octave-cli' for the issue of plotting through qt.

Environments Reproduced

  • Linux: Manjaro KDE

Further revisions and discussions need.

Plots are not always shown

Plotting in a session doesn't always work.
If I put these lines in a session

octave>  x = [-pi:0.1:pi];
octave>  hold on;
octave>  plot(x,sin(x));
octave>  plot(x,cos(x))

and repeatedly execute the last two commands, after two times the plot doesn't show up anymore. It seems the method to set TM_OCTAVE_PLOT_DIGEST is not robust.
It seems like if we simply do

    if disp_ans
      tmplot (); ## call TeXmacs plotting interface
      clf()
    endif

in tmrepl.m that plots show as expected, since tmplot() already checks whether the plot is empty or not.

Octave session error due to "octave-cli" not recognizing "qt" as a plot toolkit on Linux

Problem description

In an octave sesion, when executing a (any) command, throw an error:

error: feval: /usr/lib/octave/5.2.0/oct/x86_64-pc-linux-gnu/init_fltk.oct: failed to load: libfltk_gl.so.1.3: cannot open shared object file: No such file or directory
error: called from
graphics_toolkit at line 91 column 5
figure at line 91 column 7
gcf at line 63 column 9
tmrepl at line 41 column 21
~/.TeXmacs/plugins/octave/octave/tmstart.m at line 47 column 1
warning: gh_manager::do_close_all_figures: some graphics elements failed to close.

Problem reproduction

  • Without fltk or gnuplot installed on the system. By default, octave will use qt as the plot engine.
  • Open TeXmaxs, open an octave session, execuate any command

Problem attribution

From /octave/progs/init-octave.scm, it seems that the command to open a new octave instance is "octave-cli". I tried to execute "available_graphics_toolkits", the result is

ans =
{
[1,1] = fltk
}.

Also, the result of command "graphics_toolkit" in octave is

ans = fltk.

After I searched for any similar issue, I found this. Perhaps it's because octave-cli does not recognize "qt" as a plot toolkit.

Possible solution

  • Use "octave --no-gui" as the command to create a new octave instance.
  • Install fltk or gnuplot package

Multi-line sessions and in-line graphics running Octave 6.1/6.2

On OSX 10.13.6 and OSX 10.15.7 plotting sessions with MacPorts octave_6.2.0_0 using the 1.99.19 octave-plugins (i.e. the one that comes with TeXmacs 1.99.19 as well as the latest upgrade as of 2021.03.13 from GitHub) seem to be somewhat flawed.

  • Multi-line sessions do not produce in-line graphics.

  • Plotting output, however, can be written to disk.

I do understand that the maintainers recommend usingoctave_5.x. Interestingly enough though, the older 1.99.18 octave-plugin in this respect works better, both, with TeXmacs 1.99.19 and octave_6.1.0_0/octave_6.2.0_0: Multi-line octave session run and produce in-line graphics.

Will this issue be addressed one of these days?

Cheers Tilda

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.