groovysh: завершение синтаксиса для связанных методов не работает
При использовании Groovysh (вызывается как родной groovysh
команда или из Groovy скрипта, явно создающего экземпляр org.codehaus.groovy.tools.shell.Groovysh
), завершение синтаксиса не работает для связанных выражений всякий раз, когда вызывается вызов метода. Есть ли способ включить это, я что-то делаю не так или это просто не предусмотрено?
Что работает:
Sys<TAB> // Completes 'System'
System.o<TAB> // Completes 'System.out'
System.out.p<TAB> // Suggests individual methods
4.toS<TAB> // Completes '4.toString('
Что не работает:
4.toString().<TAB> // Completes nothing
System.getProperties().<TAB> // Completes nothing
Завершение действительно работает, когда результат вызова метода сохраняется в переменной:
e = System.getenv()
e.<TAB> // Suggests everything one would expect
Что совершенно странно, когда вызов метода отправляется с использованием синтаксиса доступа к свойствам, завершение действительно работает:
System.properties.<TAB> // Suggests everything one would expect
То же самое можно воспроизвести с помощью настраиваемых методов (единственный способ завершить результат вызова - сохранить его в переменной или заменить на свойство accesor, если это геттер).
Я не нашел сообщений о соответствующей проблеме. Тестировал на groovy 2.5.8, но 3.0.0-rc-2 не лучше работает.