... ah, forgot it, here is the ANSI string:
[;39;49m[[;34mforge[;39m]$
On Sat, Jan 18, 2014 at 10:07 PM, Ivan St. Ivanov
<ivan.st.ivanov(a)gmail.com>wrote:
Hi Stale,
After applying the latest changes, when I start Forge, after the first
blue characters, all the characters are blue. Even after exit Forge,
shell's foreground keeps to be blue. Here's again my code:
List<TerminalCharacter> prompt = new LinkedList<>();
prompt.add(new TerminalCharacter('['));
for (char c : currentResource.getName().toCharArray())
{
prompt.add(new TerminalCharacter(c, new
TerminalColor(Color.BLUE, Color.DEFAULT)));
}
prompt.add(new TerminalCharacter(']', new
TerminalColor(Color.DEFAULT, Color.DEFAULT)));
prompt.add(new TerminalCharacter('$'));
prompt.add(new TerminalCharacter(' '));
return new Prompt(prompt);
Cheers,
Ivan
On Fri, Jan 17, 2014 at 10:46 AM, Ståle W Pedersen <spederse(a)redhat.com>wrote:
> yes, thats the page i often refer to as well. - and its how
> TerminalCharacters work in æsh.
>
> ståle
>
> On 17.01.14 8:48, Koen Aers wrote:
> >As per this page
http://en.wikipedia.org/wiki/ANSI_escape_code (it's
> wikipedia, so I don't know how correct/wrong it is) the SGR command
> modifies the graphics rendering by adding to the previous state. So if the
> background is blue and the foreground is red and characters are bold,
> modifying the background to white will keep the boldness and the red
> foreground. This also means the order of the commands should not play a
> role.
> >
> >Op 17-jan.-2014, om 01:00 heeft Ståle W Pedersen het volgende geschreven:
> >
> >> hi, thanks for the feedback.
> >> i see that there is indeed a bug in how TerminalCharacter is displayed.
> >> - there is a TerminalCharacter.toString(TerminalCharacter tc) that
> tries
> >> to compare with the previous to reduce the data written to stream,
> but
> >> it has a bug and do not display it correctly.
> >>
> >> By design it was planned that TerminalCharacter should not "reset"
so
> if
> >> you set a TerminalCharacter with color green that color should be for
> >> all upcoming characters unless a new one is set.
> >>
> >> TerminalString however do in fact reset at its end (by design).
> >>
> >> I do not know if the ordering matter, afaik it shouldnt, but it might
> be
> >> that that is why jansi has bleeding of colors on windows??
> >>
> >> ståle
> >>
> >> On 16.01.14 23:52, Ivan St. Ivanov wrote:
> >>> Hey George, Stale,
> >>>
> >>> I did some debugging in Forge, Aesh and even Jansi sources. Before
> that, I
> >>> tried to change the color of the current folder name when creating the
> >>> prompt:
> >>>
> >>> // in org.jboss.forge.addon.shell.ShellImpl::createPrompt()
> >>>
> >>> for (char c : currentResource.getName().toCharArray())
> >>> {
> >>> prompt.add(new TerminalCharacter(c, new
> >>> TerminalColor(Color.GREEN, Color.DEFAULT)));
> >>> }
> >>>
> >>> So I expect that as a result of that, all of the characters of the
> current
> >>> directory name would be green. However it is only the first character.
> >>> After some more debugging, I found that for a directory called
> *forge* the
> >>> ANSI string passed to the Jansi library
> >>> is: [;39;49m[ [;32mf [mo [mr [mg [me [;39m] [m$ [m (there is an ESC
> symbol
> >>> character before each [). As far as I got it, those constants 39, 32,
> etc.
> >>> denote the foreground (i.e. character) color. So, the question now is:
> >>>
> >>> Do you have to set the foreground color once and then it is valid for
> all
> >>> the next characters before you set it again, or you have to set it for
> >>> every character in the ANSI string. I think that Aesh's logic
follows
> the
> >>> first approach, so is this correct? I'm afraid
> >>> Jansi's AnsiOutputStream.write(int) method is a too complex FSM for
> me in
> >>> this late hour, so I stopped there :)
> >>>
> >>> What else bothers me is the ordering of the style and color constants
> for
> >>> the first character of the prompt. Shouldn't it be the other way
round
> >>> (first the style and then the color)?
> >>>
> >>> Cheers,
> >>> Ivan
> >>>
> >>>
> >>> On Wed, Jan 15, 2014 at 10:35 PM, George Gastaldi <
> ggastald(a)redhat.com>wrote:
> >>>
> >>>> That's right. We expect a PR from you asap :)
> >>>>
> >>>> Em 15/01/2014, às 18:28, "Ivan St. Ivanov"
<ivan.st.ivanov(a)gmail.com
> >
> >>>> escreveu:
> >>>>
> >>>> Ah, so the coloring is in Forge, not in Aesh? Good, at least I will
> try to
> >>>> get acquainted with the code if not fix it ;)
> >>>>
> >>>>
> >>>> On Wed, Jan 15, 2014 at 10:24 PM, George Gastaldi <
> ggastald(a)redhat.com>wrote:
> >>>>
> >>>>> Hey Ivan,
> >>>>>
> >>>>> We had to remove the colors because the colors were
"bleeding" to
> the
> >>>>> next character. If you could have a look at it, the code is in
> >>>>> ShellImpl.createPrompt().
> >>>>>
> >>>>> Pull requests are always more than welcomed. :)
> >>>>>
> >>>>> Em 15/01/2014, às 18:21, "Ivan St. Ivanov" <
> ivan.st.ivanov(a)gmail.com>
> >>>>> escreveu:
> >>>>>
> >>>>> Hi Stale, folks!
> >>>>>
> >>>>> I just tried the new Forge 2.0 and it works perfectly :)
> >>>>>
> >>>>> I just miss the prompt coloring. In Forge 1 we had different
color
> for
> >>>>> the current directory name if it is inside a project.
> >>>>>
> >>>>> BTW, I see that the new-project command was changed to
project-new.
> >>>>>
> >>>>> Cheers,
> >>>>> Ivan
> >>>>>
> >>>>>
> >>>>> On Mon, Jan 13, 2014 at 3:39 AM, George Gastaldi <
> ggastald(a)redhat.com>wrote:
> >>>>>
> >>>>>> Excellent Stale! Thanks for your help on this.
> >>>>>>
> >>>>>>> Em 12/01/2014, às 23:06, Ståle W Pedersen
<spederse(a)redhat.com>
> >>>>>> escreveu:
> >>>>>>>
> >>>>>>> hi, ive deployed a new version of 0.46-SNAPSHOT that
hopefully
> should
> >>>>>>> have most of the arrow-key + line redraw bugs fixed.
> >>>>>>> - please let me know if it works better other places as
well.
> >>>>>>>
> >>>>>>> these issues were introduced back in oct/nov i think
(during our
> >>>>>> meeting
> >>>>>>> in raleigh lincoln :) when we optimized the input and
line draw
> in æsh.
> >>>>>>> - i think its time i get a working windows setup....
> >>>>>>>
> >>>>>>> i havent looked at the path issue so that still needs to
be fixed.
> >>>>>>> - but ill prioritize the close issue atm.
> >>>>>>>
> >>>>>>> ståle
> >>>>>>>
> >>>>>>>> On 11.01.14 17:10, Lincoln Baxter, III wrote:
> >>>>>>>> You can find in maven under:
> >>>>>>>>
> >>>>>>>> org.jboss.aesh:aesh:0.46-SNAPSHOT
> >>>>>>>>
> >>>>>>>> The github repo/org is here:
https://github.com/aeshell/aesh
> >>>>>>>>
> >>>>>>>> ~Lincoln
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> On Sat, Jan 11, 2014 at 3:58 PM, Ståle W Pedersen
<
> >>>>>> spederse(a)redhat.com>wrote:
> >>>>>>>>
> >>>>>>>>> hi, ivan it is most likely an æsh bug (which
forge uses for
> shell
> >>>>>>>>> interaction). to quickly debug æsh you could
just start a simple
> >>>>>> example
> >>>>>>>>> program like: java -cp aesh-0.46-SNAPSHOT.jar
AeshExample
> >>>>>>>>> - you should have the aesh jar in your local mvn
cache.
> >>>>>>>>>
> >>>>>>>>> AeshExample should log to TMP/aesh.log and there
is a log line
> >>>>>> starting
> >>>>>>>>> with "GOT:" for each input. that input
should match whatever is
> >>>>>>>>> specified in Key.java (in æsh).
> >>>>>>>>> from what you've described above it seems
that ive introduced a
> bug
> >>>>>> in a
> >>>>>>>>> later release with this or it might also be the
parsing.
> whatever you
> >>>>>>>>> find out will no matter help.
> >>>>>>>>>
> >>>>>>>>> regards, ståle
> >>>>>>>>>
> >>>>>>>>>> On 11.01.14 21:18, Ivan St. Ivanov wrote:
> >>>>>>>>>> Hi folks,
> >>>>>>>>>>
> >>>>>>>>>> I just created this JIRA:
> >>>>>>
https://issues.jboss.org/browse/FORGE-1425
> >>>>>>>>>>
> >>>>>>>>>> As I wrote in the first email, I would like
to help resolving
> it. I
> >>>>>> just
> >>>>>>>>>> need some guidance on where to look. George
asked me to run the
> >>>>>> unit tests
> >>>>>>>>>> and I tried. However, the addon-manager
tests failed and I
> couldn't
> >>>>>> find
> >>>>>>>>>> the reason. :(
> >>>>>>>>>>
> >>>>>>>>>> Cheers,
> >>>>>>>>>> Ivan
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> On Sat, Jan 11, 2014 at 7:54 PM, Lincoln
Baxter, III <
> >>>>>>>>>> lincolnbaxter(a)gmail.com> wrote:
> >>>>>>>>>>
> >>>>>>>>>>> Yes, thank you for finding these issues!
Looks like we know
> what
> >>>>>> we will
> >>>>>>>>>>> be working on next few days :)
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> On Sat, Jan 11, 2014 at 12:40 PM, George
Gastaldi <
> >>>>>> ggastald(a)redhat.com
> >>>>>>>>>> wrote:
> >>>>>>>>>>>
> >>>>>>>>>>>> Ivan,
> >>>>>>>>>>>>
> >>>>>>>>>>>> Could you open a JIRA with these
issues and mark it as
> Blocker? We
> >>>>>>>>> can't
> >>>>>>>>>>>> release 2.0.0.Final unless this is
fixed.
> >>>>>>>>>>>>
> >>>>>>>>>>>> Em 08/01/2014, às 11:18, "Ivan
St. Ivanov" <
> >>>>>> ivan.st.ivanov(a)gmail.com>
> >>>>>>>>>>>> escreveu:
> >>>>>>>>>>>>
> >>>>>>>>>>>> Sorry, forgot to mention that this
is with snapshot from
> December,
> >>>>>>>>> 29th.
> >>>>>>>>>>>> The situation was the same with all
the previous betas and
> alphas.
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>> On Wed, Jan 8, 2014 at 3:13 PM,
George Gastaldi <
> >>>>>> ggastald(a)redhat.com
> >>>>>>>>>> wrote:
> >>>>>>>>>>>>
> >>>>>>>>>>>>> Thanks for the feedback ivan.
> >>>>>>>>>>>>> Are you testing against the
latest snapshot?
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> Best Regards,
> >>>>>>>>>>>>> George
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> Em 08/01/2014, às 11:10,
"Ivan St. Ivanov" <
> >>>>>> ivan.st.ivanov(a)gmail.com>
> >>>>>>>>>>>>> escreveu:
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> Hi folks,
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> As I promised, here is a
[intended-to-be] short feedback
> about
> >>>>>> the new
> >>>>>>>>>>>>> Forge 2 shell. As some of you
know, I use Windows (Really?
> >>>>>> OK...). So
> >>>>>>>>> I
> >>>>>>>>>>>>> will be very happy to help you
solve the issues besides
> merely
> >>>>>>>>> reporting
> >>>>>>>>>>>>> them:
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> * The history doesn't work.
That is, when you press up and
> down
> >>>>>> arrows
> >>>>>>>>>>>>> instead of the previous
commands, you get this: αH
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> * Backspace doesn't work.
When I press it, the cursor just
> comes
> >>>>>> back
> >>>>>>>>> to
> >>>>>>>>>>>>> the previous position without
deleting the character there.
> If I
> >>>>>> just
> >>>>>>>>> write
> >>>>>>>>>>>>> something there, the old symbol
is overwritten by the new
> one,
> >>>>>> but at
> >>>>>>>>> the
> >>>>>>>>>>>>> end after pressing enter it
looks like you never entered
> anything
> >>>>>>>>> after
> >>>>>>>>>>>>> pressing backspace. For
example:
> >>>>>>>>>>>>> 1) I write *new-project
--namek*
> >>>>>>>>>>>>> 2) I notice the typo and press
backspace
> >>>>>>>>>>>>> 3) k doesn't get deleted,
but I overwrite it with d
> >>>>>>>>>>>>> 4) Then I complete my command to
look like this:
> *new-project
> >>>>>>>>> --named
> >>>>>>>>>>>>> test*
> >>>>>>>>>>>>> 5) Forge's output is:
*Project name must be specified.*
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> * As you know on windows the
full path to a file or
> directory is
> >>>>>>>>>>>>>
<drive-letter>:\<dir1>\<dir2>
> >>>>>>>>>>>>> 1) If I try to do *cd
c:\temp\forge*, Forge blows with
> >>>>>> exception:
> >>>>>>>>>>>>>
org.jboss.forge.addon.resource.ResourceException:
> >>>>>> [FileResourceImpl]
> >>>>>>>>> can
> >>>>>>>>>>>>> have no
> >>>>>>>>>>>>> children
> >>>>>>>>>>>>> at
> >>>>>>>>>>>>>
> >>>>>>
> org.jboss.forge.addon.resource.AbstractFileResource.getChild(Abstract
> >>>>>>>>>>>>> FileResource.java:78)
> >>>>>>>>>>>>> at
> >>>>>>>>>>>>>
> >>>>>>
> org.jboss.forge.addon.shell.util.PathspecParser.resolve(PathspecParse
> >>>>>>>>>>>>> r.java:232)
> >>>>>>>>>>>>> at
> >>>>>>>>>>>>>
> >>>>>>
> org.jboss.forge.addon.shell.commands.CdCommand.execute(CdCommand.java
> >>>>>>>>>>>>> :71)
> >>>>>>>>>>>>> at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> >>>>>> Method)
> >>>>>>>>>>>>> at
> >>>>>>>>>>>>>
> >>>>>>
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> >>>>>>>>>>>>> java:57)
> >>>>>>>>>>>>> at
> >>>>>>>>>>>>>
> >>>>>>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> >>>>>>>>>>>>> sorImpl.java:43)
> >>>>>>>>>>>>> at
java.lang.reflect.Method.invoke(Method.java:606)
> >>>>>>>>>>>>> 2) Somehow I noticed that I may
use the paths without the
> drive
> >>>>>>>>>>>>> letter, e.g. just
\<dir1>\<dir2>. It is legal to do it in
> >>>>>> Windows,
> >>>>>>>>> but thus
> >>>>>>>>>>>>> you can't change to a
directory located on a different
> drive. For
> >>>>>>>>> example
> >>>>>>>>>>>>> cd \temp\forge will change to
c:\temp\forge if you are
> currently
> >>>>>> in
> >>>>>>>>> c:. So
> >>>>>>>>>>>>> I tried *cd \temp\forge*, but
the result was the same
> >>>>>> [exception].
> >>>>>>>>>>>>> 3) If I am in the root directory
(c:\) and I run *cd
> >>>>>> temp\forge*, I
> >>>>>>>>>>>>> don't get exception, but
****ERROR*** tempforge\: No such
> file or
> >>>>>>>>>>>>> directory*. The interesting
thing is that I ran that
> command by
> >>>>>>>>>>>>> pressing tab, i.e. counting on
the command completion of the
> >>>>>> shell,
> >>>>>>>>> which
> >>>>>>>>>>>>> obviously works fine.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> I made the cd command work by
just running *cd /temp/forge*
> >>>>>> (notice
> >>>>>>>>>>>>> the forward slashes)
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> If you wish, I may add these
observations as JIRA items,
> >>>>>> probably as
> >>>>>>>>>>>>> children to this one:
>
https://issues.jboss.org/browse/FORGE-1387
> >>>>>> .
> >>>>>>>>> Bear
> >>>>>>>>>>>>> in mind that all the reported
features work in Forge 1 even
> on
> >>>>>>>>> Windows ;)
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> We can discuss these in
today's meeting.
> >>>>>>>>>>>>>
> >>>>>>>>>>>>> Cheers,
> >>>>>>>>>>>>> Ivan
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>
_______________________________________________
> >>>>>>>>>>>>> forge-dev mailing list
> >>>>>>>>>>>>> forge-dev(a)lists.jboss.org
> >>>>>>>>>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>>>>>>
_______________________________________________
> >>>>>>>>>>>>> forge-dev mailing list
> >>>>>>>>>>>>> forge-dev(a)lists.jboss.org
> >>>>>>>>>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
_______________________________________________
> >>>>>>>>>>>> forge-dev mailing list
> >>>>>>>>>>>> forge-dev(a)lists.jboss.org
> >>>>>>>>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>>>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>>>>>
_______________________________________________
> >>>>>>>>>>>> forge-dev mailing list
> >>>>>>>>>>>> forge-dev(a)lists.jboss.org
> >>>>>>>>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> --
> >>>>>>>>>>> Lincoln Baxter, III
> >>>>>>>>>>>
http://ocpsoft.org
> >>>>>>>>>>> "Simpler is better."
> >>>>>>>>>>>
> >>>>>>>>>>>
_______________________________________________
> >>>>>>>>>>> forge-dev mailing list
> >>>>>>>>>>> forge-dev(a)lists.jboss.org
> >>>>>>>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>>
_______________________________________________
> >>>>>>>>>> forge-dev mailing list
> >>>>>>>>>> forge-dev(a)lists.jboss.org
> >>>>>>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>>>>>>
> >>>>>>>>> _______________________________________________
> >>>>>>>>> forge-dev mailing list
> >>>>>>>>> forge-dev(a)lists.jboss.org
> >>>>>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> --
> >>>>>>>> Lincoln Baxter, III
> >>>>>>>>
http://ocpsoft.org
> >>>>>>>> "Simpler is better."
> >>>>>>>
> >>>>>>>> _______________________________________________
> >>>>>>>> forge-dev mailing list
> >>>>>>>> forge-dev(a)lists.jboss.org
> >>>>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>>>>
> >>>>>>> _______________________________________________
> >>>>>>> forge-dev mailing list
> >>>>>>> forge-dev(a)lists.jboss.org
> >>>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>>>
> >>>>>> _______________________________________________
> >>>>>> forge-dev mailing list
> >>>>>> forge-dev(a)lists.jboss.org
> >>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>>>
> >>>>>
> >>>>> _______________________________________________
> >>>>> forge-dev mailing list
> >>>>> forge-dev(a)lists.jboss.org
> >>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>>
> >>>>>
> >>>>> _______________________________________________
> >>>>> forge-dev mailing list
> >>>>> forge-dev(a)lists.jboss.org
> >>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>>
> >>>>
> >>>> _______________________________________________
> >>>> forge-dev mailing list
> >>>> forge-dev(a)lists.jboss.org
> >>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>
> >>>>
> >>>> _______________________________________________
> >>>> forge-dev mailing list
> >>>> forge-dev(a)lists.jboss.org
> >>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>>>
> >>
> >>> _______________________________________________
> >>> forge-dev mailing list
> >>> forge-dev(a)lists.jboss.org
> >>>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >>
> >>
> >> _______________________________________________
> >> forge-dev mailing list
> >> forge-dev(a)lists.jboss.org
> >>
https://lists.jboss.org/mailman/listinfo/forge-dev
> >
> >
> >_______________________________________________
> >forge-dev mailing list
> >forge-dev(a)lists.jboss.org
> >https://lists.jboss.org/mailman/listinfo/forge-dev
>
> _______________________________________________
> forge-dev mailing list
> forge-dev(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/forge-dev
>