1,847
edits
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== How can I get involved in Octave development? == | == How can I get involved in Octave development? == | ||
* <p>'''Be around. Be social.'''</p><p>Participate in our | * <p>'''Be around. Be social.'''</p><p>Participate in our [https://octave.discourse.group/ Discourse Forum]. Find things about Octave you don't like, and start thinking about how to fix them. '''Please do not just send a message listing your skills and offering to help.'''</p><p>Many people who now contribute to Octave first spent some time observing the community communication before they started to delve into the code. A good way to learn Octave is to understand the problems other people are having with it, so being helpful in Discourse not only helps Octave as a whole, but it also prepares you to become a better Octave contributor.</p> | ||
* <p>'''Kill the bugs.'''</p><p>Accurate bug reporting is also very useful. Find and report [http://bugs.octave.org/ bugs], making an attempt to diagnose them. Eventually, you will also know how to fix them. If you want to help with bug reports or patches, subscribe to the [https://lists.gnu.org/mailman/listinfo/octave-bug-tracker bug tracker mailing list]. You'll get updates on all bug activity, and you can jump in when you see something you can help with.</p> | * <p>'''Kill the bugs.'''</p><p>Accurate bug reporting is also very useful. Find and report [http://bugs.octave.org/ bugs], making an attempt to diagnose them. Eventually, you will also know how to fix them. If you want to help with bug reports or patches, subscribe to the [https://lists.gnu.org/mailman/listinfo/octave-bug-tracker bug tracker mailing list]. You'll get updates on all bug activity, and you can jump in when you see something you can help with.</p> | ||
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 === | |||
<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 | ||
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>". | ||
[[Category:Development]] | [[Category:Development]] | ||
[[Category:FAQ]] | [[Category:FAQ]] |