]> git.wh0rd.org - fontconfig.git/log
fontconfig.git
14 years agoBump version to 2.7.0 2.7.0
Behdad Esfahbod [Wed, 24 Jun 2009 19:04:11 +0000 (15:04 -0400)] 
Bump version to 2.7.0

14 years agoRemove keithp's GPG key id
Behdad Esfahbod [Wed, 24 Jun 2009 19:03:32 +0000 (15:03 -0400)] 
Remove keithp's GPG key id

14 years agoFix distcheck
Behdad Esfahbod [Wed, 24 Jun 2009 18:43:32 +0000 (14:43 -0400)] 
Fix distcheck

14 years agoBug 22154 -- fontconfig.pc doesn't include libxml2 link flags
Behdad Esfahbod [Thu, 11 Jun 2009 11:08:10 +0000 (07:08 -0400)] 
Bug 22154 -- fontconfig.pc doesn't include libxml2 link flags

14 years ago[xml] Intern more strings
Behdad Esfahbod [Sat, 6 Jun 2009 02:59:06 +0000 (22:59 -0400)] 
[xml] Intern more strings

14 years ago[xml] Allocate FcExpr's in a pool in FcConfig
Behdad Esfahbod [Sat, 6 Jun 2009 02:32:31 +0000 (22:32 -0400)] 
[xml] Allocate FcExpr's in a pool in FcConfig

Reduces number of malloc's for FcExprs from hundreds into single digits.

14 years ago[xml] Mark more symbols static
Behdad Esfahbod [Sat, 6 Jun 2009 01:37:01 +0000 (21:37 -0400)] 
[xml] Mark more symbols static

14 years ago[xml] Centralize FcExpr allocation
Behdad Esfahbod [Fri, 5 Jun 2009 22:40:46 +0000 (18:40 -0400)] 
[xml] Centralize FcExpr allocation

To be improved, using a central pool.

14 years agoRemove unused prototypes and function
Behdad Esfahbod [Fri, 5 Jun 2009 22:27:47 +0000 (18:27 -0400)] 
Remove unused prototypes and function

14 years ago[charset] Grow internal FcCharset arrays exponentially
Behdad Esfahbod [Fri, 5 Jun 2009 22:16:38 +0000 (18:16 -0400)] 
[charset] Grow internal FcCharset arrays exponentially

14 years agoAlways set *changed in FcCharsetMerge
Behdad Esfahbod [Fri, 5 Jun 2009 21:15:53 +0000 (17:15 -0400)] 
Always set *changed in FcCharsetMerge

14 years agoAdd XXX note about Unicode Plane 16
Behdad Esfahbod [Fri, 5 Jun 2009 20:57:35 +0000 (16:57 -0400)] 
Add XXX note about Unicode Plane 16

14 years agoSimplify FcValueSave() semantics
Behdad Esfahbod [Fri, 5 Jun 2009 20:49:07 +0000 (16:49 -0400)] 
Simplify FcValueSave() semantics

14 years agoUse/prefer WWS family/style (name table id 21/22)
Behdad Esfahbod [Tue, 2 Jun 2009 01:14:56 +0000 (21:14 -0400)] 
Use/prefer WWS family/style (name table id 21/22)

14 years agoMark matchers array const (#21935)
Behdad Esfahbod [Tue, 26 May 2009 00:26:56 +0000 (20:26 -0400)] 
Mark matchers array const (#21935)

14 years agoReorganize Panjabi/Punjabi and Lahnda orthographies (bug #19890)
Roozbeh Pournader [Thu, 7 May 2009 21:31:11 +0000 (14:31 -0700)] 
Reorganize Panjabi/Punjabi and Lahnda orthographies (bug #19890)

The correct ISO 639 code for Pakistani/Western Panjabi seems to be 'lah',
not 'pa'. We are keeping 'pa_pk.orth' for compatiblity with glibc.

Signed-off-by: Behdad Esfahbod <behdad@behdad.org>
14 years agoDetect TrueType Collections by checking the font data header
Behdad Esfahbod [Thu, 9 Apr 2009 17:31:18 +0000 (13:31 -0400)] 
Detect TrueType Collections by checking the font data header

Instead of checking for "face->num_faces >1". (GNOME bug #577952)

14 years agoCorrectly handle mmap() failure (#21062)
Serge van den Boom [Sun, 5 Apr 2009 23:00:18 +0000 (19:00 -0400)] 
Correctly handle mmap() failure (#21062)

14 years ago[fc-cache] Remove obsolete sentence from man page
Behdad Esfahbod [Thu, 26 Mar 2009 03:40:40 +0000 (23:40 -0400)] 
[fc-cache] Remove obsolete sentence from man page

14 years ago[fc-lang] Make LangSet representation in the cache files stable
Behdad Esfahbod [Wed, 18 Mar 2009 23:28:52 +0000 (19:28 -0400)] 
[fc-lang] Make LangSet representation in the cache files stable

Fontconfig assigns an index number to each language it knows about.
The index is used to index a bit in FcLangSet language map.  The bit
map is stored in the cache.

Previously fc-lang simply sorted the list of languages and assigned
them an index starting from zero.  Net effect is that whenever new
orth files were added, all the FcLangSet info in the cache files would
become invalid.  This was causing weird bugs like this one:

  https://bugzilla.redhat.com/show_bug.cgi?id=490888

With this commit we fix the index assigned to each language.  The index
will be based on the order the orth files are passed to fc-lang.  As a
result all orth files are explicitly listed in Makefile.am now, and
new additions should be made to the end of the list.  The list is made
to reflect the sorted list of orthographies from 2.6.0 released followed
by new additions since.

This fixes the stability problem.  Needless to say, recreating caches
is necessary before any new orthography is recognized in existing fonts,
but at least the existing caches are still valid and don't cause bugs
like the above.

14 years ago[fcstr] Remove unused variable
Behdad Esfahbod [Wed, 18 Mar 2009 22:50:14 +0000 (18:50 -0400)] 
[fcstr] Remove unused variable

14 years ago[fc-lang] Fix bug in country map generation
Behdad Esfahbod [Wed, 18 Mar 2009 22:43:09 +0000 (18:43 -0400)] 
[fc-lang] Fix bug in country map generation

Previously the county map code was using an uninitialized variable and
hence was totally failing to populate same-lang-different-territory map.

14 years agoRevert "[conf] Disable hinting when emboldening (#19904)" (#20599)
Behdad Esfahbod [Tue, 17 Mar 2009 16:52:48 +0000 (12:52 -0400)] 
Revert "[conf] Disable hinting when emboldening (#19904)" (#20599)

This reverts commit 10609af4aa4030a15c19573198462fa002d2ef13.
Apparently disabling hinting can cause worse rendering with certain
fonts.  This is better handled on a per font basis.

14 years ago[Makefile.am] Don't clean ChangeLog in distclean
Behdad Esfahbod [Mon, 16 Mar 2009 21:59:50 +0000 (17:59 -0400)] 
[Makefile.am] Don't clean ChangeLog in distclean

15 years agoDocument FcPatternFormat() format
Behdad Esfahbod [Fri, 13 Mar 2009 21:26:21 +0000 (17:26 -0400)] 
Document FcPatternFormat() format

15 years ago[fcformat] Fix default-value handling
Behdad Esfahbod [Fri, 13 Mar 2009 16:11:13 +0000 (12:11 -0400)] 
[fcformat] Fix default-value handling

15 years agoReplace 'KEITH PACKARD' with 'THE AUTHOR(S)' in license text in all files
Behdad Esfahbod [Thu, 12 Mar 2009 20:00:08 +0000 (16:00 -0400)] 
Replace 'KEITH PACKARD' with 'THE AUTHOR(S)' in license text in all files

15 years agoCall git tools using "git cmd" instead of "git-cmd" syntax
Behdad Esfahbod [Thu, 12 Mar 2009 17:48:07 +0000 (13:48 -0400)] 
Call git tools using "git cmd" instead of "git-cmd" syntax

Recent git doesn't install the git-* commands in path.

15 years ago[fcxml.c] Embed a static 64-byte attr buffer in FcPStack
Behdad Esfahbod [Thu, 12 Mar 2009 16:31:57 +0000 (12:31 -0400)] 
[fcxml.c] Embed a static 64-byte attr buffer in FcPStack

Reduces number of mallocs called from FcConfigSaveAttr in my small test
from 160 down to 6.

15 years ago[fcxml] Embed 64 static FcVStack objects in FcConfigParse
Behdad Esfahbod [Thu, 12 Mar 2009 16:22:37 +0000 (12:22 -0400)] 
[fcxml] Embed 64 static FcVStack objects in FcConfigParse

This reduces the number of mallocs called from FcVStackPush from
over 800 down to zero.

15 years ago[fcxml] Embed 8 static FcPStack objects in FcConfigParse
Behdad Esfahbod [Thu, 12 Mar 2009 15:58:04 +0000 (11:58 -0400)] 
[fcxml] Embed 8 static FcPStack objects in FcConfigParse

This reduces the number of mallocs called from FcPStackPush from
over 900 down to zero.

15 years ago[fcxml] Don't allocate attr array if there are no attributes
Behdad Esfahbod [Thu, 12 Mar 2009 13:27:20 +0000 (09:27 -0400)] 
[fcxml] Don't allocate attr array if there are no attributes

Reduces number of mallocs from FcConfigSaveAttr() in my small test
from over 900 down to 157.

15 years ago[fcstr,fcxml] Don't copy FcStrBuf contents when we would free it soon
Behdad Esfahbod [Wed, 11 Mar 2009 18:07:15 +0000 (14:07 -0400)] 
[fcstr,fcxml] Don't copy FcStrBuf contents when we would free it soon

We can simply NUL-terminate the buffer and use it.  Reduces number of
mallocs called from FcStrBufDone in my small test from 631 down to 66.

15 years ago[fcstr.c] Embed a static 64-byte buffer in FcStrBuf
Behdad Esfahbod [Wed, 11 Mar 2009 17:56:09 +0000 (13:56 -0400)] 
[fcstr.c] Embed a static 64-byte buffer in FcStrBuf

Reduces number of mallocs called from FcStrBufChar in my small test
from 900 down to 6.

15 years agoFix Makefile's to not create target file in case of failure
Behdad Esfahbod [Tue, 10 Mar 2009 06:15:37 +0000 (02:15 -0400)] 
Fix Makefile's to not create target file in case of failure

15 years agoFix Fanti (fat) orth file (#20390)
Behdad Esfahbod [Tue, 10 Mar 2009 06:14:15 +0000 (02:14 -0400)] 
Fix Fanti (fat) orth file (#20390)

15 years agoAdd Sundanese (su) orthography (bug #20440)
Roozbeh Pournader [Tue, 3 Mar 2009 06:48:37 +0000 (22:48 -0800)] 
Add Sundanese (su) orthography (bug #20440)

15 years agoAdd Kanuri (kr) orthography (bug #20438)
Roozbeh Pournader [Tue, 3 Mar 2009 04:53:26 +0000 (20:53 -0800)] 
Add Kanuri (kr) orthography (bug #20438)

15 years agoAdd Nauru (na) orthography (bug #20418)
Roozbeh Pournader [Mon, 2 Mar 2009 10:21:17 +0000 (02:21 -0800)] 
Add Nauru (na) orthography (bug #20418)

15 years agoAdd Javanese (jv) orthography (bug #20403)
Roozbeh Pournader [Sun, 1 Mar 2009 11:53:11 +0000 (03:53 -0800)] 
Add Javanese (jv) orthography (bug #20403)

15 years agoAdd Sichuan Yi (ii) orthography (bug #20402)
Roozbeh Pournader [Sun, 1 Mar 2009 11:50:46 +0000 (03:50 -0800)] 
Add Sichuan Yi (ii) orthography (bug #20402)

15 years agoAdd Shona (sn) orthography (bug #20394)
Roozbeh Pournader [Sun, 1 Mar 2009 11:46:48 +0000 (03:46 -0800)] 
Add Shona (sn) orthography (bug #20394)

15 years agoAdd orthographies for Oshiwambo languages (bug #20401)
Roozbeh Pournader [Sun, 1 Mar 2009 11:30:58 +0000 (03:30 -0800)] 
Add orthographies for Oshiwambo languages (bug #20401)

The languages are Kuanyama/Kwanyama (kj), Ndonga (ng), and Kwambi (kwm).

15 years agoAdd Zhuang (za) orthography (bug #20399)
Roozbeh Pournader [Sun, 1 Mar 2009 10:33:54 +0000 (02:33 -0800)] 
Add Zhuang (za) orthography (bug #20399)

15 years agoAdd Rundi (rn) orthography (bug #20398)
Roozbeh Pournader [Sun, 1 Mar 2009 10:12:38 +0000 (02:12 -0800)] 
Add Rundi (rn) orthography (bug #20398)

15 years agoAdd Navajo (nv) orthography (bug #20395)
Roozbeh Pournader [Sun, 1 Mar 2009 03:43:02 +0000 (19:43 -0800)] 
Add Navajo (nv) orthography (bug #20395)

15 years agoAdd Tahitian (ty) orthography (bug #20391)
Roozbeh Pournader [Sun, 1 Mar 2009 02:25:20 +0000 (18:25 -0800)] 
Add Tahitian (ty) orthography (bug #20391)

15 years agoAdd Sango (sg) orthography (bug #20393)
Roozbeh Pournader [Sun, 1 Mar 2009 02:01:11 +0000 (18:01 -0800)] 
Add Sango (sg) orthography (bug #20393)

15 years agoAdded Quechua (qu) orthography (bug #20392)
Roozbeh Pournader [Sun, 1 Mar 2009 01:38:21 +0000 (17:38 -0800)] 
Added Quechua (qu) orthography (bug #20392)

15 years agoAdd Akan (ak) and Fanti (fat) orthographies (bug #20390)
Roozbeh Pournader [Sun, 1 Mar 2009 01:05:11 +0000 (17:05 -0800)] 
Add Akan (ak) and Fanti (fat) orthographies (bug #20390)

15 years agoAdd Herero (hz) orthograhy (bug #20387)
Roozbeh Pournader [Sun, 1 Mar 2009 00:29:07 +0000 (16:29 -0800)] 
Add Herero (hz) orthograhy (bug #20387)

15 years agoAdd Ewe (ee) orthography (bug #20386)
Roozbeh Pournader [Sun, 1 Mar 2009 00:03:51 +0000 (16:03 -0800)] 
Add Ewe (ee) orthography (bug #20386)

15 years agoUpdate Serbo-Croatian (sh) orthography (bug #20368)
Roozbeh Pournader [Fri, 27 Feb 2009 22:41:07 +0000 (14:41 -0800)] 
Update Serbo-Croatian (sh) orthography (bug #20368)

15 years agoExtend Crimean Tatar (crh) orthography (bug #19891)
Roozbeh Pournader [Fri, 27 Feb 2009 07:27:20 +0000 (23:27 -0800)] 
Extend Crimean Tatar (crh) orthography (bug #19891)

15 years agoAdd Divehi (dv) orthography (bug #20207)
Roozbeh Pournader [Thu, 19 Feb 2009 05:21:01 +0000 (21:21 -0800)] 
Add Divehi (dv) orthography (bug #20207)

15 years agoRemove digits and symbols from some Indic orthographies (bug #20204)
Roozbeh Pournader [Thu, 19 Feb 2009 01:09:51 +0000 (17:09 -0800)] 
Remove digits and symbols from some Indic orthographies (bug #20204)

These orthographies were changed: Gujarati (gu), Kannada (kn), Lao (lo),
Malayalam (ml), Oriya (or), Telugu (te), and Thai (th).

15 years agoTighten Central Khmer (km) orthography (bug #20202)
Roozbeh Pournader [Thu, 19 Feb 2009 00:44:10 +0000 (16:44 -0800)] 
Tighten Central Khmer (km) orthography (bug #20202)

15 years agoChange Kashmiri (ks) orthography to Arabic script (bug #20200)
Roozbeh Pournader [Thu, 19 Feb 2009 00:03:30 +0000 (16:03 -0800)] 
Change Kashmiri (ks) orthography to Arabic script (bug #20200)

15 years agoRename Fulah orthography from 'ful' to 'ff' (bug #20177)
Roozbeh Pournader [Wed, 18 Feb 2009 07:33:07 +0000 (23:33 -0800)] 
Rename Fulah orthography from 'ful' to 'ff' (bug #20177)

15 years agoRename Bambara orthography from 'bam' to 'bm' (bug #20175)
Roozbeh Pournader [Wed, 18 Feb 2009 06:45:17 +0000 (22:45 -0800)] 
Rename Bambara orthography from 'bam' to 'bm' (bug #20175)

15 years agoRename Avaric orthography from 'ava' to 'av' (bug #20174)
Roozbeh Pournader [Wed, 18 Feb 2009 06:40:50 +0000 (22:40 -0800)] 
Rename Avaric orthography from 'ava' to 'av' (bug #20174)

15 years agoUpdate Azerbaijani in Latin (az_az) to present usage (bug #20173)
Roozbeh Pournader [Wed, 18 Feb 2009 06:09:53 +0000 (22:09 -0800)] 
Update Azerbaijani in Latin (az_az) to present usage (bug #20173)

Removed Cyrillic that is no longer in use. Removed "A WITH DIAERESIS"
too, since it was only temporarily used in 1991-1992.

15 years agoSwitch Uzbek (uz) orthography to Latin (bug #19851)
Roozbeh Pournader [Wed, 18 Feb 2009 05:37:45 +0000 (21:37 -0800)] 
Switch Uzbek (uz) orthography to Latin (bug #19851)

15 years agoAdd Crimean Tatar (crh) orthography (bug #19891)
Roozbeh Pournader [Wed, 18 Feb 2009 04:02:39 +0000 (20:02 -0800)] 
Add Crimean Tatar (crh) orthography (bug #19891)

15 years agoAdd Papiamento (pap_aw, pap_an) orthographies (bug #19891)
Roozbeh Pournader [Wed, 18 Feb 2009 03:41:30 +0000 (19:41 -0800)] 
Add Papiamento (pap_aw, pap_an) orthographies (bug #19891)

15 years agoAdd Blin (byn) orthography (bug #19891)
Roozbeh Pournader [Wed, 18 Feb 2009 01:30:15 +0000 (17:30 -0800)] 
Add Blin (byn) orthography (bug #19891)

15 years agoDivide Panjabi (pa) to that of Pakistan and India (bug #19890)
Roozbeh Pournader [Wed, 18 Feb 2009 01:03:54 +0000 (17:03 -0800)] 
Divide Panjabi (pa) to that of Pakistan and India (bug #19890)

Previous Panjabi orthography was in the Gurmukhi script only, while in
Pakistan, the Arabic script (called Shahmukhi) is used for Panjani.

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.