Open harrythedev opened 5 years ago
Same here, I tried to reinstall the fonts for the different configuration of POWERLEVEL9K_MODE
. I'm not sure it's due to powerlevel as the issue has arrived after an OMZ update and I keep the theme on the tags. I tried on master and next but it didn't fix the issue.
My configuration on my personal computer (which doesn't use OMZ) still works fine.
According to the install instructions
POWERLEVEL9K_MODE="awesome-fontconfig"
should be defined before you set the theme, so try moving it up and see if that helps.
@JHerseth I've tried that and it didn't work. :/
You can configure your theme to not use non-standard glyphs. Then it'll work with any font that comes preinstalled on your system. I use Pure Power config, which makes my terminal look like this:
Lean and clean. No patched fonts required.
@romkatv we don't want to change font, we want to make te theme work again...
It seems to be more a system update wich break the configuration as even when checkout to older commits (tested on those of february) the glyphs are not displayed properly.
Which version of font awesome is used for the theme ?
I also tried to install DejaVuSansMono via nerd-fonts install script but it does not resolve the issue (I don't think that a restart is needed but I didn't do it)
Last thing : I am on kubuntu with terminator as emulator while harrythedev is with osx
@flohw This most likely has nothing to do with Powerlevel9k, Oh-My-Zsh or even ZSH. To narrow down the problem you can do the following.
bash
.echo $'\uF015'
.If your terminal and font are set up correctly, you should see an icon of a house. If you see anything else, you need to figure our how to make it work. The best place to ask for help is the forum/mailing list/discussion board related to your terminal.
If the test above passes, type the same echo
command but this time from ZSH without Powerlevel9k theme. If this also passes, and yet when you enable Powerlevel9k you don't see a house in your prompt when your are in your home directory, then it's an issue with Powerlevel9k and it's reasonable to ask for help here.
That's my point. My comment might not be clear about it.
Indeed, it's not a theme related problem. But it's strange that it appears after an update. terminator and konsole didn't display the icon and I am not very good at managing fonts on linux. I will try later. Thank you :slightly_smiling_face:
I am not very good at managing fonts on linux.
Hence my practical advice above. Don't use non-standard symbols in your theme and then it'll work everywhere. No headaches with custom fonts.
My case is very interesting. Oh-my-zsh with HACK nerd font MONO. I use mono due to the font being cut off. I use konsole 19.04.1
. I also have hack nerd font mono under .fonts
. I did try to move it to /usr/share/truetype/hack
but it didn't really do anything.
TL;DR bash creates konsoles that show glyphs. zsh creates konsole that do not show glyphs.
So here is what is going on. This most likely is a konsole issue but I have no idea what the hell:
Start konsole in bash. My default shell is bash but I like using zsh and I simply changed the startup command of konsole to /bin/zsh
Everything is fine.
echo $'\uF015'
is fine.
Now inside the shell run$ konsole
Everything is fine.
echo $'\uF015'
is fine.
Start konsole with zsh. OR in the konsole with bash do $ zsh
. By default my system will open konsole from bash, after that konsole will automatically run zsh. And now:
Everything is fine.
echo $'\uF015'
is fine.
Now inside the shell run $ konsole
. Now we open a new konsole window from zsh.
Every glyph ends up a question mark. I guess the .fonts folder is not seen or something.
echo $'\uF015'
is broken now.
Running bash in this zsh shell will also end up broken.
Funny enough though: ZSH > new brokwn konsole > ZSH > BASH > fine konsole
If you run the following command from a working and a broken Konsole, is there a difference in the output?
env | grep -E 'LANG|LC_|TERM'
@romkatv Kinda?
That's not it then. Perhaps when you type konsole
you get a different binary in bash and zsh? Try using the full path instead, as in /path/to/konsole
. Another thing you can try is to launch konsole with empty environment.
env -i /path/to/konsole
Does this give the same results from bash and zsh?
$ whereis konsole
konsole: /usr/bin/konsole /usr/share/konsole
So using /usr/bin/konsole
does not achieve anything. I get this:
qt.qpa.xcb: could not connect to display
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: wayland-org.kde.kwin.qpa, eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, xcb.
[1] 16303 abort env -i /usr/bin/konsole
And [1] 16303 abort env -i /usr/bin/konsole
is zsh specific. In bash I get Aborted
instead of this line.
Do you get the same results when you execute /usr/bin/env -i /usr/share/konsole
in bash and zsh? Just trying to eliminate potential sources of different behavior.
@romkatv I just get /usr/bin/env: ‘/usr/share/konsole’: Permission denied
because that is a folder.
/usr/bin/env -i /usr/bin/konsole
is same output.
When you type konsole
both in zsh
and bash
, konsole actually starts, right? You need to figure out how both shells resolve it because it might be different in zsh and bash.
To figure out how ZSH resolves konsole
:
echo $commands[konsole]
If you copy the output of this command into bash and zsh, does it work the same way? What if you prefix it with /usr/bin/env -i
?
P.S.
This remote debugging session doesn't seem productive, and this issue has nothing to do with Powerlevel9k, so I'll probably stop posting here to save your time and mine.
Well yeah I have no idea what this is about it either. Nothing I tried seem to give any result so I said before hand this is most likely just a konsole issue. Even if it was a P9k problem then bash would work fine inside a broken konsole right? So echo a unicode character would be fine but that is not the case.
Also starting konsole from zsh is the problem, even if I use another terminal for that. If I start say terminator from zsh (regardless of emulator) terminator seems fine. I have installed terminator and urxvt just to test this. No issue anywhere. Is konsole after all :sweat:
Also: zsh: echo $commands[konsole] == /usr/bin/konsole bash: echo $commands[konsole] == [konsole]
Here is my
fontbook
: and~/.fonts
:and my terminal looks like this: i get all questionmark icons where glyph should be...
here is my .zshrc file:
I'm pretty sure i've set everything up properly... Can anyone please help me out?