Fonte personalizada com dmenu

8

Encontrei referências em vários lugares executando o dmenu da seguinte forma:

dmenu_run -b -fn 'Inconsolata 12'

No entanto, seja qual for a variação do nome da fonte que eu tente, sempre recebo dmenu: warning: cannot load font <font name>

fc-list | grep cons me dá:

/usr/share/fonts/truetype/inconsolata/Inconsolata.otf: Inconsolata:style=Medium

Ele não aparece xlsfontse todas as fontes que aparecem no xlsfonts funcionam bem.

Qual é a maneira correta de referenciar essas fontes na linha de comando?

Além disso, essa é uma maneira padrão de fazer referência a fontes ou será alterada ao usar programas como pango?

Saad Farooq
fonte
Apenas lol ... dmenu
Saad Farooq

Respostas:

8

A versão padrão do dmenu não inclui suporte para fontes xft. Para usar fontes como o Inconsolata, você precisará criar uma versão corrigida do dmenu.

  1. Faça o download do código fonte e do patch .
  2. Abra um terminal cdno diretório que contém o código fonte e o patch.
  3. Execute os seguintes comandos para aplicar o patch:

    tar zxvf dmenu-4.5.tar.gz
    cd dmenu-4.5
    mv ../dmenu-4.5-xft.diff .
    patch -p1 < dmenu-4.5-xft.diff
    
  4. Para criar a versão modificada do dmenu, você precisará dos seguintes pacotes instalados: libxft-dev libxft2 libxinerama-dev

  5. ATUALIZAÇÃO no UBUNTU 14.04, a compilação falha com

    erro fatal: ft2build.h: Esse arquivo ou diretório não existe

    Para corrigir isso, edite o arquivo config.mk e altere

    XFTINC = -I / usr / local / include / freetype2

    para

    XFTINC = -I / usr / include / freetype2

  6. Execute os seguintes comandos para criar e instalar a versão modificada do dmenu:

    make
    sudo make install
    
Isaías
fonte
As ferramentas suckless não estão incluídas no i3?
Saad Farooq
Clone http://git.suckless.org/dmenue aplique o patch http://tools.suckless.org/dmenu/patches/xftno master então make. chmod +x dmenu_pathe instale (ou apenas adicione links simbólicos ao dmenu, dmenu_run, dmenu_path e stest).
Stephen Niedzielski
2

Você deve usar o nome completo da X Logical Font Description (XLFD) para a fonte fornecida por xfontsel. Por exemplo, você pode usar algo como isto -bitstream-*-*-*-*-*-12-*-*-*-*-*-*-*::

dmenu_run -b -fn -bitstream-*-*-*-*-*-12-*-*-*-*-*-*-*

xfontsell A ferramenta permite visualizar as diferentes configurações.

Se você deseja usar uma sintaxe como:

dmenu_run -b -fn <family>-<size>:<name>=<value>

mais perto do que você pediu, você pode usar o patch de suporte do Xft . Veja aqui as instruções sobre como usar um patch dmenu.

Radu Rădeanu
fonte
2

Desde o dmenu 4.6 (lançado em novembro de 2015), a renderização da fonte XFT é ativada por padrão ( 4.6 Release Notes ) e isso funciona:

dmenu_run -fn 'Inconsolata 12'
Graipher
fonte