More fix around suggestions for the multi-line code.
Jan Lahoda
jan.lahoda at oracle.com
Fri Mar 27 20:24:45 UTC 2015
Hi Shinya,
On 26.3.2015 17:51, ShinyaYoshida wrote:
> Hi Jan,
> Thank you for your review.
>
> Certainly, the dependent is not good and passing the current prefix is
> looks good to me. I agree with you.
>
> Your patch looks almost good to me.
> But, I think you should add a little of fix to resolve "3: Print method
> documentation in multi-line code" of previous my mail:
Yes, sorry I missed that. Pushed.
Thanks,
Jan
>
> (...)
> @@ -1434,7 +1435,7 @@
> String buffer = in.getCursorBuffer().buffer.toString();
> int cursor = in.getCursorBuffer().cursor;
> String doc;
> - if (buffer.trim().startsWith("/")) {
> + if (prefix.isEmpty() && buffer.trim().startsWith("/")) {
> doc = repl.commandDocumentation(buffer, cursor);
> } else {
> - doc = repl.analysis.documentation(buffer, cursor); // HERE
> + doc = repl.analysis.documentation(prefix + buffer, cursor +
> prefix.length()) // HERE
>
> Regards,
> shinyafox(Shinya Yoshida)
>
>
> 2015-03-27 1:23 GMT+09:00 Jan Lahoda <jan.lahoda at oracle.com
> <mailto:jan.lahoda at oracle.com>>:
>
> Hi Shinya,
>
> Thanks for the report and patch. Thinking about this, I was not sure
> if making ConsoleIOContext more dependent on details in the Repl
> class is a good direction. I think it may be better to simply pass
> the current "prefix" (incomplete String) into the IOContext.readLine
> - any particular IOContext may then decide what to do with the
> current prefix. This would avoid tight coupling between
> ConsoleIOContext and Repl classes.
>
> A patch implementing that is attached - what do you think?
>
> Thanks,
> Jan
>
>
> On 26.3.2015 14:01, ShinyaYoshida wrote:
>
> Hi Jan,
> Thank you for your pushing my patch.
>
> I have more patch around suggestions for the multi-line code.
>
> Please review my patch.
> webrev:
> http://cr.openjdk.java.net/~__shinyafox/kulla/201503262/__webrev.00/
> <http://cr.openjdk.java.net/~shinyafox/kulla/201503262/webrev.00/>
>
> 1. Find suggestions, considering the incompleting code:
>
> Currently, REPL prints all suggestions for the following code:
>
> ----
> ->"".
>
> [TAB]Display all 446 possibilities? (y or n)
>
> ----
>
> But, it should print members of String class.
>
> ----
> ->"".
>
> [TAB]
>
>
> CASE_INSENSITIVE_ORDER String( charAt( etc...
> ----
>
> 2. Don't print a command documentation in the multi-line code:
>
> Currently, REPL prints the command documentation in the
> multi-line code.
>
> ----
> ->"".
>
> /list all[SHIFT+TAB]
>
> list the source you have typed
> ----
>
> But, it shouldn't print the command documentation.
>
> 3. Print method documentation in multi-line code:
>
> Currently, REPL don't print the method documentation in the
> multi-line code.
> But, it should print the method documentation such as following:
>
> ----
> ->"".
>
> split([SHIFt+TAB]
>
> java.lang.String.split(java.__lang.String arg0, int arg1)
> java.lang.String.split(java.__lang.String arg0)
> ----
>
> Regards,
> shinyafox(Shinya Yoshida)
>
>
More information about the kulla-dev
mailing list