Gary Johnson wrote:

> > On 2020-06-01, Gary Johnson wrote:
> > > On 2020-05-28, Bram Moolenaar wrote:
> > > > Gary Johnson wrote:
> > > > 
> > > > > I discovered that some of the functions present in ":help functions"
> > > > > were missing from ":help function-list".  The attached patch:
> > > > > 
> > > > > -  Adds missing functions to ":help function-list".
> > > > > -  Puts the ":help functions" list in alphabetical order.
> > > > > -  Fixes some misspellings in doc/eval.txt.
> > > > > -  Cleans up some inconsistencies in function-list.
> > > > > 
> > > > > I didn't know exactly where to insert some of the functions into the
> > > > > function-list, so I took some reasonable guesses.
> > > > > 
> > > > > The patch is based on Vim 8.2.834.
> > > > 
> > > > Thanks.  It's easy to forge to add a function in all three places.
> > > > Perhaps we should have a test for that.
> > > 
> > > I've created a test, attached.  It checks that all three lists
> > > contain the same set of functions and that the lists in
> > > src/evalfunc.c and doc/eval.txt are sorted.
> > > 
> > > This is my first attempt at a test in the new format, so I thought
> > > I'd post it here before submitting a patch to see if anyone spotted
> > > anything I should change.
> > > 
> > > Also, the test will fail until the original patch of this thread is
> > > applied and another patch to doc/eval.txt is applied as well.  Or,
> > > if this test looks OK, I could just submit a new patch with
> > > everything included.
> > 
> > Thanks!
> > 
> > The test currently fails, as predicted.  The error message doesn't give
> > much of a hint about what needs to be fixed:
> > 
> > Found errors in Test_function_lists():
> > function RunTheTest[39]..Test_function_lists line 59: difference at byte 
> > 2829
> > function RunTheTest[39]..Test_function_lists line 77: difference at byte 
> > 2890
> > 
> > Would be nice to point to what's wrong.  Ah, I see that an
> > Xfunctions.diff file is generated.  Hmm, but "diff" might not be
> > available.
> 
> Yeah, but I don't know what to do about that.  I suppose I could
> save the lists to Lists instead of files and do a rudimentary diff
> of two Lists.  (Having Unix tools makes life so much easier.)

We probably should make assert_equalfile() better.  Show the context of
where the difference was found.  However, in this case the question is
also where the list comes from, that could be added as a third argument.

> > The sorting should be done without ignoring case?  At least for a binary
> > search it should.
> 
> The type of sorting seems to differ between lists.  The
> global_functions in evalfunc.c seems to be sorted in ASCII or "C"
> order, which makes sense for source code, while the ":help
> functions" in eval.txt seems to be sorted in dictionary order, i.e.,
> ignoring case, which is reasonable for documentation.  I guess the
> latter depends on the expectations of the reader.  I tried to follow
> what was already there, although that was inconsistent.  I don't
> personally have a preference.

In case of doubt I would prefer to do what ":sort" without arguments
ends up with.  It's just easier to maintain that way.

-- 
hundred-and-one symptoms of being an internet addict:
252. You vote for foreign officials.

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/202006012107.051L7jCM081986%40masaka.moolenaar.net.

Raspunde prin e-mail lui