bugGNU Octave - Bugs: bug #38369, help fails to display the help...

 
 

bug #38369: help fails to display the help text for class methods

Submitter:  Julien Bect <jbect>
Submitted:  Thu 21 Feb 2013 03:31:23 PM UTC
 
Category:  Interpreter Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Matlab Compatibility
Status:  Fixed Assigned to:  None
Originator Name:  Open/Closed:  * Closed
Release:  * dev Operating System:  * GNU/Linux
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment (Rich Markup)
   

Comment Type & Canned Response:
       

 

( Jump to the original submission )

Mon 22 Nov 2021 02:51:47 AM UTC, comment #13: 

The original bug report, no help text for class methods, has been fixed.  I have filed a new bug report about the fact that some syntax methods for accessing help do not work.  See bug #61521.

Rik <rik5>
Project Administrator
Fri 27 Nov 2020 06:16:09 PM UTC, comment #12: 

There are a number of unresolved issues here.  The most generic syntax

help methodname

does not work for old-style classes (@class) or new-style classes (classdef).

Dot notation does work for new-style classes, but not for old-style classes.

help class.method

Slash notation does not work for new-style or old-style classes

help class/method

But extended slash notation does work for old style-classes.

help @class/method

This suggests that simply getting Octave to recognize '.' or '/' as a scope operator would then allow the existing code which actually fetches the help text to work. 

Rik <rik5>
Project Administrator
Fri 27 Nov 2020 08:24:47 AM UTC, comment #11: 

This issue is still present in Octave 5.2.0.

(context prompting my update: https://stackoverflow.com/questions/65019819/how-do-i-make-octave-suggest-the-methods-of-my-class-when-i-hit-tab-and-show-the?noredirect=1#comment114970822_65019819 )

Also, a comment on Julien's observation (comment #7 below) that matlab displays the contents of a class, actually I don't think that is true. What is more likely is that the class provides a Contents.m file. This functionality used to be supported by octave, but it seems to have broken in recent versions (see also bug #59552 )

Tasos Papastylianou <tpapastylianou>
Sun 20 Nov 2016 09:31:53 PM UTC, comment #10: 

This (documentation and help-function) issue is still present in Octave 4.2.0.

Hartmut <hardy>
Sun 24 Feb 2013 12:41:25 AM UTC, comment #9: 

Yes, let's start with the simple stuff which is documenting the behavior we have today.  We can then work on getting some Matlab compatibility.

Rik <rik5>
Project Administrator
Sat 23 Feb 2013 10:15:22 PM UTC, comment #8: 

Perhaps the first thing to do would be to extend the help text for help() itself, since no information is currently provided on how to get help for a class function.

Do you want me to propose a patch for that ?

Julien Bect <jbect>
Sat 23 Feb 2013 10:08:49 PM UTC, comment #7: 

Yet another way of using help() in Matlab, that is not currently supported by Octave:

help ClassName

displays a summary of all class methods (methods name + the first line of help text).

Julien Bect <jbect>
Sat 23 Feb 2013 10:03:46 PM UTC, comment #6: 

It's the first one: relative path with respect to pwd.

Julien Bect <jbect>
Sat 23 Feb 2013 08:38:13 PM UTC, comment #5: 

Just to be clear, when calling

help aaa/@ClassName/dudule

does Matlabe implicitly try

help `pwd`/aaa/@ClassName/dudule

or does it try everything in the PATH variable

help {PATH}/aaa/@ClassName/dudule

The first would be easier to support.

Rik <rik5>
Project Administrator
Sat 23 Feb 2013 04:04:03 PM UTC, comment #4: 

In fact, Matlab's help function allows to provide the path to the m-file for which the help text is to be displayed. So,

help aaa/@ClassName/dudule
help aaa/ClassName.dudule
help aaa/ClassName/dudule

all display the help text for the class function dudule.m if the class folder @ClassName is in ./aaa/ (even if it's not in the search path).

Julien Bect <jbect>
Sat 23 Feb 2013 03:57:24 PM UTC, comment #3: 

[Something went wrong with my previous comment...]

The syntax

help @ClassName/dudule

actually works in Octave, if @ClassName is in the search path. On the other hand, the other syntaxes don't.

Julien Bect <jbect>
Sat 23 Feb 2013 03:50:51 PM UTC, comment #2: 

Yes you're right, sorry, I was mistaken in my first post. The syntax

help @ClassName/dudule
-verbatim

actually works in Octave, if @ClassName is in the search path. On the other hand, the other syntaxes don't.

Julien Bect <jbect>
Fri 22 Feb 2013 08:37:49 PM UTC, comment #1: 

The last method ('help @classname/classfcn') used to be the only way to get help and that has been implemented in Octave.  Is the directory where @ClassName located in the PATH variable for Octave?

I used the following in a build tree for Octave.

./run-octave   # at shell
addpath ("./examples")
help polynomial_superiorto   # fails on method functions.
help polynomial              # BUT, does work for constructor
help polynomial/polynomial_superiorto   # fails on method functions.
help polynomial.polynomial_superiorto   # fails on method functions.
help @polynomial/polynomial_superiorto  # WORKS

Rik <rik5>
Project Administrator
Thu 21 Feb 2013 03:31:23 PM UTC, original submission:  

Assume that you have a class ClassName with a method dudule() in @ClassName/dudule.m.

In Matlab, the following syntaxes are possible :

help dudule % gets help for all overloaded dudule() functions
help ClassName/dudule
help ClassName.dudule
help @ClassName/dudule

but none of them actually works in Octave.

Julien Bect <jbect>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by tpapastylianou (Posted a comment)
  • -email is unavailable- added by hardy (Posted a comment)
  • -email is unavailable- added by rik5 (Posted a comment)
  • -email is unavailable- added by jbect (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only project members can vote.

     

     

     

     

    Follow 2 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2021-11-22 rik5 StatusNone Fixed
        Open/ClosedOpen Closed

    Back to the top


    Powered by Savane 3.9