LINUX.ORG.RU

Посмотреть установленные шрифты

 ,


0

3

Скриптик для просмотра установленных щрифтов

#! /bin/sh

export FONTS_VIEW='<window window_position="1" title="FONTS_VIEW"  height-request="600" width-request="1500">
<vbox scrollable="true">

'`num=1; while read a; do
TEXT="Проверка шрифтов 0123456789  $a" 

echo '<text use-markup="true" xalign="0" wrap="false"  selectable="true" can-focus="no"><label>"'"$num $a"' <span font-family='"'$a'"' size='"'x-large'"'><big><big>'"$TEXT"'</big></big></span>"</label></text>'
num=$((num + 1))
done <<< $(fc-list : family | sort | uniq)`'

</vbox>
</window>'
gtkdialog --program=FONTS_VIEW

Какими шрифтами пользуетесь?



Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 1)

Я так понимаю, вся соль скриншота в вызове

gtkdialog

Откуда это чудо ставить? Гуглится плохо (гугл назойливо предлагает одноимённый сишный тип из GTK). AUR тоже в растерянности. Гитхаб предлагает несколько проектов, раз, два.

И да, тебя уже в прошлой теме про это спрашивали. Можешь сказать, какой у тебя дистрибутив, и какому пакету принадлежит исполняемый файл gtkdialog (лежит, скорее всего, в /usr/bin, но это неточно)?

P.S. А хотя стоп, насчёт AUR я, скорее всего, неправ. Есть такой пакет.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 1)

Смысла глядеть, как лиса перескакивает собаку не вижу

Основные шрифты Droid и Roboto, я их не меняю, на этом ноуте Droid:

$ for i in Sans, Serif, Monospace; do fc-match $i; done
DroidSans.ttf: "Droid Sans" "Regular"
DroidSerif-Regular.ttf: "Droid Serif" "Regular"
DroidSansMono.ttf: "Droid Sans Mono" "Regular"

В консоли Терминус ter-v32n, в терминале несколько.

dmitry237 ★★★★★
()

Какими шрифтами пользуетесь?

Битмапная версия Lucida Sans. Скриншот.

Важные для меня особенности:

  • Толстые вертикальные линии. Мне кажется, что это позволяет легче разглядеть текст.
  • Пропорциональность. Моноширинность - пережиток прошлого, слившийся с фольклором.
kaldeon
()
Последнее исправление: kaldeon (всего исправлений: 2)

У меня есть идея для новой публикации…

echo '<!doctype html>'
echo '<html>'
echo '<body>'
echo '<ol>'

fc-list : family |sort |uniq |while read -r s; do
	echo '<li>'
	echo "$s"
	echo "<span style=\"font-family: '$s';\">"
	echo 'the quick brown fox jumps over the lazy dog'
	echo '</span>'
	echo '</li>'
done

echo '</ol>'
echo '</body>'
echo '</html>'
kaldeon
()
Последнее исправление: kaldeon (всего исправлений: 6)
Ответ на: комментарий от hobbit

AUR тоже в растерянности

Та все там есть, просто это такая уже древность, давно исчезнувшая со всех ресурсов практически, что надо еще и vte-legacy оттуда же компилить. Хз, из какого века автор притащил эту статью, и, главное, зачем. Есть же штатные фонт манагеры и вьюверы во всех вменяемых DE.

Gonzo ★★★★★
()

./checkFonts.sh: 6: Syntax error: redirection unexpected

Windows ★★★
()
Ответ на: комментарий от kaldeon

У меня есть идея для новой публикации…

Это если нет gtkdialog, но есть браузер и sh))

#!/bin/sh
#
echo '<html > <head>
<title>FONTS</title>
 </head>
<body>' > /tmp/html_fonts.html

fc-list : family | sort | uniq | while read -r s; do
	
	echo "<p style=\"font-family: '$s';\">$s --- the quick brown fox jumps over the lazy dog</p>"
	
done >> /tmp/html_fonts.html

echo '</body></html>' >> /tmp/html_fonts.html

firefox /tmp/html_fonts.html &

Есть же штатные фонт манагеры и вьюверы во всех вменяемых DE

Без них можно посмотреть все сразу

nik120s
() автор топика
Ответ на: комментарий от hobbit

Вот тебе то же самое, только на чём-то живом (плюс ещё немного интерактивности…)

font-viewer.slint:

import { ScrollView, LineEdit, SpinBox } from "std-widgets.slint";

export component _ inherits Window {
  in property <[string]> fonts: [];
  in-out property <int> font-size: 10;
  in-out property <string> preview-text: "Съешь ещё этих мягких французских булок, да выпей чаю 0123456789";

  title: "Font Viewer";

  width: 600px;
  height: 400px;

  ScrollView {
    VerticalLayout {
      alignment: start;
      spacing: 5px;

      HorizontalLayout {
        alignment: stretch;
        spacing: 5px;

        SpinBox {
          value <=> root.font-size;
          minimum: 8;
          maximum: 20;
          width: 100px;
        }

        LineEdit {
          text <=> root.preview-text;
        }
      }

      for font[index] in root.fonts: HorizontalLayout {
        alignment: start;
        spacing: 5px;

        Text {
          text: index + 1;
        }

        Text {
          text: font;
        }

        Text {
          text: root.preview-text;
          color: green;
          font-family: font;
          font-size: root.font-size * 1px;
        }
      }
    }
  }
}

font-viewer:

#!/bin/bash

list_fonts() {
    local fonts=()
    readarray -t fonts < <( fc-list :lang=ru -f '%{family[0]}\n' | sort | uniq)

    echo -n '{"fonts":'
    jq --compact-output --null-input --join-output '$ARGS.positional' --args -- "${fonts[@]}"
    echo '}'
}

list_fonts | slint-viewer --load-data - font-viewer.slint

Из зависимостей нужны slint-viewer и jq.

theNamelessOne ★★★★★
()
Ответ на: комментарий от theNamelessOne

Из зависимостей нужны slint-viewer и jq.

На моей системз) такого нет,поэтому проверить нет возможности. Недавно запускал Debian live,удивился,что папка fonts размером ~1GB. Мой скриптик его не осилил))

nik120s
() автор топика
Ответ на: комментарий от kaldeon

Вот так получше будет:

echo "<!doctype html>"
echo "<html>"
echo "<body>"
echo "<table"

fc-list : family |sort |uniq | awk -F ',' '{print $NF}' |while read -r s; do
	echo "<tr>"
	echo "<td>$s</td>"
	echo "<td style=\"font-family: '$s';\">"
	echo "the quick brown fox jumps over the lazy dog"
	echo "</td>"
	echo "</tr>"
done

echo "</table>"
echo "</body>"
echo "</html>"
Puzan ★★★★★
()
#include <QApplication>
#include <QListWidget>
#include <QFontDatabase>

int main(int argc, char *argv[]) {
    QApplication a(argc, argv);
    QListWidget listWidget;
    for (const auto& fontName : QFontDatabase().families()) {
    auto* item = new QListWidgetItem(fontName);
    item->setFont(fontName);
    listWidget.addItem(item);
    }
    listWidget.show();
    return QApplication::exec();
}
cyberhoffman
()
Ответ на: комментарий от Puzan

Дык это bash. Запускаешь, выхлоп в файл html, файл открываешь в браузере.

Понял все ручками,без роботизации))

nik120s
() автор топика

Какими шрифтами пользуетесь?

PT Sans Expert, PT Mono.

slimblyandysh ★★★
()
Ответ на: комментарий от beos

https://i.imgur.com/lKj2WqQ.png

Cast @X512 Хочу внести свою маленькую лепту в дело уменьшения уголовно-уркаганской лексики в диалоге выбора шрифтов замечательной ОС Haiku при помощи ЧатЖоПэТэ:

Здравствуйте! Придумайте, пожалуйста, 10 предложений, в каждом из которых будут встречаться все буквы русского алфавита.

Здравствуйте! Вот 10 предложений, в которых встречаются все буквы русского алфавита:

  1. Жёлтые цыплята, бегая по лужайке, быстро прыгают в зной.
  2. Кудрявый ёжик, играя с мячом, завёл удивительных зверят.
  3. Молоко кипело, а жёлтые змеи зевали в тени.
  4. Вчера лётчик, управляя быстрым самолётом, изучал загадочную фазу.
  5. На поле взлетел зонт, за ним прыгала храбрая кошка.
  6. Сильный ветер взвил песок, а звери сели под ясенем.
  7. Ящерица быстро прыгнула в знойную жару, искря мелкими камнями.
  8. Пьяный храбрец прыгал, быстро вскользнув по зелёному лугу.
  9. В тронном зале сидели, следя за ярким шоу, эксцентричные люди.
  10. Зеркальная вуаль скрывает загадочных шмелей, летящих в ночи.

Надеюсь, эти предложения подойдут!

densss ★★★★★
()
Ответ на: комментарий от densss

Все идет к тому,чтобы ответить на вопрос как дела,сначала задашь вопрос ии)

nik120s
() автор топика
Ответ на: комментарий от hobbit

gtkdialog

Откуда это чудо ставить?

Наверно это уже считается устаревшим в новых релизах,но довольно не очень сложное и гибкое создание своих гуевых окошек,без компиляций и сборок.

nik120s
() автор топика

Какими шрифтами пользуетесь?

Iosevka Term - в терминале, Roboto Condensed в gtk, Ubuntu Condensed в qt. Скриптик конечно удобно, но можно просто глянуть в mc, в директорию ~/.local/share/fonts.

spawn_sp ★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.