Hi Niklas, How should we solve this problem? do you have any good idea? Thanks! :)
Sincerely, maoyg 2008.05.05 Christoph wrote: >after some time I'm back with two intermediate proposals. For all people >who can't remember, I will start with a state of the current discussion. > >CURRENT STATE > > * There is a demand for implementing a formula syntax: If Calc > identifies the editing of function parameters, then these > parameters are shown in a tip help below the cell (tip help: > similar to tooltip). > > Example: > ---+------------------+--- > |=sum( | > ---+------------------+--- > SUM( > number1, ...) > > * Another feature is a kind of autocompletion: If Calc recognizes > a function name, then this autocompletion hint is given in a tip > help above the cell. If the user presses Enter, then the > currently shown function name is inserted into the cell. > > Example: > SUM() > ---+------------------+--- > |=su | > ---+------------------+--- > > * Both features look the same, but behave completely different. In > some cases both tip windows may appear - > Users may not (will > not) understand that. > > Example: > SUM() > ---+------------------+--- > |=sum(su | > ---+------------------+--- > SUM( > number1, ...) > > >PROPOSALS > >In the last weeks, I often thought about how to implement both features >well. As I already said, the features appear to be similar, but behave >different. Before I continue, I just want to add (my) constraints: > 1. There is a demand to implement/keep both features. > 2. A "we get it all right" solution is possible, but will need more > time. (So most of the solutions in [1] cannot be considered.) > Therefore the next proposals are still a kind of interim > solution. > > > > > Proposal "Behavior like Writer" > >The behavior could be implemented similar to Writer. There, the >auto-completion considers strings with a minimum number of characters. >If the user starts typing and the string is contained in the >auto-completion list, then Writer starts displaying it with the rest of >the word in selection. If the user continues writing, then this >selection is "deleted" with every character. Enter does accept the >proposed string - the selection is removed and the cursor is set to the >end of the word. > >Advantage: > * It does not interfere with the syntax help. > * The auto-completion feature is well presented, because it is > directly displayed inside the cell. > >Disadvantage: I assume that some people will get annoyed by this kind of >visualization. Even in Writer there is an option to toggle between this >"selection style" and "tip help style" visualization. So maybe we need >something different... > > > > > Proposal "Autocomplete One Time Only" > >The double-tip-help-problem does only occur if an user starts adding a >function name in the parameter list of another function (see the >examples at the begin of the mail). So this idea does only use >auto-completion if there is no need to display the formula syntax at the >same time. Usually, this is if the user starts editing an empty cell. > >There are also some disadvantages: > * We remove the auto-completion feature for advanced users who may > want to nest several functions. > * The "auto-completion" tip help and "formula syntax" tip help may > still misunderstood. > >The advantage: We will not provide a tip help which makes no sense in >terms of return value type. Until we are able to consider the return >types, this solution could serve well. > > > >So, what to do now? Maoyg, Nikklas, please tell me if this interim >solution seems suitable in terms of effort and if it makes sense to you. >Or do you have some other idea how to solve that problem (assuming that >you accept that this is an issue)? Or it is better to start with a more >general concept which considers all the little input helpers (list >below). > >Future work could be to re-think the features when editing cells: > * syntax help (the current feature) > * auto-completion > * selection list (from cell's context menu) > * validity check: > * input help > * error messages > * Notes viewing / editing > * Live validity check / calculation (feature ideas) > > >Bye, > >Christoph > >[1] http://www.schuderer.net/publicprototypes/ooo-calc-formula.shtml > >[2] General Wiki Page for the new feature: >http://wiki.services.openoffice.org/wiki/Calc/Drafts/Show_Formula_Syntax > Am Montag, den 21.04.2008, 12:01 +0800 schrieb maoyg: > Hi Christoph, > > Thank you very much! :). > > > >Just some terms for our discussion: > > > * "recent list": the list of "last used" functions" which is shown > > > in the function wizard > > > * "tip help for the cell": the little tip help for the currently > > > edited function > > > > >TECHNICAL LIMITATIONS > > > > >Is it correct, that the "tip help for the cell" depends on the "recent > > >list"? So if the current edited entry is not in the "recent list", then > > >there is no "tip help for the cell"? > > Yes,the "tip help for the cell" depends on the "recent list". > > > > >Question: Is there any chance to solve that problem and to construct the > > >help message directly without use of the "recent list"? > > This problem can be solved by removing that limitation. > > > > >Reason: It would be good if the functionality would work without > > >dependency on the "recent list". The "tip help for the cell" is helpful > > >if it works for all functions and not only for those the user might be > > >already used to. > > > > >HOW TO DISPLAY THE ITEMS > > > > >1. Auto-Completion > > >You asked me whether the cell should list all functions, e.g. all > > >functions that start with 'm' when the user starts to type '=m'. If I > > >remember correctly, we discussed that some time ago and this kind of > > >auto-completion is not so easy to "explain" to the user. So we should > > >just implement the tip help, e.g. if the opens the left parenthesis, > > >e.g. "=min(". Do you agree? > > > > >2. Showing multiple "tip helps for the cell" > > >I've seen in the specification [1] that you added the "Illustration 5" > > >which shows two "tip helps" at the same time. There should be only one > > >"tip help" for the most current function. > > > Just some terms for our discussion: > > There are two "tip helps". > > * The cursor above window is called the old,existing tip window,it > > will keep, > > see the spec[1] "illustration 5" > > * The cursor below window is called the new tip window, > > this window is one new window to be added, see the spec[1] > > "illustration 5" > > >Okay, I was never aware of that. I didn't know that there is another > >second tip help that acts like a kind of "autocompletion". I'm sure that > >- including me - all people were not aware of the fact. > > >If I remember correctly, we "skipped" all discussion of a autocompletion > >feature because it does not fit to the current proposal. That makes me > >wondering whether this is the right approach... > > > the old,existing tip window(above) can also be useful after a function > > name, > > it can clue on function for the currently edited,meantime,it can > > complete a lots of function. > > Niklas think that this window can not remove. > > That's why the original idea was to have an additional window instead > > of replacing the old one. > > >I thought about that and have to agree that both features are useful. > >But, does the user understand two "non explained" tip helps? > >Unfortunately, I think most users will be confused. > > >Why confused? The upper window does not contain any explanation and > >looks different to the auto-completion of e.g. Writer. The lower window > >marks up the current parameter - if it is recognized by the user. Each > >window may be shown individually. That leads to a nearly unpredictable > >behavior... > > >Example ( '|' = cursor ): > > > MIN() > >--------------------- > >| =sum(m| | > >--------------------- > > SUM( >number1, ...) > > >What should the user do? > > >And what should I recommend? I don't know yet, because this is a new > >situation. But again, I'm sure this behavior would not help the users > >that much. > > >What is you opinion? Or is there anyone who discussed that before > >(Andreas, Clément, Martens, Mathias, ...)? > > We still need to discuss about the old tip window later, > if the user think the old tip window is very confused, > then we will fix it. I will analyze about the Eclipse's usage, > I don't know whether we can implement it. > > > The old,existing tip window depends on the "recent list", > > however, the new tip window don't depend on the recent list. > > The functionality of the new tip window have finished so far. > > > > My question is to discuss the old tip window, > > whether the old tip window should depend on the recent list, > > if it denpends on the recent list, when the user starts typing "=ma", > > possible the old tip window can only show the function max, > > when the user use "tab" key,the old tip window still show the function > > max. > > if it doesn't depend on the recent list,when the user starts typing > > "=ma", > > the old tip window will show the function match,when the user use > > "tab" key, > > the old tip window will show the function max and maxa. > > >Just a short guess: > > * Consistency with Writer -- > old tip help window should only show > > already used functions > > * Use case of working with functions -- > If the old tip help > > window would consider all functions, people are forced to go > > through the complete auto-completion list until they find the > > desired feature (because Calc offers so many functions). So they > > may not use it, because they can type it faster (remember: here, > > they need to know the function name). So only the recent items > > are adequate for that. For any other case (e.g. people do not > > remember the function name), people may use the Function Wizard. > > >So I recommend to use only the entries from the "recent list" for the > >"old" tip help window. The formula syntax help (the "new" tip help) > >should work for all functions. > According to your recommendation, the issue86856 has already finished. > > >This may change if we ever implement a "real" auto-completion feature > >like the one of Eclipse mentioned at [2]. > > > >Example (similar to the specification): > > > * The user starts typing '=max' -- > nothing happens > > I think the old tip window can show the function max. > > > > > * The user adds the left parenthesis '(' -- > > > tipp help syntax for > > > the function max is shown > > Yes. I think so. the old tip window will disappear. > > > > > * The user starts typing 'min' -- > > > the tipp help for the function > > > max is kept > > I think the old tip window can show the function min, > > the new tip window will keep the function max. > > > > > * The user adds the left parenthesis '(' for min -- > tipp help > > > changes to show the syntax of function min > > The old tip window will disappear, > > the old tip window will show the function min. > > > > > * The adds the parameters for min and closes the parenthesis with > > > ')' -- > tipp help changes to show the syntax of function max > > > * ... > > I think so. > > > > >Please tell me if you need some more explanation or informatoin. I'll be > > >glad to help you! > > Thank you very much for your so detail explanation,I have known it. > > > > >3. Symbol > > I will upload the document,it lists three cases for symbol, the first > > is a downwards arrow, > > the second is a rightwards arrow,the third is a triangle arrow. > > >Yes, I could open it. Triangle, please. :-) > I will adopt it.:) > > Have a nice day. > > maoyg > 2008.04.21 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
