File Exchange

image thumbnail

SubFuns

version 1.1.0.1 (5.88 KB) by Robert Bemis
Command-line utility to list all function declarations within a specified m-file.

1 Download

Updated 01 Sep 2016

View License

Editor's Note: This file was a File Exchange Pick of the Week

The MATLAB Editor provides a pull-down tool to Show Functions within an open m-file. But suppose you want to see function decalarations inside an m-file without editing. Perhaps you need to debug GUI callbacks, or understand someone else's function. You may not remember everything in a long list of functions after the Show Functions pull-down disappears. In these situations it would be helpful if the function list would hang around for reference. That's what this utility does.
This utility also highlights some interesting new capabilities of the MATLAB 7 desktop enviroment such as hyperlinks in the Command Window. Also, check out the code for examples of nested functions, block comments, and TODO/FIXME notes.

Cite As

Robert Bemis (2020). SubFuns (https://www.mathworks.com/matlabcentral/fileexchange/5563-subfuns), MATLAB Central File Exchange. Retrieved .

Comments and Ratings (8)

Robert Bemis

Thanks to Jon for bringing to my attention the class method limitation.

Note that SubFuns was written years before the new MATLAB class system was developed. Rather than just hack SubFuns for this case I'd rather do something elegant and robust but not immediately (other priorities). (That would be a good opportunity to address Telmo's case too.) Meanwhile, here's a workaround.

>> SubFuns +classdir/methodfcn

Enjoy!

It doesn't appear to work with functions that sit within a collection.

Nam Ngo

Thanks, it is a wonderful tool to analyze large m-file

Jimy Shah

Its a very helpful tool. Thanks !

abelardo castro rincon

gracias por hacerme una invitacion esta pajina es muy interesante

Telmo Amaral

This is very good and fast. Slightly modified, it can be used from within code to provide reflection (that is, to identify which sub-functions are defined in the code itself)! The only glitch is that it gets deceived by functions defined as follows (I sometimes use this formatting style, to have all function names vertically aligned).

function output =...
fun(input)

Victor Zakharov

It's need tool

Bob Johnson

Updates

1.1.0.1

Updated license

1.1.0.0

copyright

1.0.0.0

Bug fix: original errored m-files with only one function declaration. Also added comments and updated description to highlight some new language and desktop features with MATLAB 7 (Release 14).

MATLAB Release Compatibility
Created with R14
Compatible with any release
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired: HyperSubFunHelp

SubFuns/