Developer FAQ: Difference between revisions

80 bytes added ,  11 June 2020
Line 19: Line 19:
* Our [[Contribution guidelines]] should be read and followed as well, to ensure acceptance of your contribution.
* Our [[Contribution guidelines]] should be read and followed as well, to ensure acceptance of your contribution.


== How can I find which file implements a given command? ==
== How can I find which source file implements a given command? ==
 
Use Octave's  {{manual|which}} command.
 
=== m-file functions ===


From within Octave, use <code>which</code>:
<syntaxhighlight lang="Octave">
<syntaxhighlight lang="Octave">
>> which help
>> which help
Line 28: Line 31:
   'help' is a function from the file /some/path/m/help/help.m
   'help' is a function from the file /some/path/m/help/help.m


If the desired function is a m-file, one can simply edit it inside the GUI, just type:
In this case, the desired function is a m-file, one can simply edit it inside the GUI, just type:
 
<syntaxhighlight lang="Octave">
<syntaxhighlight lang="Octave">
>> edit help
>> edit help
</syntaxhighlight>
</syntaxhighlight>
=== built-in functions ===


Some functions are already compiled (a.k.a. ''built-in functions''), for example:
Some functions are already compiled (a.k.a. ''built-in functions''), for example:
Line 41: Line 47:
   'addpath' is a built-in function from the file libinterp/corefcn/load-path.cc
   'addpath' is a built-in function from the file libinterp/corefcn/load-path.cc


This function is to be found in Octave's source code, in this case at [https://hg.savannah.gnu.org/hgweb/octave/file/b33d4fbce33e/libinterp/corefcn/load-path.cc#l2355].
This function is to be found in Octave's source code, in this case at {{Path|[https://hg.savannah.gnu.org/hgweb/octave/file/b33d4fbce33e/libinterp/corefcn/load-path.cc#l2355 libinterp/corefcn/load-path.cc]}}. Open the respective file with an editor of your choice and search for the pattern "<code> (addpath,</code>".
 
If the source code is cloned to a local machine, you can edit the repective file and search for something like "<code> (addpath,</code>".


[[Category:Development]]
[[Category:Development]]
[[Category:FAQ]]
[[Category:FAQ]]