Commit Graph

254 Commits

Author SHA1 Message Date
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
Akira TAGOH 0c149259e4 doc: trivial update 2017-11-07 14:46:10 +09:00
Behdad Esfahbod 0757556ddf Document FcFreeTypeQueryAll() 2017-09-20 13:07:35 -07:00
Behdad Esfahbod 8b46a518bd Update documentation for removal of blanks
Patch from Jerry Casiano.
2017-09-12 17:09:43 -04:00
Akira TAGOH 36a3ced949 Update docs 2017-09-09 22:17:16 +09:00
Akira TAGOH 12b7501bad Add FcConfigParseAndLoadFromMemory() to load a configuration from memory.
https://bugs.freedesktop.org/show_bug.cgi?id=78452
2017-07-07 15:52:15 +09:00
Akira TAGOH ee2000494c Add FcPatternGetWithBinding() to obtain the binding type of the value in FcPattern.
https://bugs.freedesktop.org/show_bug.cgi?id=19375
2017-07-07 15:43:59 +09:00
Helmut Grohne 5d8ee5231a fix cross compilation
Even though fontconfig's build system tries to build edit-sgml with the
build arch compiler, it gets the runes wrong and actually builds it with
the host arch compiler. This patch makes it use the right compiler.

Bug-Debian: https://bugs.debian.org/779461
https://bugs.freedesktop.org/show_bug.cgi?id=101554
2017-06-27 18:49:20 +09:00
Akira TAGOH ae9900b8d8 Bug 101202 - fontconfig FTBFS if docbook-utils is installed
https://bugs.freedesktop.org/show_bug.cgi?id=101202
2017-05-31 13:55:33 +09:00
Akira TAGOH 3e4198674d Add the description of FC_LANG envvar to the doc 2017-03-24 13:11:08 +09:00
Alan Coopersmith 0db7552e00 Correct cache version info in doc/fontconfig-user.sgml
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2016-08-15 12:06:58 +09:00
Behdad Esfahbod 46ec6a52d4 Revert changes made to FcConfigAppFontAddDir() recently
In 32ac7c75e8 the behavior of
FcConfigAppFontAddFile/Dir() were changed to return false
if not fonts were found.  While this is welldefined and useful
for AddFile(), it's quite problematic for AddDir().  For example,
if the directory is empty, is that a failure or success?  Worse,
the false value from AddDir() was being propagated all the way
to FcInit() returning false now.  This only happened upon memory
allocation failure before, and some clients assert that FcInit()
is successful.

With this change, AddDir() is reverted back to what it was.
AddFont() change (which was actually in fcdir.c) from the original
commit is left in.
2015-06-26 17:02:13 -07:00
Akira TAGOH 10a57edd07 Add one more debugging option to see transformation on font-matching
just setting FC_MATCH=3 shows a lot of information and hard to keep on track for informamtion
which is really necessary to see. to use this more effectively, added FC_DBG_MATCH_FILTER to
see for what one really want to see. it takes a comma-separated-list of object names.
If you want to see family name only, try like this:

FC_DBG_MATCH_FILTER=family FC_DEBUG=4096 fc-match

debugging output will be filtered out and see family only in the result.
2015-06-08 17:39:25 +09:00
Behdad Esfahbod bcfe167e3d Add su[pport for symbol fonts
Adds FC_SYMBOL.

This affects fonts having a cmap with platform 3 encoding 0.
We now map their glyphs from the PUA area to the Latin1 area.

See thread "Webdings and other MS symbol fonts don't display"
on the mailing list.

Test before/after with:
$ pango-view --markup --text='<span fallback="false">&#xd7;&#xf0d7;</span>' --font=Wingdings
2015-05-18 15:26:03 -07:00
Akira TAGOH 55ff841927 Make FC_SCALE deprecated
Use FC_MATRIX instead.

https://bugs.freedesktop.org/show_bug.cgi?id=90257
2015-05-12 14:49:12 +09:00
Akira TAGOH b3fc08bc95 Fix a typo in fontconfig-user.sgml
https://bugs.freedesktop.org/show_bug.cgi?id=90105
2015-04-22 11:17:04 +09:00
Akira TAGOH 07be485a0a Fix a typo for the latest cache version 2015-04-20 10:49:21 +09:00
Akira TAGOH 78ed920e2b Fix a typo in docs 2015-01-19 19:48:50 +09:00
Akira TAGOH 4c60fabf66 Add missing docs 2015-01-06 16:37:18 +09:00
Akira TAGOH 4420b27c07 Fix a typo
missing a terminator caused a document generation fail.
2014-12-25 13:48:57 +09:00
Nick Alcock af58644194 Generate documentation for FcWeight* functions.
The SGML for these functions exists, and they are named as manpages,
but because they are not mentioned in fontconfig-devel.sgml, no
documentation is ever generated, and installation under --enable-docs
fails.

(The documentation I have written in fontconfig-devel.sgml is boilerplate
so I can get the manpages generated. It's probably wrong.)
2014-12-15 19:22:07 +09:00
Behdad Esfahbod dbc7c4a2cf Add FC_COLOR
Only adds "color" to pattern if FreeType version supports color.

Based on patch from Jungshik Shin.
2014-12-14 13:40:02 -08:00
Akira TAGOH 32ac7c75e8 Returns False if no fonts found
https://bugs.freedesktop.org/show_bug.cgi?id=86950
2014-12-09 19:06:46 +09:00
Akira TAGOH 1082161ea3 Add FcRangeGetDouble()
https://bugs.freedesktop.org/show_bug.cgi?id=82876
2014-09-25 17:03:27 +09:00
Akira TAGOH f094539687 Note FcConfigSetCurrent() increases the refcount in document 2014-08-13 11:39:29 +09:00
Behdad Esfahbod ffda7c0e81 Linearly interpolate weight values
Rest of Part of https://bugs.freedesktop.org/show_bug.cgi?id=81453

Adds new API:

	FcWeightFromOpenType()
	FcWeightToOpenType()
2014-07-25 18:07:59 -04:00
Behdad Esfahbod bf9df5ada7 Change DemiLight from 65 to 55
Such that Regular is closer to Medium than to DemiLight
2014-07-25 18:07:59 -04:00
Behdad Esfahbod be6506ca04 Add FC_WEIGHT_DEMILIGHT
Part of https://bugs.freedesktop.org/show_bug.cgi?id=81453
Also hooks up FC_WEIGHT_BOOK to fcfreetype.c.
2014-07-25 16:24:26 -04:00
Behdad Esfahbod 75abdaf5c8 Deprecate FC_HASH and don't compute it
It was added without proper measurement and a fuzzy possible
use-case (font servers) in mind, but reality check shows that
this significantly slows down caching.  As such, deprecate it
and do NOT compute hash during caching.

Makes caching two to three times faster (ignoring the 2 second
delay in fc-cache).
2014-06-12 17:02:10 -04:00
Akira TAGOH fcba9ef01c Fix missing docs 2014-03-26 16:02:12 +09:00
Akira TAGOH f8ccf379eb Update doc to include the version info of `since when'
Version section was getting confused to the API's availability,
 even though it was the version the doc was genereated.
So moving it into the footer and added @SINCE@ field in the data.
2014-03-07 19:42:21 +09:00
Akira TAGOH 787619b2c7 Add a doc for FcDirCacheRescan 2014-02-06 17:15:26 +09:00
Akira TAGOH 9a4310176b Add missing doc for FcStrListFirst and fix a typo 2013-10-09 12:19:35 +09:00
W. Trevor King 2b0fca14ad doc/fccharset.fncs: Describe the map format in more detail
The previous documentation for FcCharSetFirstPage and
FcCharSetNextPage was technically accurate, but a bit terse.  I've
added an example using the returned page (root code point) and map to
give folks something concrete to work with.  I've also documented
FC_CHARSET_DONE, which wasn't mentioned at all before.
2013-09-24 11:19:28 +09:00
Akira TAGOH 7e44a0b5a8 Bug 68955 - Deprecate / remove FC_RASTERIZER 2013-09-10 17:45:11 +09:00
Akira TAGOH 77419a4dfd documented FC_HASH and FC_POSTSCRIPT_NAME 2013-04-10 11:14:39 +09:00
Akira TAGOH e96d776088 Bug 59456 - Adding a --sysroot like option to fc-cache
Add an ability to set the system root to generate the caches.
In order to do this, new APIs, FcConfigGetSysRoot() and
FcConfigSetSysRoot() is available.
2013-03-05 18:38:50 +09:00
Quentin Glidic 96220a5ed9 Use LOG_COMPILER and AM_TESTS_ENVIRONMENT
TESTS_ENVIRONMENT is deprecated and should be reserved to the user to
override the test environment

<ext>_LOG_COMPILER is meant to contain the program that runs the test
with <ext> extension
LOG_COMPILER is for extensionless tests
AM_TESTS_ENVIRONMENT is meant to set the environment for the tests

  https://bugs.freedesktop.org/show_bug.cgi?id=60192

Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2013-02-06 19:53:36 +09:00
Akira TAGOH 20191810d1 Bug 23757 - Add mode="delete" to <edit>
Add two edit mode, "delete" and "delete_all".
what values are being deleted depends on <test> as documented.
if the target object is same to what is tested, matching value there
will be deleted. otherwise all of values in the object will be deleted.
so this would means both edit mode will not take any expressions.

e.g.

Given that the testing is always true here, the following rules:

  <match>
    <test name="foo" compare="eq">
      <string>bar</string>
    </test>
    <edit name="foo" mode="delete"/>
  </match>

will removes "bar" string from "foo" object. and:

  <match>
    <test name="foo" compare="eq">
      <string>foo</string>
    </test>
    <edit name="bar" mode="delete"/>
  </match>

will removes all of values in "bar" object.
2013-02-01 12:56:14 +09:00
Behdad Esfahbod ec5ca08c80 Bug 59379 - FC_PRGNAME
Can be used for per-application configuration.
2013-01-15 20:46:45 -06:00
Akira TAGOH 3f84695104 Bug 50497 - RFE: Add OpenType feature tags support
Add FC_FONT_FEATURES to store the feature tags to be enabled.
2013-01-15 19:40:26 -06:00
Akira TAGOH 8e8a99ae8a Bug 29312 - RFE: feature to indicate which characters are missing to satisfy the language support
Add fc-validate to check the language coverage in a font.
2013-01-09 12:21:33 +09:00
Akira TAGOH 16fd965171 Fix a typo in the manpages template 2013-01-09 11:26:56 +09:00
Behdad Esfahbod 538f1579e8 Trying to fix distcheck
Doesn't work though :(.  Building docs is very fragile...

At least, if docbook is present, distcheck passes now.
2013-01-02 18:23:55 -06:00
Behdad Esfahbod 558b3c65f9 Use CC_FOR_BUILD to generate source files
Previously we were failing if CROSS_COMPILING and the generated headers
were not present.  It works just fine now.

One caveat: the fix is not fully correct since config.h is being
included in the files built with CC_FOR_BUILD, but config.h has config
for the host system, not the build system.  Should be fine though.
2013-01-02 17:49:41 -06:00
Behdad Esfahbod ed41b23765 Switch .gitignore to git.mk 2013-01-02 00:36:12 -06:00
Behdad Esfahbod 7c0f79c5fe Deprecate FcName(Un)RegisterObjectTypes / FcName(Un)RegisterConstants
These never worked as intended.  The problem is, if Fontconfig tries to
read config files when these new types / constants are not registered,
it errs.  As a result, no defined types / constants are usable from
config files.  Which makes these really useless.  Xft was the only user
of this API and even there it's not really used.  Just kill it.

One inch closer to thread-safety since we can fix the object-type hash
table at compile time.
2013-01-01 22:55:08 -06:00
Behdad Esfahbod 424cfa1684 Adjust docs for recent changes 2012-12-31 20:00:17 -06:00
Akira TAGOH 2442d61157 Fix build issues on clean tree 2012-11-30 20:10:30 +09:00
Akira TAGOH 769306665c Bug 18726 - RFE: help write locale-specific tests
Add an example matching rule for the language specific
2012-06-22 14:30:56 +09:00
Akira TAGOH 2ec0440fb5 Fix a typo and build fail. 2012-06-12 11:02:26 +09:00
Akira TAGOH b447fc5d52 Bug 50835 - Deprecate FC_GLOBAL_ADVANCE
FC_GLOBAL_ADVANCE is deprecated. this flag is simply ignored on
freetype 2.4.5 or later.
2012-06-11 23:28:55 +09:00
Akira TAGOH fdb1155035 doc: Fix distcheck error again... 2012-06-11 18:39:37 +09:00
Akira TAGOH bbc8fb5ba7 Bug 32853 - Export API to get the default language
Add a new API FcGetDefaultLangs() to export the string sets of the default
languages.
2012-06-08 15:18:30 +09:00
Akira TAGOH 2837c63876 Bug 33644 - Fontconfig doesn't match correctly in <test>
Warn if the multiple values is set to <test>, including the case of
in <alias> because the behavior isn't intuitive since so many users
is asking for a help to get things working for their expectation.

Use multiple <match>s or <alias>es for OR operator and
multiple <test>s for AND operator.
2012-05-25 13:11:25 +09:00
Akira TAGOH 794fb0bd6a Correct the example
Enclose the string with <string> in <test>
2012-05-21 13:37:54 +09:00
Akira TAGOH 8c255fb185 Bug 20411 - fontconfig doesn't match FreeDesktop directories specs
Allows reading configuration files, fonts and cache files from
the directories where the XDG Base Directory Specification defines.

the old directories are still in the configuration files for
the backward compatibility.
2012-05-18 11:12:50 +09:00
Akira TAGOH bc4517d8e5 Bug 19128 - Handling whitespace in aliases
Add a new attribute `ignore-blanks' to <test>.
When this is set to "true", any blanks in the string will be ignored
on comparison.  This takes effects for compare="eq" or "not_eq" only.

Also changed the behavior of the comparison on <alias> too.
2012-05-14 12:06:12 +09:00
Akira TAGOH 7d65f9f514 Bug 39278 - make usage of mmap optional
Stop using mmap() if the cache file is stored on NFS.
also added FONTCONFIG_USE_MMAP environment variable to enforce the use of
or not the use of mmap(2) regardless of what the filesystem the cache files
are stored on.
2012-04-25 16:38:01 +09:00
Akira TAGOH 7587d1c99d Bug 27765 - FcMatch() returns style in wrong language
Add "namelang" object to obtain the localized name in the font regardless
of the lang object. it's applied to "familylang", "stylelang" and
"fullnamelang" alltogether. this would helps if one wants to enforce
selecting them in the specific language if any.  the default value for
the namelang object is determined from current locale.
2012-04-24 12:44:56 +09:00
Akira TAGOH 06d6b7c312 Create CACHEDIR.TAG when fc-cache is run or only when the cache directory is created at the runtime.
Also add FcCacheCreateTagFile() API to do create CACHEDIR.TAG on the cache
directory.
2012-04-23 11:26:32 +09:00
Akira TAGOH dd2a3d3520 Bug 25151 - Move cleanCacheDirectory() from fc-cache.c into
the library

Add FcDirCacheScan() API to clean up the cache files in the directory.
2012-04-18 12:55:23 +09:00
Akira TAGOH 94c2cc58a0 doc: Fix a typo of the environment variable name. 2012-04-16 20:25:52 +09:00
Akira TAGOH d3e3f4a46d doc: Add contains and not_contains operators and elements 2012-03-30 18:09:14 +09:00
Akira TAGOH e1ffb3dcd4 Get rid of the prerequisites from the sufix rules
Thanks to Adam Sampson for pointing this out.
2012-03-16 23:18:23 +09:00
Akira TAGOH 93460f93e9 Fix a build issue due to the use of non-portable variables
$< isn't supported in BSD make say. $(RM) is pre-defined in GNU make
though, not in BSD make say. so changed to check on configure if it's
pre-defined by make, otherwise set the appropriate command to $(RM).

This would be a workaround until it has the certain pre-defined value.
2012-03-16 16:34:37 +09:00
Akira TAGOH a5b609196f Revert "Fix a build fail on some environment."
This reverts commit 0fdfddf2ac.

Conflicts:

	doc/Makefile.am
2012-03-16 11:55:30 +09:00
Akira TAGOH 765b7b32d8 [doc] Update for cachedir.
<cache> element is now obsoletes and no longer used. get rid of it
from the doc and add <cachedir> instead.
2012-03-12 19:02:27 +09:00
Akira TAGOH e8bdc6df2e [doc] Update the path for cache files and the version. 2012-03-12 17:58:00 +09:00
Akira TAGOH 3b142c2aae Get rid of $< from Makefile.am 2012-03-11 02:12:10 +09:00
Akira TAGOH 0fdfddf2ac Fix a build fail on some environment. 2012-03-10 23:30:30 +09:00
Akira TAGOH a47899a853 Fix a build issue 2012-03-10 19:03:05 +09:00
Akira TAGOH 353f7cc691 Fix distcheck error 2012-03-09 17:33:03 +09:00
Behdad Esfahbod 3951fbaa39 Fix parallel build 2011-10-05 15:12:48 -04:00
Behdad Esfahbod e61eba94ef Switch fc-cat to use FcPatternFormat()
Added the a builtin "fccat" to FcPatternFormat().
2011-06-20 11:55:25 -04:00
Behdad Esfahbod b5617e636c More doc typo fixes 2011-03-14 18:23:56 -03:00
Behdad Esfahbod 6c7915c105 Mark constant strings as constant
Fixes a few compiler warnings in fcxml.c and makes it clear that they
should not be freed.
2011-03-14 18:21:32 -03:00
Brad Hards 7baa20c759 Documentation fixes 2011-03-11 19:43:42 -03:00
Behdad Esfahbod e63f90ce74 Doc nit 2010-12-28 02:58:16 -06:00
Behdad Esfahbod 549c9962a4 Allow editing charset and lang in target="scan"
Merge commit 'fa269cf812ee304534b0e4c44662202496008db0'

Fixes:
Bug 31969 - Can't modify charset in target="scan"
Bug 23758 - Can't modify lang in target="scan"
2010-12-28 02:51:10 -06:00
Behdad Esfahbod 2a6b235ff6 Make most generated-files cross-compiling-safe
By simply including a copy in the tarball.

Remains fc-arch which is trickier.
2010-12-27 13:20:47 -06:00
Akira TAGOH fa269cf812 add some documents 2010-12-09 11:57:24 +09:00
Akira TAGOH 51e352a1bd add some document for range and charset. 2010-12-09 11:32:26 +09:00
Behdad Esfahbod 5aaf466d38 Cleanup copyright notices to replace "Keith Packard" with "the author(s)" 2010-11-10 16:45:42 -05:00
Behdad Esfahbod 52960d05eb Add new public API: FcCharSetDelChar() 2010-09-21 13:14:41 -04:00
Behdad Esfahbod 2e375b6894 More doc typo fixes 2010-02-14 20:27:22 -05:00
Behdad Esfahbod 77be30cb9f Fix doc typo 2010-02-14 20:20:00 -05:00
Behdad Esfahbod 36ae1d9563 Clarify default confdir and cachedir better.
Also remove --with-docdir.  It can be set by setting docdir variable.
2009-11-09 13:17:17 -05:00
Behdad Esfahbod 273e22c71f Hardcode /etc/fonts instead of @CONFDIR@ in docs (#22911)
We distribute the docs, so it makes little sense to distribute with
@CONFDIR@ replaced.  Until we find a better solution, I've hardcoded
/etc/fonts now.
2009-07-27 15:07:12 -04:00
Behdad Esfahbod 21384990ff [doc] Add ~/fonts.conf.d to user docs 2009-07-27 14:50:44 -04:00
Behdad Esfahbod caeea376da Document FcPatternFormat() format 2009-03-13 19:06:43 -04:00
Behdad Esfahbod 3074a73b41 Replace 'KEITH PACKARD' with 'THE AUTHOR(S)' in license text in all files 2009-03-13 17:59:28 -04:00
Behdad Esfahbod d62b85af21 [fclang] Implement FcLangSetGetLangs() (#18846) 2009-02-15 14:13:34 -08:00
Behdad Esfahbod 8c31a2434d [fcformat] Add element filtering and deletion
The filtering, '%{+elt1,elt2,elt3{subexpr}}' will evaluate subexpr
with a pattern only having the listed elements from the surrounding
pattern.

The deletion, '%{-elt1,elt2,elt3{subexpr}}' will evaluate subexpr
with a the surrounding pattern sans the listed elements.
2009-02-15 13:40:26 -08:00
Behdad Esfahbod c493c3b770 [fcformat] Add support for width modifiers
One can do '%30{family}' for example.  Or '%-30{family}' for the
left-aligned version.
2009-02-15 13:40:25 -08:00
Karl Tomlinson 575ee6cddd Change FcCharSetMerge API
To only work on writable charsets.  Also, return a bool indicating whether
the merge changed the charset.

Also changes the implementation of FcCharSetMerge and FcCharSetIsSubset
2009-02-15 13:40:18 -08:00
Behdad Esfahbod 98d765a53b Cleanup all manpage.* files
Recent doc2man generates files called manpage.log.  This was breaking build.
2009-02-13 16:55:08 -08:00
Behdad Esfahbod 6bffe1a95b Add fc-scan too that runs FcFileScan/FcDirScan
This is quite similar to fc-query, but calling FcFileScan/FcDirScan instead
of FcFreeTypeQuery.
2009-02-13 16:54:06 -08:00
Behdad Esfahbod 25a09eb9bf Don't use FcCharSetCopy in FcCharSetMerge
The Copy function is actually a ref, not real copy.
2009-02-13 16:54:06 -08:00
Behdad Esfahbod d230cf144f Make FcCharSetMerge() public
That's needed for apps to be abled to do pruning themselves without
the performance penalty of recreating new charsets all the time.
2009-02-13 16:54:05 -08:00