Commit Graph

123 Commits

Author SHA1 Message Date
Heiko Becker 4e42925096 Handle absolute sysconfdir when installing symlinks
sysconfdir defaults to /etc when the prefix is set to /usr. But joining
MESON_INSTALL_DESTDIR_PREFIX and sysconfdir when the latter is an
absoulte path, results in sysconfdir only. Which might lead to an error
during install because /etc/fonts/conf.d/ might already exist from an
pre-existing fontconfig installation.
2021-03-03 04:54:33 +00:00
Akira TAGOH 615e2cb844 Overwrite symlinks for config files
In Makefile, we are trying to remove old symlinks first and then create a symlink.
do the same thing in meson too.

Also, the line of the exception handling for FileExistsError is meaningless
as the above line is taking care of it instead and we shouldn't ignore it if
os.remove and os.symlink doesn't work somehow.

Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/275
2021-03-02 19:41:44 +09:00
Xavier Claessens 7bfbaecf81 Windows: Fix symlink privilege error detection
The message is in e.args[1] and not e.args[0] at least with python 3.8.
Should be more future proof like this in case it change again.
2021-02-15 11:58:52 +00:00
xiota d9c99340b1 Add Courier Std aliases. Fixes #262. 2020-11-04 12:35:51 +00:00
Tim-Philipp Müller 57a224f51d Add Meson build system
See https://mesonbuild.com
2020-07-31 07:26:11 +00:00
Alan Coopersmith 9bc88933b2 Fix some typos/spelling errors
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2020-07-21 18:42:40 -07:00
Akira TAGOH fcb0420281 Drop Bitstream Vera fonts from 60-latin.conf
Bitstream Vera fonts seems broken so dropped them there.

Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/26
2020-06-02 17:33:15 +09:00
Akira TAGOH 528b17b283 Drop elements with its namespace from conf
The translation related elements are now provided by separate files
fontconfig.its and fontconfig.loc. we don't need to have it in conf
anymore.

Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/234
2020-05-25 10:44:05 +09:00
Nicolas Mailhot 9c46ef4aac Use an URN for DTD ID
XML tools interpret “fonts.dtd” as a relative path.

Unfortunately, that can not work now that the configuration is spread over
multiple system-dependant directories, without a common relative path to this
file. And, an absolute path can not be defined in a system-independant way.
System independance is a requirement to share config files between systems.

Therefore, replace the broken relative path by a formal URN, that will work the
same way on all systems, without network access.

This makes the DTD registerable with commands like:
$ xmlcatalog --noout --add system \
                           "urn:fontconfig:fonts.dtd" \
                           "file:///usr/share/xml/fontconfig/fonts.dtd" \
                           /etc/xml/catalog

That enables easy config file checking:
$ xmllint --loaddtd ${config_file} >/dev/null
2020-03-28 15:01:35 +01:00
Jan Tojnar 65087ac7ce
conf: Add JoyPixels emoji font
It is a successor of EmojiOne.

https://www.joypixels.com/
2019-08-29 12:51:43 +02:00
Akira TAGOH 80047ed8e8 Add FC_FONT_HAS_HINT property to see if font has hinting or not.
This may helps to enable autohint only when font doesn't have any hinting
2019-07-29 10:19:26 +00:00
Akira TAGOH f555f50a20 Add 35-lang-normalize.conf
This avoids a situation where the score of lang becomes lower or equal to others
and then figures out the best font according to other properties and the order
of family names.

This typically happens only when our orthography files are the subset of lang
in patterns. i.e. fc-match :lang=en-us to match on en.orth.
In this case, the score is lower than the exact match (en to en) and the partial
match (en to en-us). thus, the result of 'fc-match :lang=en-us' isn't necessarily
same to 'fc-match :lang=en'.

So 35-lang-normalize.conf contains languages only which is available as orth
without countries and tries to update properties to match on orth exactly like:

  <match>
    <test name="lang" compare="contains">
      <string>en</string>
    </test>
    <edit name="lang" mode="assign" binding="same">
      <string>en</string>
    </edit>
  </match>

Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/155
2019-07-26 07:42:36 +00:00
Akira TAGOH def1d00036 Add reset-dirs element
This element removes all of fonts directories where added by
dir elements. it is useful to override fonts dirs from system
to their own dirs only.
2019-04-03 12:02:09 +00:00
Akira TAGOH dba84600e1 Add system-ui generic family
The generic family of 'system-ui' name is being proposed in a draft of next CSS Fonts.
This would be nice to support in fontconfig too.

https://www.w3.org/TR/css-fonts-4/
2019-02-27 16:38:12 +09:00
Akira TAGOH 13b4ba9135 Use Rachana instead of Meera for Malayalam
Meera is a sans-serif font for Malayalam. that should be substituted for serif.
2018-11-13 06:34:11 +00:00
Akira TAGOH 9bb9010137 Drop Mitra Mono from 65-nonlatin.conf
This font seems totally broken.

Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/128
2018-10-29 12:25:03 +00:00
Akira TAGOH 454923709a Change the emboldening logic again
enable emboldening when request was >= bold and font was <= medium

https://bugs.freedesktop.org/show_bug.cgi?id=106460
2018-05-11 12:14:26 +09:00
Akira TAGOH 9a0fcb948f Add the ruleset description support
Trying to address what these configuration files really do.
This change allows to see the short description that mention
the purpose of the content in the config file and obtain
them through API.

This change also encourage one who want to make some UI for
the user-specific configuration management. it is the main
purpose of this change for me though.

Aside from that, I've also made programs translatable. so
we see more dependencies on the build time for gettext,
and itstool to generate PO from xml.
2017-11-07 15:24:54 +09:00
Bastien Nocera c41c922018 conf: Prefer system emoji fonts to third-party ones
Prefer the system provided emoji fonts on systems which provide one,
such as Windows, MacOS and Android, even if the Emoji One or Emoji Two
fonts are installed.

This also allows free software OSes such as GNOME to prefer the Emoji
One font, which is not used in other OSes and therefore has a unique
brand identity, by installing them and only them by default.

Users can use more capable fonts while Emoji One and Emoji Two catch up
by installing a font otherwise already used by another system, such as
Google's freely redistributable Noto Emoji font.

https://bugzilla.redhat.com/show_bug.cgi?id=1496761
2017-10-05 20:30:42 +09:00
Behdad Esfahbod 9efe0689ae Adjust emboldening logic
Old logic was really bad.  If you requested weight=102 and got a medium
font (weight=100), it would still enable emboldening...

Adjust it to only embolden if request was >= bold and font was <= regular.
2017-09-20 13:13:35 -07:00
Florian Müllner 2084b76bea build: Remove references to deleted file
Commit cc67d7df17 removed 30-urw-aliases.conf, so don't try to
install it.
2017-09-16 16:42:55 +09:00
David Kaspar [Dee'Kej] cc67d7df17 conf.d: Drop aliases for (URW)++ fonts
They have become a part of (URW)++ upstream release now:
  https://github.com/ArtifexSoftware/urw-base35-fonts/tree/master/fontconfig
2017-09-14 15:08:16 +09:00
Akira TAGOH 12cf4c17db Update similar to emoji's 2017-08-23 13:39:15 +09:00
Behdad Esfahbod cc8442dec8 Adjust color emoji config some more
Seems to work now.  Either asking for family emoji, or :lang=und-zsye returns
the preferred color emoji font available, or just any color emoji font if none
of the preferred ones was found.
2017-08-03 10:36:01 +01:00
Behdad Esfahbod 7ef1723836 Minor 2017-08-02 15:41:26 +01:00
Akira TAGOH 1bb8e691bd Add und-zsye.orth to support emoji in lang 2017-08-02 15:18:53 +01:00
Behdad Esfahbod 2073477e05 Add EmojiOne Mozilla font 2017-08-02 13:34:01 +01:00
Behdad Esfahbod 368fe08f97 Add Twitter Color Emoji
https://bugs.freedesktop.org/show_bug.cgi?id=94551#c33
2017-08-02 13:04:36 +01:00
Behdad Esfahbod d7f3437ade Add generic family matching for "emoji" and "math"
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=94551
2017-07-31 17:17:16 +01:00
Akira TAGOH db2825eed5 Bug 101726 - Sans config pulls in Microsoft Serifed font
Update 65-nonlatin.conf to have better choice of the sans-serif fonts for Chinese

Patch from Joseph Wang

https://bugs.freedesktop.org/show_bug.cgi?id=101726
2017-07-11 13:19:18 +09:00
Masamichi Hosoda 883b5cf48b Update aliases for URW June 2016
http://git.ghostscript.com/?p=ghostpdl.git;a=commit;h=c8342b4a7b6cdcc4cb1261bf2b008f6df257b5c6
http://git.ghostscript.com/?p=urw-core35-fonts.git;a=commit;h=79bcdfb34fbce12b592cce389fa7a19da6b5b018
2016-09-23 20:39:35 +09:00
Masamichi Hosoda 815cc98d6a Fix PostScript font alias name
`Helvetica Condensed' is not PostScript base 35 fonts.
`Helvetica Narrow' is PostScript base 35 fonts.
2016-09-16 21:32:51 +09:00
Akira TAGOH 0ed1575917 Add --with-default-hinting to configure 2016-06-23 11:18:40 +09:00
Akira TAGOH 3c2793a32e Correct one for the previous change 2016-05-26 14:22:29 +09:00
Akira TAGOH b6cf1bcaf6 45-latin.conf: Add some Windows fonts to categorize them properly
For Serif:
  Cambria, Constantia, Elephant, MS Serif

For Sans Serif:
  Arial Unicode MS, Britannic, Calibri, Candara, Century Gothic, Corbel,
  Haettenschweiler, MS Sans Serif, Tahoma, Twentieth Century

For Monospace:
  Consolas, Fixedsys, Terminal
2016-05-25 13:01:36 +09:00
Akira TAGOH 98434b3392 Add hintstyle templates and make hintslight default 2015-12-02 11:31:50 +09:00
Behdad Esfahbod 4a6f5efd5f Fix bitmap scaling
Was broken by 66db69a6d9.  Ouch!
2015-04-30 11:26:41 -04:00
Akira TAGOH b732bf057f Update aliases for new URW fonts
Patch from Tom Yan

https://bugs.freedesktop.org/show_bug.cgi?id=85225
2014-11-06 13:15:09 +09:00
Akira TAGOH e7121de237 Revert "Bug 73291 - poppler does not show fl ligature"
This reverts commit c6aa4d4bfc.

This issue has been fixed in poppler and we no longer need to patch it out in fontconfig.
2014-10-03 12:26:42 +09:00
Behdad Esfahbod 748a2ce9d4 Fix previous commit
Ouch!
2014-08-06 14:45:02 -04:00
Behdad Esfahbod 3d2627bba6 Trebuchet MS is a sans-serif font, not serif
https://bugs.freedesktop.org/show_bug.cgi?id=82099
2014-08-06 14:28:18 -04:00
Behdad Esfahbod a5641cfb24 Revert "Symlinks fix for DESTDIR"
This reverts commit fd5667b42c.

This was wrong, as pointed out by Akira on the list.
We want symlinks to final destination.
2014-07-23 13:21:05 -04:00
Behdad Esfahbod fd5667b42c Symlinks fix for DESTDIR
From:
https://github.com/Alexpux/MINGW-packages/blob/master/mingw-w64-fontconfig/fontconfig-2.11.0-symlinks-fix.patch
2014-07-23 11:57:47 -04:00
Akira TAGOH c6aa4d4bfc Bug 73291 - poppler does not show fl ligature
commented out substitutions for TeX Gyre Termes font
until the broken font are fixed.

https://bugs.freedesktop.org/show_bug.cgi?id=73291
2014-03-18 11:52:18 +09:00
Akira TAGOH 1132c98b7b Fix a typo 2013-12-16 16:00:12 +09:00
Frederic Crozat 2e933bd8bc Add metric aliases for additional Google ChromeOS fonts
MS fonts Cambria, Symbol and Calibri have compat metrics fonts
from ChromeOS.

https://bugs.freedesktop.org/show_bug.cgi?id=72395
2013-12-09 15:17:25 +09:00
Frederic Crozat 6a06e29491 Fix inversion between Tinos and Cousine in the comment 2013-12-09 15:17:17 +09:00
Akira TAGOH 96c5f3cf0f clean up 2013-09-26 18:44:10 +09:00
Jan Alexander Steffens (heftig) 643f8088f0 Further changes to 30-metric-aliases.conf
Big changes:
* Handle more PostScript fonts (further reduce 30-urw-aliases.conf)
* Update the big comment

Specific->Generic:
* Add missing maps, for symmetry

Generic<->Generic:
* Add "Helvetica Condensed" <-> "Arial Narrow" map

Generic->Specific:
* Add missing Courier -> Cursor alias
* Add "Helvetica Condensed" -> "Heros Cn" alias
* Remove Arial -> Heros and "Times New Roman" -> Termes maps
2013-09-20 12:52:11 +09:00
Akira TAGOH 104a2af0dd Bug 63399 - Add default aliases for Georgia, Garamond, Palatino Linotype, Trebuchet MS 2013-08-21 13:12:41 +09:00