[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [virgo-dev] TAB completion, History, port binding

Hi Hristo

I tried it out and the basic function seems to work nicely, which will be really pleasing for long-suffering Equinox console users, but there were some glitches, mostly in tab completion.

1. Backspace delete didn't work as expected, on a Mac. I would expect it to delete the character to the left of the cursor and move the cursor left. Instead it seemed to behave just like the delete key.

2. If you enter a valid command like

osgi> bundles

followed by a space and then attempt to tab complete (to see what might be valid input next), it prints out a message and takes you back to the starting prompt:

osgi> bundles
No such command

3. It won't tab complete the help command:

osgi> hel
No such command

4. tab completion from the prompt alone does nothing (rather than suggesting all the possible commands).

Anyone else wanting to try this out should note that, instead of step 3 below, they need to place the bundle com.sap.core.supportability.telnet.jar in lib/kernel and add the bundle to the start of the launcher.bundles property in lib/org.eclipse.virgo.kernel.launch.properties, thus:

launcher.bundles =\


On 23 Sep 2010, at 16:44, Iliev, Hristo wrote:


I finally managed to get the console extension bundle (attached) running in Virgo.

To test it:
1.       Use Virgo with Equinox 3.6 – either replace the one in lib or use latest build
2.       Enable console port in org.eclipse.virgo.kernel.userregion.properties
3.       Place the attached bundle in lib
4.       Connect via telnet

The bundle uses hook to replace the standard console with one with more features like:
•         TAB completion – using TAB you can complete the command you type or list the possible commands starting with the entered string. Not pluggable but this can be extended in the future.
•         History
o   using the arrows you can get the previous or the next command you typed
o   Page Up/Down brings the first/last command
•         Port binding – the console port can be bound to a specific network interface (identified by hostname or IP) in the format <host/IP>:<port>. This can be used to allow connections only from localhost for increased security. For instance: osgi.console=localhost:2401
•         Line editing – backspace and arrows now work as expected

I’m now starting to integrate this in Virgo. Hopefully the features will be available till the mid of October and will reach post 2.1.0 versions.

Hristo Iliev