Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
F
fontconfig
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 152
    • Issues 152
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 14
    • Merge Requests 14
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • fontconfig
  • fontconfig
  • Issues
  • #195

Closed
Open
Created Nov 21, 2019 by Nicolas Mailhot@nimContributor

Please add <group> → <generic>

This is a part of: #200

Preamble

The ordering model defined in #194 requires clear identification of generic families. As far as I know (but I may be wrong), fontconfig does not know what its generics are today – they are just substitution patterns that happen to never match real font files.

Purpose

Using generic instead of target makes an group block a generic declaration.

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- SPDX-License-Identifier: MIT -->
<fontconfig>
  <group>
    <generic>@generic_family_name@</generic>
  </group>
</fontconfig>

Behaviour

generic is incompatible with target. The group blocks for a font family can either contain generic or target but not both (both is a syntax error).

generic is incompatible with family and match. A generic, is not supposed to match real font files.

fontconfig rejects any font file, that declares a generic name, as its family (unless remapped to something else in another group block).

A fontconfig command returns the list of generics known to a fontconfig installation, so users can query the classification model in use before writing new fontconfig rules (similar to the way iconv --list returns the encoding names it currently understands).

The top level group + like declaration for a given generic family, corresponds to the default system fonts.

Minimal example

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- SPDX-License-Identifier: MIT -->
<fontconfig>
  <group>
    <generic>serif</generic>
    <like>
      <family>DejaVu Serif</family>
      <family>Noto Serif</family>
    </like>
  </group>
</fontconfig>
Edited Nov 23, 2019 by Nicolas Mailhot
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None