Support #1636
Missing/Incomplete manual entries
Description
Some entries in the online manual are missing or very incomplete.
?uniq
Can we find and correct these systematically?
History
#1 Updated by John Abbott 7 months ago
- Status changed from New to In Progress
- % Done changed from 0 to 10
Here is a start to finding which functions need manual entries but don't have them.
Below is some CoCoA-5 code which prints to the file CheckManual.cocoa5
lots of manual queries (one for each command which ought to have a manual entry.
Find all CoCoA commands which do not have manual entries: // List of all commands which should have manual entries. L1 := [entry in starting("") | entry.IsExported = true or entry.name[1] <> "$"]; define RemovePkg(str) posn := [i in 1..len(str) | str[i] = "."]; if len(posn) > 1 then error("Expected at most one dot in string"); endif; if posn <> [] then return substring(str, posn[1]+1, len(str)); endif; return str; enddefine; L2 := [RemovePkg(entry.name) | entry in L1]; // print out CoCoA-5 commands to request manual entry for each fn: OUTPUT := OpenOFile("CheckManual.cocoa5"); foreach name in L2 do println "? ",name on OUTPUT; endforeach; close(OUTPUT); // Now source these commands into a CoCoA-5 session, and search // for "No exact match for" and "No matches for" in the output.
#2 Updated by John Abbott 7 months ago
- File CheckManual-NoExactMatch.txt CheckManual-NoExactMatch.txt added
- File CheckManual-NoMatches.txt CheckManual-NoMatches.txt added
fgrep "No exact match" ...
[44 lines]fgrep "No matches" ...
[336 lines]
Are there other strings one should search for?
#3 Updated by Anna Maria Bigatti 7 months ago
I implemented and exported in CoCoA5 the function WordList()
, it just is the CoCoA5 version of the utility function PrintWordList
used for the autocompletion support.
This way we can just call diff(L2, WordList())
and get the functions without manual. It can also be fiddled with from CoCoA5.
["ApproxSolveTF", "ApproxSolveVerify", "Abs", "Append", "Ascii", "Characteristic", "Close", "Coefficients", "Colon", "Comps", "Concat", "Count", "Dashes", "Date", "Deg", "Den", "Depth", "Det", ...
I cannot upload is right now because I have some problems with ssh-askpass....
1 Dec 23 checked-in
#4 Updated by Anna Maria Bigatti 7 months ago
Anna Maria Bigatti wrote:
I implemented and exported in CoCoA5 the function
WordList()
, it just is the CoCoA5 version of the utility functionPrintWordList
used for the autocompletion support.This way we can just call
diff(L2, WordList())
and get the functions without manual. It can also be fiddled with from CoCoA5.
[...]
Notice that this way is case sensitive, so also Abs
is detected (when the manual is for abs
). We can remove these functions by diff-ing off the functions in BackwardCompatible
package.
Overall, I think it nice to be able to manipulate the list within CoCoA5, e.g. I might want to check the functions exported by a specific package.