[ 
https://issues.apache.org/jira/browse/PIG-139?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Daniel Dai updated PIG-139:
---------------------------

    Attachment: jline-0.9.94.jar
                jline.patch

Patch (targets branches/types) for jline integretion. Includes history, line 
edit and a basic pig keyword auto-completion support. Currently all keywords 
are hard-coded. Please include jline-0.9.94.jar in lib directory in order to 
make the patch work. 

As Amir said, jline use BSD license and can freely distribute. Also native 
library for jline seems to be a minor issue since jline does a good job. jline 
will copy native library from inside jline.jar into a temporary folder when 
initilize. Seems to be quite neat.

Some other things we can play is:
1. Keywords maintenance, some choices we have:
     * use an internal keywords file
     * expose keywords file to users
     * derive this file from grammar definition

Ideally we should derive keywords from javacc source code to minimize 
maintenance cost, however, javacc source code is relatively hard to parse. If 
we maintain a seperate keywords file, we need to synchronize it everytime 
grammar evolves. Also is it a good idea to expose the keywords file to users?


2. Context sensitive auto-completion
  The key issue is how we are going to maintain the context/keywords information


3. Filename auto-completion
  There is a performance issue if we include auto-completion for dfs


4. Add "history" keyword to grunt, this should be cheap to get

> Command line editing, history and more for Grunt
> ------------------------------------------------
>
>                 Key: PIG-139
>                 URL: https://issues.apache.org/jira/browse/PIG-139
>             Project: Pig
>          Issue Type: Improvement
>         Environment: Grunt
>            Reporter: Amir Youssefi
>         Attachments: jline-0.9.94.jar, jline.patch
>
>
> We need to add support of command line editing, history and more for Grunt. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to