platform/upstream/fontconfig.git
15 years agoAdd Ottoman Turkish (ota) orthography (bug #20114)
Roozbeh Pournader [Sat, 14 Feb 2009 04:04:42 +0000 (20:04 -0800)]
Add Ottoman Turkish (ota) orthography (bug #20114)

15 years agoRemove Euro Sign from all orthographies (bug #19865)
Roozbeh Pournader [Sat, 14 Feb 2009 01:14:14 +0000 (17:14 -0800)]
Remove Euro Sign from all orthographies (bug #19865)

15 years ago[fc-lang] Continue parsing after an "include" (#20179)
Behdad Esfahbod [Mon, 2 Mar 2009 09:55:37 +0000 (13:25 +0330)]
[fc-lang] Continue parsing after an "include" (#20179)

15 years agoFix Bengali (bn) and Assamese (as) orthographies (bug #22924)
Roozbeh Pournader [Sat, 14 Feb 2009 00:47:11 +0000 (16:47 -0800)]
Fix Bengali (bn) and Assamese (as) orthographies (bug #22924)

Removing digits, symbols, and the letters not used in the languages.

15 years agoAdd Sidamo (sid) and Wolaitta (wal) orthographies (bug #19891)
Roozbeh Pournader [Sat, 14 Feb 2009 00:07:14 +0000 (16:07 -0800)]
Add Sidamo (sid) and Wolaitta (wal) orthographies (bug #19891)

15 years agoAdd Sardinian (sc) orthography (bug #19891)
Roozbeh Pournader [Fri, 13 Feb 2009 23:52:23 +0000 (15:52 -0800)]
Add Sardinian (sc) orthography (bug #19891)

15 years agoAdd Limburgan (li) orthography (bug #19891)
Roozbeh Pournader [Fri, 13 Feb 2009 21:31:10 +0000 (13:31 -0800)]
Add Limburgan (li) orthography (bug #19891)

15 years agoAd Ganda (lg) orthography (bug #19891)
Roozbeh Pournader [Wed, 11 Feb 2009 09:59:56 +0000 (01:59 -0800)]
Ad Ganda (lg) orthography (bug #19891)

15 years agoAdd Haitian Creole (ht) orthography (bug #19891)
Roozbeh Pournader [Wed, 11 Feb 2009 09:44:45 +0000 (01:44 -0800)]
Add Haitian Creole (ht) orthography (bug #19891)

15 years agoAdd Aragonese (an) orthography (bug #19891)
Roozbeh Pournader [Wed, 11 Feb 2009 09:11:30 +0000 (01:11 -0800)]
Add Aragonese (an) orthography (bug #19891)

15 years agoAdd Kurdish in Turkey (ku_tr) orthography (bug #19891)
Roozbeh Pournader [Wed, 11 Feb 2009 08:34:10 +0000 (00:34 -0800)]
Add Kurdish in Turkey (ku_tr) orthography (bug #19891)

15 years agoUse newly added Cyrillic letters for Kurdish (bug #20049)
Roozbeh Pournader [Wed, 11 Feb 2009 08:22:53 +0000 (00:22 -0800)]
Use newly added Cyrillic letters for Kurdish (bug #20049)

15 years agoAdd Chhattisgarhi (hne) orthography (bug #19891)
Roozbeh Pournader [Wed, 11 Feb 2009 08:05:16 +0000 (00:05 -0800)]
Add Chhattisgarhi (hne) orthography (bug #19891)

15 years ago[fcformat] Add list of undocumented language features
Behdad Esfahbod [Sat, 14 Feb 2009 01:18:11 +0000 (17:18 -0800)]
[fcformat] Add list of undocumented language features

15 years ago[fcformat] Add a 'pkgkit' builtin that prints tags for font packages
Behdad Esfahbod [Sat, 14 Feb 2009 00:41:37 +0000 (16:41 -0800)]
[fcformat] Add a 'pkgkit' builtin that prints tags for font packages

For DejaVu Sans Condensed it generates:

font(dejavusans)
font(dejavusanscondensed)
font(:lang=aa)
font(:lang=ab)
...
font(:lang=yo)
font(:lang=zu)

15 years ago[fcformat] Enumerate langsets like we do arrays of values
Behdad Esfahbod [Sat, 14 Feb 2009 00:33:58 +0000 (16:33 -0800)]
[fcformat] Enumerate langsets like we do arrays of values

If one asks for a format like '%{[]elt{expr}}' and the first value
for elt is a langset, we enumerate the langset languages in expr.

15 years ago[fclang] Implement FcLangSetGetLangs() (#18846)
Behdad Esfahbod [Sat, 14 Feb 2009 00:30:43 +0000 (16:30 -0800)]
[fclang] Implement FcLangSetGetLangs() (#18846)

15 years ago[fcformat] Implement array enumeration
Behdad Esfahbod [Fri, 13 Feb 2009 03:48:22 +0000 (21:48 -0600)]
[fcformat] Implement array enumeration

The format '%{[]family,familylang{expr}}' expands expr once for the first
value of family and familylang, then for the second, etc, until both lists
are exhausted.

15 years ago[fcformat] Support 'default value' for simple tags
Behdad Esfahbod [Thu, 12 Feb 2009 04:55:11 +0000 (23:55 -0500)]
[fcformat] Support 'default value' for simple tags

The format '%{family:-XXX} prints XٓٓٓٓXX if the element family is not defined.
Also works for things like '%{family[1]:-XXX}'.

15 years ago[fcformat] Support indexing simple tags
Behdad Esfahbod [Thu, 12 Feb 2009 04:44:36 +0000 (23:44 -0500)]
[fcformat] Support indexing simple tags

The format '%{family[0]}' will only output the first value for element family.

15 years ago[fcformat] Add support for builtin formats
Behdad Esfahbod [Wed, 11 Feb 2009 01:56:39 +0000 (20:56 -0500)]
[fcformat] Add support for builtin formats

The '%{=unparse}' format expands to the FcNameUnparse() result on the
pattern.  Need to add '%{=verbose}' for FcPatternPrint() output but
need to change that function to output to a string first.

Also added the '%{=fclist}' and '%{=fcmatch}' which format like the
default format of fc-list and fc-match respectively.

15 years ago[fcformat] Refactor code to avoid malloc
Behdad Esfahbod [Tue, 10 Feb 2009 23:57:34 +0000 (18:57 -0500)]
[fcformat] Refactor code to avoid malloc

15 years ago[fcformat] Start adding builtins
Behdad Esfahbod [Tue, 10 Feb 2009 11:22:55 +0000 (06:22 -0500)]
[fcformat] Start adding builtins

15 years ago[fcformat] Implement 'delete', 'escape', and 'translate' filter functions
Behdad Esfahbod [Tue, 10 Feb 2009 10:57:10 +0000 (05:57 -0500)]
[fcformat] Implement 'delete', 'escape', and 'translate' filter functions

The format '%{family|delete( )}' expands to family values with space removed.
The format '%{family|translate( ,-)}' expands to family values with space
replaced by dash.  Multiple chars are supported, like tr(1).
The format '%{family|escape(\\ )}' expands to family values with space
escaped using backslash.

15 years ago[fcformat] Add value-count syntax
Behdad Esfahbod [Tue, 10 Feb 2009 10:05:53 +0000 (05:05 -0500)]
[fcformat] Add value-count syntax

The format '%{#family}' expands to the number of values for the element
'family', or '0' if no such element exists in the pattern.

15 years ago[FcStrBuf] better handle malloc failure
Behdad Esfahbod [Tue, 10 Feb 2009 09:47:24 +0000 (04:47 -0500)]
[FcStrBuf] better handle malloc failure

If buffer has failed allocation, return NULL when done.

15 years ago[fcformat] Implement 'cescape', 'shescape', and 'xmlescape' converters
Behdad Esfahbod [Tue, 10 Feb 2009 09:44:54 +0000 (04:44 -0500)]
[fcformat] Implement 'cescape', 'shescape', and 'xmlescape' converters

15 years ago[fcformat] Add simple converters
Behdad Esfahbod [Tue, 10 Feb 2009 08:38:22 +0000 (03:38 -0500)]
[fcformat] Add simple converters

The format '%{family|downcase}' for example prints the lowercase of
the family element.  Three converters are defined right now:
'downcase', 'basename', and 'dirname'.

15 years ago[fcformat] Add conditionals
Behdad Esfahbod [Tue, 10 Feb 2009 05:15:08 +0000 (00:15 -0500)]
[fcformat] Add conditionals

The conditional '%{?elt1,elt2,!elt3{expr1}{expr2}}' will evaluate
expr1 if elt1 and elt2 exist in pattern and elt3 doesn't exist, and
expr2 otherwise.  The '{expr2}' part is optional.

15 years ago[fcformat] Add element filtering and deletion
Behdad Esfahbod [Tue, 10 Feb 2009 04:08:08 +0000 (23:08 -0500)]
[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.

15 years ago[fcformat] Add support for subexpressions
Behdad Esfahbod [Tue, 10 Feb 2009 01:49:45 +0000 (20:49 -0500)]
[fcformat] Add support for subexpressions

The syntax is '{{expr}}'.  Can be used for aligning/justifying an entire
subexpr for example.

15 years ago[fcformat] Refactor and restructure code for upcoming changes
Behdad Esfahbod [Tue, 10 Feb 2009 00:13:07 +0000 (19:13 -0500)]
[fcformat] Refactor and restructure code for upcoming changes

Also makes it thread-safe.

15 years ago[fcformat] Add support for width modifiers
Behdad Esfahbod [Mon, 9 Feb 2009 23:18:59 +0000 (18:18 -0500)]
[fcformat] Add support for width modifiers

One can do '%30{family}' for example.  Or '%-30{family}' for the
left-aligned version.

15 years agoFurther update Sinhala orthography (#19288)
Behdad Esfahbod [Fri, 6 Feb 2009 04:37:16 +0000 (23:37 -0500)]
Further update Sinhala orthography (#19288)

15 years ago[cache] After writing cache to file, update the internal copy to reflect this
Behdad Esfahbod [Thu, 5 Feb 2009 07:46:16 +0000 (02:46 -0500)]
[cache] After writing cache to file, update the internal copy to reflect this

Only do it for small caches though.  For large cache we'd better off loading
the cache file again, mmap()ing it.

Based on patch from Diego Santa Cruz.

15 years agoUpdate Sinhala orthography (#19288)
Behdad Esfahbod [Wed, 4 Feb 2009 20:58:36 +0000 (15:58 -0500)]
Update Sinhala orthography (#19288)

Patch from Harshula Jayasuriya.

15 years ago[fccache] Make sure the cache is current when reusing from open caches
Behdad Esfahbod [Wed, 4 Feb 2009 02:06:15 +0000 (21:06 -0500)]
[fccache] Make sure the cache is current when reusing from open caches

Reported by Diego Santa Cruz.

15 years ago[win32] Do not remove leading '\\' such that network paths work
Behdad Esfahbod [Wed, 4 Feb 2009 01:50:29 +0000 (20:50 -0500)]
[win32] Do not remove leading '\\' such that network paths work

Raised by Diego Santa Cruz.

15 years ago[win32] Expand "APPSHAREFONTDIR" to ../share/fonts relative to binary location
Behdad Esfahbod [Wed, 4 Feb 2009 01:35:10 +0000 (20:35 -0500)]
[win32] Expand "APPSHAREFONTDIR" to ../share/fonts relative to binary location

Proposed by Diego Santa Cruz.

15 years ago[win32] Fix usage of GetFullPathName()
Behdad Esfahbod [Wed, 4 Feb 2009 01:31:30 +0000 (20:31 -0500)]
[win32] Fix usage of GetFullPathName()

Diego Santa Cruz pointed out that we are using that API wrongly.
The forth argument is a pointer to a pointer.  Turns out we don't
need that arugment and it accepts NULL, so just pass that.

15 years agoAdd ICONV_LIBS to fontconfig.pc.in (#19606)
Behdad Esfahbod [Tue, 3 Feb 2009 22:15:52 +0000 (17:15 -0500)]
Add ICONV_LIBS to fontconfig.pc.in (#19606)

15 years ago[conf] Disable hinting when emboldening (#19904)
Mike FABIAN [Tue, 3 Feb 2009 21:57:01 +0000 (16:57 -0500)]
[conf] Disable hinting when emboldening (#19904)

Hinting will be done before Embolden in freetype2,
but in such case, Embolden will get wrong result
on some glyph contours after applying hinting.
Actually, hinting should be done after embolden, but we can't
fix it in current freetype2. So as a workaround, just turn off
hinting if we want to do embolden.

15 years agoRemove punctuation symbols from Asturian orthography (bug #19893)
Roozbeh Pournader [Mon, 2 Feb 2009 08:27:58 +0000 (00:27 -0800)]
Remove punctuation symbols from Asturian orthography (bug #19893)

Also fix the URL for orthography.

15 years agoRename Igbo from "ibo" to "ig" (bug #19892)
Roozbeh Pournader [Mon, 2 Feb 2009 07:52:10 +0000 (23:52 -0800)]
Rename Igbo from "ibo" to "ig" (bug #19892)

15 years agoRenamed az to az_az (bug #19889)
Roozbeh Pournader [Mon, 2 Feb 2009 06:14:53 +0000 (22:14 -0800)]
Renamed az to az_az (bug #19889)

15 years agoAdd Berber orthographies in Latin and Tifinagh scripts (bug #19881)
Roozbeh Pournader [Mon, 2 Feb 2009 04:46:23 +0000 (20:46 -0800)]
Add Berber orthographies in Latin and Tifinagh scripts (bug #19881)

15 years agoAdd Upper Sorbian (hsb) orthography (bug #19870)
Roozbeh Pournader [Mon, 2 Feb 2009 04:42:54 +0000 (20:42 -0800)]
Add Upper Sorbian (hsb) orthography (bug #19870)

15 years agoAdd Kinyarwanda (rw) orthography (bug #19868)
Roozbeh Pournader [Mon, 2 Feb 2009 04:41:14 +0000 (20:41 -0800)]
Add Kinyarwanda (rw) orthography (bug #19868)

15 years agoAdd Malay (ms) orthography (bug #19867)
Roozbeh Pournader [Mon, 2 Feb 2009 04:39:03 +0000 (20:39 -0800)]
Add Malay (ms) orthography (bug #19867)

15 years agoAdd Kashubian (csb) orth file (bug #19866)
Roozbeh Pournader [Mon, 2 Feb 2009 04:36:55 +0000 (20:36 -0800)]
Add Kashubian (csb) orth file (bug #19866)

15 years agoRename "ku" to "ku_am", add "ku_iq" (bug #19853).
Roozbeh Pournader [Mon, 2 Feb 2009 04:29:12 +0000 (20:29 -0800)]
Rename "ku" to "ku_am", add "ku_iq" (bug #19853).

For Iraq, we are assuming its the same Arabic orthography used in Iran.

According to Ethnologue, Kurdish is written in Cyrillic in Armenia:
http://www.ethnologue.com/show_language.asp?code=kmr

Turkey and Syria need more research.

15 years agoRename Venda from "ven" to "ve" (bug #19852)
Roozbeh Pournader [Mon, 2 Feb 2009 04:21:45 +0000 (20:21 -0800)]
Rename Venda from "ven" to "ve" (bug #19852)

Since ISO 639-1 code exists, we should use it.

15 years agoChange Turkmen orth from Cyrillic to Latin (bug #19849)
Roozbeh Pournader [Mon, 2 Feb 2009 04:00:15 +0000 (20:00 -0800)]
Change Turkmen orth from Cyrillic to Latin (bug #19849)

15 years agoFix doubly encoded UTF-8 in comments (bug #19848)
Roozbeh Pournader [Mon, 2 Feb 2009 03:35:37 +0000 (19:35 -0800)]
Fix doubly encoded UTF-8 in comments (bug #19848)

15 years agoSplit Mongolian orth to Mongolia and China (bug #19847)
Roozbeh Pournader [Mon, 2 Feb 2009 03:29:21 +0000 (19:29 -0800)]
Split Mongolian orth to Mongolia and China (bug #19847)

The orth file for Mongolia uses Cyrillic, while that of
China uses the classical Mongolian script.

15 years agoAdd Filipino orth, alias Tagalog to Filipino (bug #19846)
Roozbeh Pournader [Mon, 2 Feb 2009 02:55:31 +0000 (18:55 -0800)]
Add Filipino orth, alias Tagalog to Filipino (bug #19846)

The previous Tagalog orthography used the Tagalog script, which is not in
modern use.

15 years agoRemove Sinhala characters not in modern use (bug #19288)
Roozbeh Pournader [Mon, 2 Feb 2009 02:52:41 +0000 (18:52 -0800)]
Remove Sinhala characters not in modern use (bug #19288)

15 years agoCorrect Sindhi orthography to use Arabic script (bug #17140)
Roozbeh Pournader [Mon, 2 Feb 2009 02:32:21 +0000 (18:32 -0800)]
Correct Sindhi orthography to use Arabic script (bug #17140)

The previous version used the Devanagari script. But in both Pakistan and
India, Sindhi is generally written in Arabic. The Devanagari data could
prove to be useful, if we decide on how we should name such files (see
bug #17208 and bug #19869).

15 years ago[fcfreetype] Fix typo in GB2312 encoding name string (#19845)
Behdad Esfahbod [Sat, 31 Jan 2009 08:38:19 +0000 (03:38 -0500)]
[fcfreetype] Fix typo in GB2312 encoding name string (#19845)

This was causing failure when opening iconv converter, hence rendering
GB2312-encoded fonts with no other usable encoding unusable.

15 years agoChange FcCharSetMerge API
Karl Tomlinson [Tue, 27 Jan 2009 08:35:51 +0000 (03:35 -0500)]
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

15 years ago[fcmatch] Fix crash when no fonts are available.
Behdad Esfahbod [Fri, 23 Jan 2009 19:17:08 +0000 (14:17 -0500)]
[fcmatch] Fix crash when no fonts are available.

15 years agoLet make expand fc_cachedir/FC_CACHEDIR (bug #18675)
Dan Nicholson [Mon, 19 Jan 2009 22:02:55 +0000 (17:02 -0500)]
Let make expand fc_cachedir/FC_CACHEDIR (bug #18675)

configure replaces a NONE prefix with the default prefix too late.
So we move fonts.conf creation to Makefile, such that prefix is correctly
expanded. Ugly, but works.

15 years agoCleanup all manpage.* files
Behdad Esfahbod [Fri, 16 Jan 2009 00:27:53 +0000 (19:27 -0500)]
Cleanup all manpage.* files

Recent doc2man generates files called manpage.log.  This was breaking build.

15 years ago[fc-match] Accept list of elements like fc-list (bug #13017)
Behdad Esfahbod [Fri, 16 Jan 2009 00:12:37 +0000 (19:12 -0500)]
[fc-match] Accept list of elements like fc-list (bug #13017)

Also make --verbose not ignore list of elements and only print those.
Update docs.

15 years agoOops, fix FcPatternFilter
Behdad Esfahbod [Fri, 16 Jan 2009 00:12:27 +0000 (19:12 -0500)]
Oops, fix FcPatternFilter

15 years agoAdd fc-scan too that runs FcFileScan/FcDirScan
Behdad Esfahbod [Thu, 15 Jan 2009 23:39:48 +0000 (18:39 -0500)]
Add fc-scan too that runs FcFileScan/FcDirScan

This is quite similar to fc-query, but calling FcFileScan/FcDirScan instead
of FcFreeTypeQuery.

15 years agoRevive FcConfigScan() (bug #17121)
Behdad Esfahbod [Thu, 15 Jan 2009 23:35:09 +0000 (18:35 -0500)]
Revive FcConfigScan() (bug #17121)

FcConfigScan() with parameters cache=NULL and force=FcTrue can be used
to scan font dirs without any caching side effect.

15 years agoOops. Fix usage output.
Behdad Esfahbod [Thu, 15 Jan 2009 22:34:26 +0000 (17:34 -0500)]
Oops.  Fix usage output.

15 years agoDon't use FcCharSetCopy in FcCharSetMerge
Behdad Esfahbod [Thu, 8 Jan 2009 08:04:34 +0000 (03:04 -0500)]
Don't use FcCharSetCopy in FcCharSetMerge

The Copy function is actually a ref, not real copy.

15 years agoMake FcCharSetMerge() public
Behdad Esfahbod [Thu, 8 Jan 2009 01:15:20 +0000 (20:15 -0500)]
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.

15 years ago[doc] Note that fontset returned by FcConfigGetFonts should not be modified
Behdad Esfahbod [Thu, 1 Jan 2009 21:29:01 +0000 (16:29 -0500)]
[doc] Note that fontset returned by FcConfigGetFonts should not be modified

15 years ago[fcmatch] Move FcFontSetMatch() functionality into FcFontSetMatchInternal()
Behdad Esfahbod [Thu, 1 Jan 2009 01:16:40 +0000 (20:16 -0500)]
[fcmatch] Move FcFontSetMatch() functionality into FcFontSetMatchInternal()

Except for the final FcFontRenderPrepare().  This way we have more
flexibility to do caching in FcFontMatch() while leaving FcFontSetMatch()
intact.

15 years ago[fcmatch] When matching, reserve score 0 for when elements don't exist
Behdad Esfahbod [Thu, 1 Jan 2009 00:44:32 +0000 (19:44 -0500)]
[fcmatch] When matching, reserve score 0 for when elements don't exist

Previously an index j was added to element score to prefer matches earlier
in the value list to the later ones.  This index started from 0, meaning
that the score zero could be generated for the first element.  By starting
j from one, scores for when the element exists in both pattern and font
can never be zero.  The score zero is reserved for when the element is
NOT available in both font and pattern.  We will use this property later.

This shouldn't change matching much.  The only difference I can think of
is that if a font family exists both as a bitmap font and a scalable
version, and when requesting it at the size of the bitmap version,
previously the font returned was nondeterministic.  Now the scalable
version will always be preferred.

15 years ago[fcmatch] Use larger multipliers to enforce order
Behdad Esfahbod [Thu, 1 Jan 2009 00:35:27 +0000 (19:35 -0500)]
[fcmatch] Use larger multipliers to enforce order

Previously the matcher multiplied comparison results by 100 and added
index value to it.  With long lists of families (lots of aliases),
reaching 100 is not that hard.  That could result in a non-match early
in the list to be preferred over a match late in the list.  Changing
the multiplier from 100 to 1000 should fix that.

To keep things relatively in order, the lang multiplier is changed
from 1000 to 10000.

15 years ago[fcmatch.c] Fix debug formatting
Behdad Esfahbod [Wed, 31 Dec 2008 23:10:31 +0000 (18:10 -0500)]
[fcmatch.c] Fix debug formatting

15 years agoFix comparison of family names to ignore leading space properly
Behdad Esfahbod [Wed, 31 Dec 2008 23:06:07 +0000 (18:06 -0500)]
Fix comparison of family names to ignore leading space properly

Previously fc-match "xxx,nazli" matched Nazli, but "xxx, nazli" didn't.
This was because of a bug in FcCompareFamily's short-circuit check
that forgot to ignore spaces.

15 years agoImplement FcPatternFormat and use it in cmdline tools (bug #17107)
Behdad Esfahbod [Tue, 30 Dec 2008 01:00:26 +0000 (20:00 -0500)]
Implement FcPatternFormat and use it in cmdline tools (bug #17107)

Still need to add more features, but the API is there, and used
by cmdline tools with -f or --format.

15 years ago[.gitignore] Update
Behdad Esfahbod [Tue, 30 Dec 2008 00:27:00 +0000 (19:27 -0500)]
[.gitignore] Update

15 years agoRemove special-casing of FC_FILE in FcPatternPrint()
Behdad Esfahbod [Mon, 29 Dec 2008 23:58:29 +0000 (18:58 -0500)]
Remove special-casing of FC_FILE in FcPatternPrint()

I can't understand why the special case is needed.  Indeed, removing it
does not make any difference in the "fc-match --verbose" output, and
that's the only time fc-match uses FcPatternPrint.

15 years agoExplicitly chmod() directories (bug #18934)
Behdad Esfahbod [Sun, 28 Dec 2008 21:54:44 +0000 (16:54 -0500)]
Explicitly chmod() directories (bug #18934)

Two changes:

  - after mkdir(), we immediately chmod(), such that we are not affected
    by stupid umask's.

  - if a directory we want to use is not writable but exists, we try a
    chmod on it.  This is to recover from stupid umask's having affected
    us with older versions.

15 years agoDon't use identifier named complex
Behdad Esfahbod [Sun, 28 Dec 2008 14:03:29 +0000 (09:03 -0500)]
Don't use identifier named complex

15 years ago[65-fonts-persian.conf] Set foundry in target=scan instead of target=font
Behdad Esfahbod [Sun, 28 Dec 2008 13:06:07 +0000 (08:06 -0500)]
[65-fonts-persian.conf] Set foundry in target=scan instead of target=font

15 years agoFix Sinhala coverage (bug #19288)
Harshula Jayasuriya [Sun, 28 Dec 2008 11:13:19 +0000 (06:13 -0500)]
Fix Sinhala coverage (bug #19288)

15 years agoUse human-readable file names in the docs (bug #16278)
Alexey Khoroshilov [Sun, 28 Dec 2008 10:15:45 +0000 (05:15 -0500)]
Use human-readable file names in the docs (bug #16278)

15 years agoImplement fc-list --quiet ala grep (bug #17141)
Behdad Esfahbod [Sun, 28 Dec 2008 09:58:14 +0000 (04:58 -0500)]
Implement fc-list --quiet ala grep (bug #17141)

Exits 1 if no fonts matched, 0 otherwise.

15 years agoFix compile with old FreeType that doesn't have FT_Select_Size() (bug #17498)
Behdad Esfahbod [Sun, 28 Dec 2008 09:48:54 +0000 (04:48 -0500)]
Fix compile with old FreeType that doesn't have FT_Select_Size() (bug #17498)

15 years agoUse __builtin_popcount() when available (bug #17592)
Behdad Esfahbod [Sun, 28 Dec 2008 09:26:26 +0000 (04:26 -0500)]
Use __builtin_popcount() when available (bug #17592)

15 years agoAdd config for new Indic fonts (bug #17856)
Rahul Bhalerao [Sun, 28 Dec 2008 09:10:53 +0000 (04:10 -0500)]
Add config for new Indic fonts (bug #17856)

15 years agoConsistently use FcStat() over stat() in all places
Behdad Esfahbod [Sun, 28 Dec 2008 09:06:01 +0000 (04:06 -0500)]
Consistently use FcStat() over stat() in all places

15 years ago[fccache] Consistently use FcStat() over stat() (bug #18195)
Behdad Esfahbod [Sun, 28 Dec 2008 09:00:09 +0000 (04:00 -0500)]
[fccache] Consistently use FcStat() over stat() (bug #18195)

15 years agoCleanup symlinks in "make uninstall" (bug #18885)
Behdad Esfahbod [Sun, 28 Dec 2008 08:40:21 +0000 (03:40 -0500)]
Cleanup symlinks in "make uninstall" (bug #18885)

15 years agoDon't use variables named 'bool' (bug #18851)
Harald Fernengel [Sun, 28 Dec 2008 08:23:58 +0000 (03:23 -0500)]
Don't use variables named 'bool' (bug #18851)

15 years ago[.gitignore] Update
Behdad Esfahbod [Sun, 28 Dec 2008 08:08:38 +0000 (03:08 -0500)]
[.gitignore] Update

15 years agoFix two more doc typos
Behdad Esfahbod [Tue, 2 Dec 2008 11:07:41 +0000 (06:07 -0500)]
Fix two more doc typos

15 years agoDon't call FcPatternGetCharSet in FcSortWalk unless we need to (#17361)
Behdad Esfahbod [Mon, 22 Sep 2008 22:51:11 +0000 (18:51 -0400)]
Don't call FcPatternGetCharSet in FcSortWalk unless we need to (#17361)

15 years agoDon't leak FcValues string loaded through fcxml.c (#17661)
Behdad Esfahbod [Mon, 22 Sep 2008 22:16:30 +0000 (18:16 -0400)]
Don't leak FcValues string loaded through fcxml.c (#17661)

Patch from Caolan McNamara.

15 years agoReduce number of allocations during FcSortWalk().
Chris Wilson [Wed, 23 Apr 2008 08:07:28 +0000 (09:07 +0100)]
Reduce number of allocations during FcSortWalk().

The current behaviour of FcSortWalk() is to create a new FcCharSet on
each iteration that is the union of the previous iteration with the next
FcCharSet in the font set. This causes the existing FcCharSet to be
reproduced in its entirety and then allocates fresh leaves for the new
FcCharSet. In essence the number of allocations is quadratic wrt the
number of fonts required.

By introducing a new method for merging a new FcCharSet with an existing
one we can change the behaviour to be effectively linear with the number
of fonts - allocating no more leaves than necessary to cover all the
fonts in the set.

For example, profiling 'gedit UTF-8-demo.txt'
    Allocator     nAllocs     nBytes
Before:
    FcCharSetFindLeafCreate 62886     2012352
    FcCharSetPutLeaf        9361     11441108
After:
    FcCharSetFindLeafCreate 1940     62080
    FcCharSetPutLeaf        281     190336

The savings are even more significant for applications like firefox-3.0b5
which need to switch between large number of fonts.
Before:
    FcCharSetFindLeafCreate 4461192     142758144
    FcCharSetPutLeaf     1124536     451574172
After:
    FcCharSetFindLeafCreate 80359     2571488
    FcCharSetPutLeaf     18940     9720522

Out of interest, the next most frequent allocations are
    FcPatternObjectAddWithBinding 526029    10520580
    tt_face_load_eblc     42103     2529892

15 years agoDocument how to free return value of FcNameUnparse()
Behdad Esfahbod [Fri, 22 Aug 2008 22:25:22 +0000 (18:25 -0400)]
Document how to free return value of FcNameUnparse()

15 years agoAdd FcConfigReference() (#17124)
Behdad Esfahbod [Fri, 22 Aug 2008 22:08:07 +0000 (18:08 -0400)]
Add FcConfigReference() (#17124)

15 years agoDocument when config can be NULL (#17105)
Behdad Esfahbod [Fri, 22 Aug 2008 21:49:02 +0000 (17:49 -0400)]
Document when config can be NULL (#17105)

Note that this also fixes a bug with FcFontList() where previously
it was NOT checking whether the config is up-to-date.  May want to
keep the old behavior and document that ScanInterval is essentially
unused internally (FcFontSetList uses it, but we can remove that
too).