MATLAB Answers

how to make syntax highlight function names with bold ?

38 views (last 30 days)
timo on 18 Sep 2016
Edited: John D'Errico on 31 May 2018
In other languages the function names are written with bold characters
I think this makes the code more intelligible
Is this possible to set up in MATLAB ?


Sign in to comment.

Answers (1)

Jordan Ross
Jordan Ross on 21 Sep 2016
I work for MathWorks and currently there is no supported way highlight function names in the MATLAB environment.
I have forwarded this enhancement request to the appropriate product team.


Show 3 older comments
Guillaume on 30 May 2018
class member functions names have exactly the same issue. How is matlab going to know in
if b is a member function of object a, a property (which could be dynamic) of object a, a static function of class a, or a field of structure a. I'm sure I'm forgetting more possibilities.
It wouldn't be impossible to do for functions but for scripts I'm not sure it can be done.
Stephen Cobeldick
Stephen Cobeldick on 31 May 2018
"It wouldn't be impossible to do for functions..." Thanks to the magic of string evaluation I would argue that it is impossible to do in functions as well.
John D'Errico
John D'Errico on 31 May 2018
The point is that in MATLAB, knowing if something is a function or not is possible to do only in context, at the time of execution. But to try to highlight something in the editor as a function or not is prone to failure in multiple ways. Again, consider this simple code:
% my EVIL script
eval(char([112 108 111 116 32 61 32 114 97 110 100 40 49 48 48 44 49 41 59]))
At first, plot is a function, and plot(1:5) will produce a plot. But the second time plot(1:5) occurs, it is no longer a function call. While this code is very simple, and what you want to see highlighted may appear obvious, the only way to know what is a function and is not, is to execute the code itself.
By the way, in case you want to know:
char([112 108 111 116 32 61 32 114 97 110 100 40 49 48 48 44 49 41 59])
ans =
'plot = rand(100,1);'
Honestly, I think such an idea would be the code from hell to write and try to produce a useful, accurate, consistent result. If MathWorks chooses to implement it, AND manages to find a way to do so in a robust way, then hey, GREAT!
However, the problems we have pointed out are real. If I were the MathWorks programmer assigned this task, I'd run screaming from the room in terror, as if Cthulhu himself was there. :) If I were the manager who chose to task some poor sot with the job, I'd think about investing TMW programming resources in a better place.
Remember that MathWorks has a finite set of resources. So their management needs to allocate those resources to tasks that have real value, AND will produce a stable result, not a bug filled mess.
Bug filled messes are something that management typically wishes only on their competition.

Sign in to comment.