Mercurial > hg > octave-nkf
changeset 5738:126d7f1945ee
[project @ 2006-04-05 03:04:08 by jwe]
author | jwe |
---|---|
date | Wed, 05 Apr 2006 03:04:08 +0000 |
parents | c70bfdf5b2c5 |
children | d090d39bb82c |
files | src/ChangeLog src/help.cc |
diffstat | 2 files changed, 18 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2006-04-04 David Bateman <dbateman@free.fr> + + * help.cc (Flookfor): Skip overloaded functions. Lookup help text + of autoloaded function, not parent that contains the autoload. + 2006-04-03 David Bateman <dbateman@free.fr> * data.cc (Fresize): New function.
--- a/src/help.cc +++ b/src/help.cc @@ -1123,6 +1123,8 @@ std::string first_help_sentence (const std::string& h, bool short_sentence = true) { + std::string retval; + size_t pos = 0; if (looks_like_texinfo (h, pos)) @@ -1155,7 +1157,7 @@ } if (pos == NPOS) - return std::string (); + return retval; // At start of real text. Get first line with the sentence size_t new_pos = h2.find_first_of ('\n', pos); @@ -1189,9 +1191,9 @@ } if (dot_pos == NPOS) - return line; + retval = line; else - return line.substr (0, dot_pos + 1); + retval = line.substr (0, dot_pos + 1); } else { @@ -1390,7 +1392,7 @@ } if (pos == NPOS) - return std::string (); + return retval; // At start of real text. Get first line with the sentence size_t new_pos = h.find_first_of ('\n', pos); @@ -1425,10 +1427,12 @@ } if (dot_pos == NPOS) - return line; + retval = line; else - return line.substr (0, dot_pos + 1); + retval = line.substr (0, dot_pos + 1); } + + return retval; } static void @@ -1651,7 +1655,8 @@ OCTAVE_QUIT; symbol_record *sr = lookup_by_name (name, 0); - if (sr && sr->is_defined ()) + if (sr && sr->is_defined () + && sr->type_name () != "overloaded function") { std::string h = sr->help (); @@ -1794,7 +1799,7 @@ if (!sr) { // Must load to get help - sr = lookup_by_name (name, false); + sr = lookup_by_name (aname, false); std::string h; if (sr && sr->is_defined ())