summaryrefslogtreecommitdiffstats
path: root/src/silfont/data
diff options
context:
space:
mode:
authorDaniel Baumann <daniel@debian.org>2024-11-21 15:00:40 +0100
committerDaniel Baumann <daniel@debian.org>2024-11-21 15:00:40 +0100
commit012d9cb5faed22cb9b4151569d30cc08563b02d1 (patch)
treefd901b9c231aeb8afa713851f23369fa4a1af2b3 /src/silfont/data
parentInitial commit. (diff)
downloadpysilfont-012d9cb5faed22cb9b4151569d30cc08563b02d1.tar.xz
pysilfont-012d9cb5faed22cb9b4151569d30cc08563b02d1.zip
Adding upstream version 1.8.0.upstream/1.8.0upstream
Signed-off-by: Daniel Baumann <daniel@debian.org>
Diffstat (limited to 'src/silfont/data')
-rw-r--r--src/silfont/data/required_chars.csv308
-rw-r--r--src/silfont/data/required_chars.md32
2 files changed, 340 insertions, 0 deletions
diff --git a/src/silfont/data/required_chars.csv b/src/silfont/data/required_chars.csv
new file mode 100644
index 0000000..939c371
--- /dev/null
+++ b/src/silfont/data/required_chars.csv
@@ -0,0 +1,308 @@
+USV,ps_name,glyph_name,sil_set,rationale,additional_notes
+U+0020,space,space,basic,A,
+U+0021,exclam,exclam,basic,A,
+U+0022,quotedbl,quotedbl,basic,A,
+U+0023,numbersign,numbersign,basic,A,
+U+0024,dollar,dollar,basic,A,
+U+0025,percent,percent,basic,A,
+U+0026,ampersand,ampersand,basic,A,
+U+0027,quotesingle,quotesingle,basic,A,
+U+0028,parenleft,parenleft,basic,A,
+U+0029,parenright,parenright,basic,A,
+U+002A,asterisk,asterisk,basic,A,
+U+002B,plus,plus,basic,A,
+U+002C,comma,comma,basic,A,
+U+002D,hyphen,hyphen,basic,A,
+U+002E,period,period,basic,A,
+U+002F,slash,slash,basic,A,
+U+0030,zero,zero,basic,A,
+U+0031,one,one,basic,A,
+U+0032,two,two,basic,A,
+U+0033,three,three,basic,A,
+U+0034,four,four,basic,A,
+U+0035,five,five,basic,A,
+U+0036,six,six,basic,A,
+U+0037,seven,seven,basic,A,
+U+0038,eight,eight,basic,A,
+U+0039,nine,nine,basic,A,
+U+003A,colon,colon,basic,A,
+U+003B,semicolon,semicolon,basic,A,
+U+003C,less,less,basic,A,
+U+003D,equal,equal,basic,A,
+U+003E,greater,greater,basic,A,
+U+003F,question,question,basic,A,
+U+0040,at,at,basic,A,
+U+0041,A,A,basic,A,
+U+0042,B,B,basic,A,
+U+0043,C,C,basic,A,
+U+0044,D,D,basic,A,
+U+0045,E,E,basic,A,
+U+0046,F,F,basic,A,
+U+0047,G,G,basic,A,
+U+0048,H,H,basic,A,
+U+0049,I,I,basic,A,
+U+004A,J,J,basic,A,
+U+004B,K,K,basic,A,
+U+004C,L,L,basic,A,
+U+004D,M,M,basic,A,
+U+004E,N,N,basic,A,
+U+004F,O,O,basic,A,
+U+0050,P,P,basic,A,
+U+0051,Q,Q,basic,A,
+U+0052,R,R,basic,A,
+U+0053,S,S,basic,A,
+U+0054,T,T,basic,A,
+U+0055,U,U,basic,A,
+U+0056,V,V,basic,A,
+U+0057,W,W,basic,A,
+U+0058,X,X,basic,A,
+U+0059,Y,Y,basic,A,
+U+005A,Z,Z,basic,A,
+U+005B,bracketleft,bracketleft,basic,A,
+U+005C,backslash,backslash,basic,A,
+U+005D,bracketright,bracketright,basic,A,
+U+005E,asciicircum,asciicircum,basic,A,
+U+005F,underscore,underscore,basic,A,
+U+0060,grave,grave,basic,A,
+U+0061,a,a,basic,A,
+U+0062,b,b,basic,A,
+U+0063,c,c,basic,A,
+U+0064,d,d,basic,A,
+U+0065,e,e,basic,A,
+U+0066,f,f,basic,A,
+U+0067,g,g,basic,A,
+U+0068,h,h,basic,A,
+U+0069,i,i,basic,A,
+U+006A,j,j,basic,A,
+U+006B,k,k,basic,A,
+U+006C,l,l,basic,A,
+U+006D,m,m,basic,A,
+U+006E,n,n,basic,A,
+U+006F,o,o,basic,A,
+U+0070,p,p,basic,A,
+U+0071,q,q,basic,A,
+U+0072,r,r,basic,A,
+U+0073,s,s,basic,A,
+U+0074,t,t,basic,A,
+U+0075,u,u,basic,A,
+U+0076,v,v,basic,A,
+U+0077,w,w,basic,A,
+U+0078,x,x,basic,A,
+U+0079,y,y,basic,A,
+U+007A,z,z,basic,A,
+U+007B,braceleft,braceleft,basic,A,
+U+007C,bar,bar,basic,A,
+U+007D,braceright,braceright,basic,A,
+U+007E,asciitilde,asciitilde,basic,A,
+U+00A0,uni00A0,nbspace,basic,A,
+U+00A1,exclamdown,exclamdown,basic,A,
+U+00A2,cent,cent,basic,A,
+U+00A3,sterling,sterling,basic,A,
+U+00A4,currency,currency,basic,A,
+U+00A5,yen,yen,basic,A,
+U+00A6,brokenbar,brokenbar,basic,A,
+U+00A7,section,section,basic,A,
+U+00A8,dieresis,dieresis,basic,A,
+U+00A9,copyright,copyright,basic,A,
+U+00AA,ordfeminine,ordfeminine,basic,A,
+U+00AB,guillemotleft,guillemetleft,basic,A,
+U+00AC,logicalnot,logicalnot,basic,A,
+U+00AD,uni00AD,softhyphen,basic,A,
+U+00AE,registered,registered,basic,A,
+U+00AF,macron,macron,basic,A,
+U+00B0,degree,degree,basic,A,
+U+00B1,plusminus,plusminus,basic,A,
+U+00B2,uni00B2,twosuperior,basic,A,
+U+00B3,uni00B3,threesuperior,basic,A,
+U+00B4,acute,acute,basic,A,
+U+00B5,mu,micro,basic,A,
+U+00B6,paragraph,paragraph,basic,A,
+U+00B7,periodcentered,periodcentered,basic,A,
+U+00B8,cedilla,cedilla,basic,A,
+U+00B9,uni00B9,onesuperior,basic,A,
+U+00BA,ordmasculine,ordmasculine,basic,A,
+U+00BB,guillemotright,guillemetright,basic,A,
+U+00BC,onequarter,onequarter,basic,A,
+U+00BD,onehalf,onehalf,basic,A,
+U+00BE,threequarters,threequarters,basic,A,
+U+00BF,questiondown,questiondown,basic,A,
+U+00C0,Agrave,Agrave,basic,A,
+U+00C1,Aacute,Aacute,basic,A,
+U+00C2,Acircumflex,Acircumflex,basic,A,
+U+00C3,Atilde,Atilde,basic,A,
+U+00C4,Adieresis,Adieresis,basic,A,
+U+00C5,Aring,Aring,basic,A,
+U+00C6,AE,AE,basic,A,
+U+00C7,Ccedilla,Ccedilla,basic,A,
+U+00C8,Egrave,Egrave,basic,A,
+U+00C9,Eacute,Eacute,basic,A,
+U+00CA,Ecircumflex,Ecircumflex,basic,A,
+U+00CB,Edieresis,Edieresis,basic,A,
+U+00CC,Igrave,Igrave,basic,A,
+U+00CD,Iacute,Iacute,basic,A,
+U+00CE,Icircumflex,Icircumflex,basic,A,
+U+00CF,Idieresis,Idieresis,basic,A,
+U+00D0,Eth,Eth,basic,A,
+U+00D1,Ntilde,Ntilde,basic,A,
+U+00D2,Ograve,Ograve,basic,A,
+U+00D3,Oacute,Oacute,basic,A,
+U+00D4,Ocircumflex,Ocircumflex,basic,A,
+U+00D5,Otilde,Otilde,basic,A,
+U+00D6,Odieresis,Odieresis,basic,A,
+U+00D7,multiply,multiply,basic,A,
+U+00D8,Oslash,Oslash,basic,A,
+U+00D9,Ugrave,Ugrave,basic,A,
+U+00DA,Uacute,Uacute,basic,A,
+U+00DB,Ucircumflex,Ucircumflex,basic,A,
+U+00DC,Udieresis,Udieresis,basic,A,
+U+00DD,Yacute,Yacute,basic,A,
+U+00DE,Thorn,Thorn,basic,A,
+U+00DF,germandbls,germandbls,basic,A,
+U+00E0,agrave,agrave,basic,A,
+U+00E1,aacute,aacute,basic,A,
+U+00E2,acircumflex,acircumflex,basic,A,
+U+00E3,atilde,atilde,basic,A,
+U+00E4,adieresis,adieresis,basic,A,
+U+00E5,aring,aring,basic,A,
+U+00E6,ae,ae,basic,A,
+U+00E7,ccedilla,ccedilla,basic,A,
+U+00E8,egrave,egrave,basic,A,
+U+00E9,eacute,eacute,basic,A,
+U+00EA,ecircumflex,ecircumflex,basic,A,
+U+00EB,edieresis,edieresis,basic,A,
+U+00EC,igrave,igrave,basic,A,
+U+00ED,iacute,iacute,basic,A,
+U+00EE,icircumflex,icircumflex,basic,A,
+U+00EF,idieresis,idieresis,basic,A,
+U+00F0,eth,eth,basic,A,
+U+00F1,ntilde,ntilde,basic,A,
+U+00F2,ograve,ograve,basic,A,
+U+00F3,oacute,oacute,basic,A,
+U+00F4,ocircumflex,ocircumflex,basic,A,
+U+00F5,otilde,otilde,basic,A,
+U+00F6,odieresis,odieresis,basic,A,
+U+00F7,divide,divide,basic,A,
+U+00F8,oslash,oslash,basic,A,
+U+00F9,ugrave,ugrave,basic,A,
+U+00FA,uacute,uacute,basic,A,
+U+00FB,ucircumflex,ucircumflex,basic,A,
+U+00FC,udieresis,udieresis,basic,A,
+U+00FD,yacute,yacute,basic,A,
+U+00FE,thorn,thorn,basic,A,
+U+00FF,ydieresis,ydieresis,basic,A,
+U+0131,dotlessi,idotless,basic,B,
+U+0152,OE,OE,basic,A,
+U+0153,oe,oe,basic,A,
+U+0160,Scaron,Scaron,basic,A,
+U+0161,scaron,scaron,basic,A,
+U+0178,Ydieresis,Ydieresis,basic,A,
+U+017D,Zcaron,Zcaron,basic,A,
+U+017E,zcaron,zcaron,basic,A,
+U+0192,florin,florin,basic,A,
+U+02C6,circumflex,circumflex,basic,A,
+U+02C7,caron,caron,basic,B,
+U+02D8,breve,breve,basic,B,
+U+02D9,dotaccent,dotaccent,basic,B,
+U+02DA,ring,ring,basic,B,
+U+02DB,ogonek,ogonek,basic,B,
+U+02DC,tilde,tilde,basic,A,
+U+02DD,hungarumlaut,hungarumlaut,basic,B,
+U+034F,uni034F,graphemejoinercomb,basic,D,
+U+03C0,pi,pi,basic,B,
+U+2000,uni2000,enquad,basic,C,
+U+2001,uni2001,emquad,basic,C,
+U+2002,uni2002,enspace,basic,C,
+U+2003,uni2003,emspace,basic,C,
+U+2004,uni2004,threeperemspace,basic,C,
+U+2005,uni2005,fourperemspace,basic,C,
+U+2006,uni2006,sixperemspace,basic,C,
+U+2007,uni2007,figurespace,basic,C,
+U+2008,uni2008,punctuationspace,basic,C,
+U+2009,uni2009,thinspace,basic,C,
+U+200A,uni200A,hairspace,basic,C,
+U+200B,uni200B,zerowidthspace,basic,C,
+U+200C,uni200C,zerowidthnonjoiner,basic,D,
+U+200D,uni200D,zerowidthjoiner,basic,D,
+U+200E,uni200E,lefttorightmark,rtl,D,
+U+200F,uni200F,righttoleftmark,rtl,D,
+U+2010,uni2010,hyphentwo,basic,C,
+U+2011,uni2011,nonbreakinghyphen,basic,C,
+U+2012,figuredash,figuredash,basic,C,
+U+2013,endash,endash,basic,A,
+U+2014,emdash,emdash,basic,A,
+U+2015,uni2015,horizontalbar,basic,C,
+U+2018,quoteleft,quoteleft,basic,A,
+U+2019,quoteright,quoteright,basic,A,
+U+201A,quotesinglbase,quotesinglbase,basic,A,
+U+201C,quotedblleft,quotedblleft,basic,A,
+U+201D,quotedblright,quotedblright,basic,A,
+U+201E,quotedblbase,quotedblbase,basic,A,
+U+2020,dagger,dagger,basic,A,
+U+2021,daggerdbl,daggerdbl,basic,A,
+U+2022,bullet,bullet,basic,A,
+U+2026,ellipsis,ellipsis,basic,A,
+U+2027,uni2027,hyphenationpoint,basic,C,
+U+2028,uni2028,lineseparator,basic,C,
+U+2029,uni2029,paragraphseparator,basic,C,
+U+202A,uni202A,lefttorightembedding,rtl,D,
+U+202B,uni202B,righttoleftembedding,rtl,D,
+U+202C,uni202C,popdirectionalformatting,rtl,D,
+U+202D,uni202D,lefttorightoverride,rtl,D,
+U+202E,uni202E,righttoleftoverride,rtl,D,
+U+202F,uni202F,narrownbspace,basic,C,
+U+2030,perthousand,perthousand,basic,A,
+U+2039,guilsinglleft,guilsinglleft,basic,A,
+U+203A,guilsinglright,guilsinglright,basic,A,
+U+2044,fraction,fraction,basic,B,
+U+2060,uni2060,wordjoiner,basic,D,
+U+2066,uni2066,lefttorightisolate,rtl,D,
+U+2067,uni2067,righttoleftisolate,rtl,D,
+U+2068,uni2068,firststrongisolate,rtl,D,
+U+2069,uni2069,popdirectionalisolate,rtl,D,
+U+206C,uni206C,inhibitformshaping-ar,rtl,D,
+U+206D,uni206D,activateformshaping-ar,rtl,D,
+U+2074,uni2074,foursuperior,basic,E,
+U+20AC,Euro,euro,basic,A,
+U+2122,trademark,trademark,basic,A,
+U+2126,Omega,Ohm,basic,B,
+U+2202,partialdiff,partialdiff,basic,B,
+U+2206,Delta,Delta,basic,B,
+U+220F,product,product,basic,B,
+U+2211,summation,summation,basic,B,
+U+2212,minus,minus,basic,E,
+U+2215,uni2215,divisionslash,basic,E,
+U+2219,uni2219,bulletoperator,basic,C,Some applications use this instead of 00B7
+U+221A,radical,radical,basic,B,
+U+221E,infinity,infinity,basic,B,
+U+222B,integral,integral,basic,B,
+U+2248,approxequal,approxequal,basic,B,
+U+2260,notequal,notequal,basic,B,
+U+2264,lessequal,lessequal,basic,B,
+U+2265,greaterequal,greaterequal,basic,B,
+U+2423,uni2423,blank,basic,F,Advanced width should probably be the same as a space.
+U+25CA,lozenge,lozenge,basic,B,
+U+25CC,uni25CC,dottedCircle,basic,J,"If your OpenType font supports combining diacritics, be sure to include U+25CC DOTTED CIRCLE in your font, and optionally include this in your positioning rules for all your combining marks. This is because Uniscribe will insert U+25CC between ""illegal"" diacritic sequences (such as two U+064E characters in a row) to make the mistake more visible. (https://docs.microsoft.com/en-us/typography/script-development/arabic#handling-invalid-combining-marks)"
+U+F130,uniF130,FontBslnSideBrngMrkrLft,sil,K,
+U+F131,uniF131,FontBslnSideBrngMrkrRt,sil,K,
+U+FB01,uniFB01,fi,basic,B,
+U+FB02,uniFB02,fl,basic,B,
+U+FE00,uniFE00,VS1,basic,H,Add this to the cmap and point them to null glyphs
+U+FE01,uniFE01,VS2,basic,H,Add this to the cmap and point them to null glyphs
+U+FE02,uniFE02,VS3,basic,H,Add this to the cmap and point them to null glyphs
+U+FE03,uniFE03,VS4,basic,H,Add this to the cmap and point them to null glyphs
+U+FE04,uniFE04,VS5,basic,H,Add this to the cmap and point them to null glyphs
+U+FE05,uniFE05,VS6,basic,H,Add this to the cmap and point them to null glyphs
+U+FE06,uniFE06,VS7,basic,H,Add this to the cmap and point them to null glyphs
+U+FE07,uniFE07,VS8,basic,H,Add this to the cmap and point them to null glyphs
+U+FE08,uniFE08,VS9,basic,H,Add this to the cmap and point them to null glyphs
+U+FE09,uniFE09,VS10,basic,H,Add this to the cmap and point them to null glyphs
+U+FE0A,uniFE0A,VS11,basic,H,Add this to the cmap and point them to null glyphs
+U+FE0B,uniFE0B,VS12,basic,H,Add this to the cmap and point them to null glyphs
+U+FE0C,uniFE0C,VS13,basic,H,Add this to the cmap and point them to null glyphs
+U+FE0D,uniFE0D,VS14,basic,H,Add this to the cmap and point them to null glyphs
+U+FE0E,uniFE0E,VS15,basic,H,Add this to the cmap and point them to null glyphs
+U+FE0F,uniFE0F,VS16,basic,H,Add this to the cmap and point them to null glyphs
+U+FEFF,uniFEFF,zeroWidthNoBreakSpace,basic,I,Making this visible might be helpful
+U+FFFC,uniFFFC,objectReplacementCharacter,basic,G,It is easier for someone looking at the converted text to figure out what's going on if these have a visual representation.
+U+FFFD,uniFFFD,replacementCharacter,basic,G,It is easier for someone looking at the converted text to figure out what's going on if these have a visual representation.
+,,,,,
diff --git a/src/silfont/data/required_chars.md b/src/silfont/data/required_chars.md
new file mode 100644
index 0000000..444f2e6
--- /dev/null
+++ b/src/silfont/data/required_chars.md
@@ -0,0 +1,32 @@
+# required_chars - recommended characters for Non-Roman fonts
+
+For optimal compatibility with a variety of operating systems, all Non-Roman fonts should include
+a set of glyphs for basic Roman characters and punctuation. Ideally this should include all the
+following characters, although some depend on other considerations (see the notes). The basis
+for this list is a union of the Windows Codepage 1252 and MacRoman character sets plus additional
+useful characters.
+
+The csv includes the following headers:
+
+* USV - Unicode Scalar Value
+* ps_name - postscript name of glyph that will end up in production
+* glyph_name - glyphsApp name that will be used in UFO
+* sil_set - set to include in a font
+ * basic - should be included in any Non-Roman font
+ * rtl - should be included in any right-to-left script font
+ * sil - should be included in any SIL font
+* rationale - worded to complete the phrase: "This character is needed ..."
+ * A - in Codepage 1252
+ * B - in MacRoman
+ * C - for publishing
+ * D - for Non-Roman fonts and publishing
+ * E - by Google Fonts
+ * F - by TeX for visible space
+ * G - for encoding conversion utilities
+ * H - in case Variation Sequences are defined in future
+ * I - to detect byte order
+ * J - to render combining marks in isolation
+ * K - to view sidebearings for every glyph using these characters
+* additional_notes - how the character might be used
+
+The list was previously maintained here: https://scriptsource.org/entry/gg5wm9hhd3