I have my fish prompt configured to show the full absolute path of the
current working directory, if there's enough room. I do this by running
`wc --chars` on the full generated prompt, and comparing with $COLUMNS.
The wc part of this test looks like this:
echo -n "$USER@$__fish_prompt_hostname" ( pwd )( __fish_vcs_prompt ) |
wc --chars
When in the directory of a local git project, by my count, that echo
command generates a string that's 59 characters long. However, wc
counts 101 characters. What's going on here that would explain this 42-
character discrepency?
When trying to research the issue, I saw a lot of forum posts where wc
counted one extra character, because echo by default appends a newline,
but doing echo -n takes care of that issue.
I then thought that maybe wc was counting bytes instead of characters,
in spite of the --chars switch, but when I copy-paste the generated
prompt string and echo that to wc, it counts the correct number of
characters. This discrepency only happens in VCS directories, when
__fish_vcs_prompt has anything to show. Are there 42 control characters
involved in setting the colors for __fish_vcs_prompt? How do I get an
accurate count of the characters in my prompt string?
Thanks,
~ Andrew
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Fish-users mailing list
Fish-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fish-users