How to fold up code in live script?
97 views (last 30 days)
Chris on 6 Sep 2018
This isn't a feature for live scripts right now, but if you would like to see it please consider submitting an enhancement request through tech support. If you just need a workaround, here is what tech support suggested:
1. Convert to M file and "publish" with 'showcode' as false. First, convert the Live Script into an M file. You can do this interactively by clicking "Save As" and then choosing the "M" file option in the File Type section or you can do it programmatically as follows:
>> matlab.internal.liveeditor.openAndConvert('live_script_to_be_converted.mlx', 'output_script.m');
Once you have the converted M file which has all the section breaks and formatting, you can use the "publish" function as follows from the MATLAB Command Window:
>> options.format = 'pdf';
>> options.showCode = false;
This will publish the PDF file to a sub-directory called "html" inside the current working directory.
Here is a documentation link for the "publish" function and specifically, the "showCode" option:
Please note, when saving the MLX file as M file and then publishing, it does not convert the LaTeX expressions to something readable. It also automatically inserts a table of contents at the beginning.
2. Encapsulate the code in another script or function. An alternate approach would be for you to encapsulate the code you want to hide in another script or function and call it from your published Live Script. For example, something like:
%%Now plot a figure
In this case, instead of publishing all the plotting code, only the call to the plotting function would be published.
3. Publish the Live Script as an HTML and then modify the HTML page to hide the code sections and then publish it as a PDF.
The options stated above are simply workarounds as we do not currently have this functionality. A request has been submitted to our developers to add in this feature and they are considering this for future releases of MATLAB. We appreciate your feedback as we constantly strive to improve our products.
More Answers (2)
Prajit T R on 10 Apr 2018