Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ability to define font family for the icons #215

Open
cinghiopinghio opened this issue Mar 13, 2019 · 16 comments
Open

Ability to define font family for the icons #215

cinghiopinghio opened this issue Mar 13, 2019 · 16 comments
Labels
enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed

Comments

@cinghiopinghio
Copy link

Great bar, thanks for your work!

Atm your bar support icons from fontawesome project.
This carry many problems with weird fallbacks which depends on the font set installed by the user (to my knowledge) (I've seen several issues about fontawesome missing/mispatched fonts etc.).
Is it possible/hard to implement the possibility for the user to select a different font for the icons?

@cinghiopinghio
Copy link
Author

cinghiopinghio commented Mar 13, 2019

I know that this can be performed by using the pango markup as in:
"<span font_desc='whateverfont'>your character</span>"
but the configuration will become uite unreadable.
Edit: typo
Edit2: closed and reopened by mistake

@Alexays Alexays added the enhancement New feature or request label Mar 13, 2019
@dtnmr
Copy link

dtnmr commented Mar 13, 2019

You can make it (kinda) work setting your font like this in style.css :

* {
font-family: Roboto, "Font Awesome 5 Pro Solid", "Font Awesome 5 Brands";
}

Obviously you have to replace with the fonts you want. The problem with this is that some characters, for instance the "Clock" in FA5, render as a ~ in text fonts, and because CSS tests fonts from left to right, Roboto is used to display it.

Maybe there is a way to target only the icon with a selector like #clock .icon. I've tried this one, and it does not work.

@severoraz
Copy link

I think this is more of a bug, if you set the {icon} placeholder to the left of text with a space in between, the space gets rendered with the icons font, and at least "Material Design Icons" font doesn't have the space glyph (0x0020), so a weird placeholder glyph shows up.

@cryptoluks
Copy link

Had also issues with some icons not showing up. I tinkered a while until I found out, that my AUR package ttf-ms-fonts (Arial probably) "overwrote" some glyps (volume-up, down for example).

I tried the suggestion above (put FontAwesome in styles.css). It works, but for me all other characters were now slightly different and colons were misplaced. Not as pretty as before.

I uninstalled ttf-ms-fonts now, and all icons and fonts are as expected.

@gusbemacbe
Copy link

@Alexays and @dtnmr

Does Waybar support his style? For example:

@font-face
{
  font-family: "Twemoji";
  font-style: "normal";
  font-weight: "normal";
  src: url("../../.local/share/fonts/Emoji e ícones/Twitter Colour Emoji.ttf") format("truetype");
}

#custom-flag
{
  font-family: "Twemoji", sans-serif;
}

I want to set this font to the specific module, while I keep JoyPixels as system emoji font. I prefer the non-wavy rectangle flag (Twitter Color Emoji) instead of rounded flag (JoyPixels) and of wavy flag (Apple Color Emoji and Noto Emoji).

@Hubro
Copy link

Hubro commented Jul 25, 2021

I second this. It would be great if all icons were wrapped in <span class="icon">...</span> by default. That way we could explicitly set which font to use for an icon and not have to rely on complicated font fallback behavior.

@nnuel
Copy link

nnuel commented Jan 15, 2022

Yes, @gusbemacbe were you able to get a module specific font-family to work?
For me it only seems to pick the main one and ignores the module specific one.

@gusbemacbe
Copy link

Yes, @gusbemacbe were you able to get a module specific font-family to work?
For me it only seems to pick the main one and ignores the module specific one.

I have tested it a dozen times, but it didn't work. It captures still rounded flags of JoyPixels instead of rectangular flags of Twemoji. I uninstalled JoyPixels and Noto Emoji fonts, left only Twemoji font, and the emojis in that module ended up being tofu.

@mrshmllow
Copy link

I second this. It would be great if all icons were wrapped in <span class="icon">...</span> by default. That way we could explicitly set which font to use for an icon and not have to rely on complicated font fallback behavior.

Was this ever opened/implemented?

@jirutka
Copy link

jirutka commented May 1, 2022

Pango markup doesn’t support <span class="icon">...</span>, so I came up with another workaround: wrapping all icons in the Waybar config in <span font='icon'>...</span> and adding a font “alias” into font-config /etc/fonts/local.conf:

<fontconfig>
  ...
  <alias>
    <family>icon</family>
    <prefer>
      <family>Font Awesome 5 Free</family>
    </prefer>
  </alias>
</fontconfig>

@Alexays Alexays added help wanted Extra attention is needed good first issue Good for newcomers labels Oct 27, 2022
@Alexays Alexays pinned this issue Oct 27, 2022
@Alexays Alexays changed the title ability to define font family for the icons Ability to define font family for the icons Oct 27, 2022
@adamant-pwn
Copy link
Contributor

Which font family should cover "", "", "", "", "", "", "", "", ""? Is it Symbols Nerd Font?

@mlazzarotto
Copy link

Which font family should cover "", "", "", "", "", "", "", "", ""? Is it Symbols Nerd Font?

Font Awesome, apparently, but I'm not able to find the corresponding package in Ubuntu repo.

@xz-dev
Copy link

xz-dev commented Aug 21, 2023

Which font family should cover "", "", "", "", "", "", "", "", ""? Is it Symbols Nerd Font?

Install firacode-nerdfont also helpful

@iceeburr
Copy link

Any news or solution on this?
even if it's a really dumb fix I would rather go for it

@xz-dev
Copy link

xz-dev commented Dec 10, 2023

Any news or solution on this? even if it's a really dumb fix I would rather go for it

I just simply fix it by install fontawesome(6.1.1) and setting font-family: 'Font Awesome 6 Free'; at style.css.

@rtgiskard
Copy link
Contributor

I'm using the piece:

* {
  font-family: "Symbols Nerd Font", "LXGW WenKai";
  font-size: 14px;
}

I'll recommend "Symbols Nerd Font" which does not include ascii characters and has many more symbols beyond fontawesome, the next candidate fonts will be used for regular characters.

ss_20240508_142411

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests