adobe-fonts / source-han-code-jp

Source Han Code JP | 源ノ角ゴシック Code
https://ccjktype.fonts.adobe.com/2015/06/source-han-code-jp.html
SIL Open Font License 1.1
1.65k stars 54 forks source link

No glyph with unicode in font error #6

Closed zchee closed 9 years ago

zchee commented 9 years ago

I'm try integration Powerline font on Source Han Code.

but, return No glyph with unicode U+***** in font error.

However, try integration Powerline font on Source Code Pro, That I can properly build. The reason I think that happened when in create Source Han Code.

Currently, Powerline has become very important for developers. Do you have any solution?

Thanks.

$ fontforge -script powerline-fontpatcher SourceHanCodeJP.otf
Copyright (c) 2000-2014 by George Williams. See AUTHORS for Contributors.
 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
 with many parts BSD <http://fontforge.org/license.html>. Please read LICENSE.
 Based on sources from 19:31 JST  1-Jul-2015-D.
 Based on source from git with hash: b3901fa241936c83f9dd9753d51e8c4ba5b2b1c7
The following table(s) in the font have been ignored by FontForge
  Ignoring 'VORG' vertical origin table
Warning: Mac string is a subset of the Windows string in the 'name' table
 for the Designer string in the English (US) language.
Warning: Mac string is a subset of the Windows string in the 'name' table
 for the Descriptor string in the English (US) language.
No glyph with unicode U+04e0d in font
No glyph with unicode U+04e32 in font
No glyph with unicode U+04e39 in font
No glyph with unicode U+04e82 in font
No glyph with unicode U+04e86 in font
No glyph with unicode U+04eae in font
No glyph with unicode U+04ec0 in font
No glyph with unicode U+04ee4 in font
No glyph with unicode U+04f86 in font
No glyph with unicode U+04f8b in font
No glyph with unicode U+04fbf in font
No glyph with unicode U+0502b in font
No glyph with unicode U+050da in font
No glyph with unicode U+05169 in font
No glyph with unicode U+0516d in font
No glyph with unicode U+051b7 in font
No glyph with unicode U+051c9 in font
No glyph with unicode U+051cc in font
No glyph with unicode U+051dc in font
No glyph with unicode U+05207 in font
No glyph with unicode U+05217 in font
No glyph with unicode U+05229 in font
No glyph with unicode U+0523a in font
No glyph with unicode U+05289 in font
No glyph with unicode U+0529b in font
No glyph with unicode U+052a3 in font
No glyph with unicode U+052d2 in font
No glyph with unicode U+052de in font
No glyph with unicode U+052f5 in font
No glyph with unicode U+05317 in font
No glyph with unicode U+0533f in font
No glyph with unicode U+05375 in font
No glyph with unicode U+053c3 in font
No glyph with unicode U+053e5 in font
No glyph with unicode U+0540f in font
No glyph with unicode U+0541d in font
No glyph with unicode U+05442 in font
No glyph with unicode U+054bd in font
No glyph with unicode U+05587 in font
No glyph with unicode U+056f9 in font
No glyph with unicode U+0585e in font
No glyph with unicode U+058d8 in font
No glyph with unicode U+058df in font
No glyph with unicode U+05948 in font
No glyph with unicode U+05973 in font
No glyph with unicode U+05b85 in font
No glyph with unicode U+05bee in font
No glyph with unicode U+05c3f in font
No glyph with unicode U+05c62 in font
No glyph with unicode U+05c65 in font
No glyph with unicode U+05d19 in font
No glyph with unicode U+05d50 in font
No glyph with unicode U+05dba in font
No glyph with unicode U+05e74 in font
No glyph with unicode U+05ea6 in font
No glyph with unicode U+05ed3 in font
No glyph with unicode U+05eec in font
No glyph with unicode U+05f04 in font
No glyph with unicode U+05f8b in font
No glyph with unicode U+05fa9 in font
No glyph with unicode U+05ff5 in font
No glyph with unicode U+06012 in font
No glyph with unicode U+0601c in font
No glyph with unicode U+060e1 in font
No glyph with unicode U+06144 in font
No glyph with unicode U+06190 in font
No glyph with unicode U+061f6 in font
No glyph with unicode U+06200 in font
No glyph with unicode U+0622e in font
No glyph with unicode U+062c9 in font
No glyph with unicode U+062cf in font
No glyph with unicode U+062d3 in font
No glyph with unicode U+062fe in font
No glyph with unicode U+0637b in font
No glyph with unicode U+063a0 in font
No glyph with unicode U+0649a in font
No glyph with unicode U+064c4 in font
No glyph with unicode U+06578 in font
No glyph with unicode U+06599 in font
No glyph with unicode U+06613 in font
No glyph with unicode U+06688 in font
No glyph with unicode U+066b4 in font
No glyph with unicode U+066c6 in font
No glyph with unicode U+066f4 in font
No glyph with unicode U+0674e in font
No glyph with unicode U+0677b in font
No glyph with unicode U+06797 in font
No glyph with unicode U+067f3 in font
No glyph with unicode U+06817 in font
No glyph with unicode U+06881 in font
No glyph with unicode U+068a8 in font
No glyph with unicode U+06a02 in font
No glyph with unicode U+06a13 in font
No glyph with unicode U+06ad3 in font
No glyph with unicode U+06adb in font
No glyph with unicode U+06af8 in font
No glyph with unicode U+06b77 in font
No glyph with unicode U+06bae in font
No glyph with unicode U+06c88 in font
No glyph with unicode U+06ccc in font
No glyph with unicode U+06ce5 in font
No glyph with unicode U+06d1b in font
No glyph with unicode U+06d1e in font
No glyph with unicode U+06d41 in font
No glyph with unicode U+06d6a in font
No glyph with unicode U+06dcb in font
No glyph with unicode U+06dda in font
No glyph with unicode U+06dea in font
No glyph with unicode U+06e9c in font
No glyph with unicode U+06ed1 in font
No glyph with unicode U+06f0f in font
No glyph with unicode U+06f23 in font
No glyph with unicode U+06feb in font
No glyph with unicode U+06ffe in font
No glyph with unicode U+07099 in font
No glyph with unicode U+070c8 in font
No glyph with unicode U+070d9 in font
No glyph with unicode U+07149 in font
No glyph with unicode U+071ce in font
No glyph with unicode U+071d0 in font
No glyph with unicode U+07210 in font
No glyph with unicode U+0721b in font
No glyph with unicode U+07262 in font
No glyph with unicode U+072c0 in font
No glyph with unicode U+072fc in font
No glyph with unicode U+07375 in font
No glyph with unicode U+07387 in font
No glyph with unicode U+073b2 in font
No glyph with unicode U+073de in font
No glyph with unicode U+07406 in font
No glyph with unicode U+07409 in font
No glyph with unicode U+07469 in font
No glyph with unicode U+07489 in font
No glyph with unicode U+07498 in font
No glyph with unicode U+07559 in font
No glyph with unicode U+07565 in font
No glyph with unicode U+07570 in font
No glyph with unicode U+075e2 in font
No glyph with unicode U+07642 in font
No glyph with unicode U+07669 in font
No glyph with unicode U+076e7 in font
No glyph with unicode U+07701 in font
No glyph with unicode U+0786b in font
No glyph with unicode U+0788c in font
No glyph with unicode U+078ca in font
No glyph with unicode U+078fb in font
No glyph with unicode U+0792a in font
No glyph with unicode U+0797f in font
No glyph with unicode U+079ae in font
No glyph with unicode U+079ca in font
No glyph with unicode U+07a1c in font
No glyph with unicode U+07acb in font
No glyph with unicode U+07b20 in font
No glyph with unicode U+07c60 in font
No glyph with unicode U+07c92 in font
No glyph with unicode U+07ce7 in font
No glyph with unicode U+07d10 in font
No glyph with unicode U+07d22 in font
No glyph with unicode U+07d2f in font
No glyph with unicode U+07da0 in font
No glyph with unicode U+07dbe in font
No glyph with unicode U+07e37 in font
No glyph with unicode U+07f79 in font
No glyph with unicode U+07f85 in font
No glyph with unicode U+07f9a in font
No glyph with unicode U+08001 in font
No glyph with unicode U+08046 in font
No glyph with unicode U+0806f in font
No glyph with unicode U+0807e in font
No glyph with unicode U+0808b in font
No glyph with unicode U+081d8 in font
No glyph with unicode U+081e8 in font
No glyph with unicode U+0826f in font
No glyph with unicode U+082e5 in font
No glyph with unicode U+08336 in font
No glyph with unicode U+083c9 in font
No glyph with unicode U+083f1 in font
No glyph with unicode U+0843d in font
No glyph with unicode U+08449 in font
No glyph with unicode U+084fc in font
No glyph with unicode U+085cd in font
No glyph with unicode U+085fa in font
No glyph with unicode U+08606 in font
No glyph with unicode U+0863f in font
No glyph with unicode U+087ba in font
No glyph with unicode U+0881f in font
No glyph with unicode U+0884c in font
No glyph with unicode U+088c2 in font
No glyph with unicode U+088cf in font
No glyph with unicode U+088e1 in font
No glyph with unicode U+088f8 in font
No glyph with unicode U+08964 in font
No glyph with unicode U+0898b in font
No glyph with unicode U+08aaa in font
No glyph with unicode U+08ad2 in font
No glyph with unicode U+08ad6 in font
No glyph with unicode U+08afe in font
No glyph with unicode U+08b58 in font
No glyph with unicode U+08c48 in font
No glyph with unicode U+08cc2 in font
No glyph with unicode U+08cc8 in font
No glyph with unicode U+08def in font
No glyph with unicode U+08eca in font
No glyph with unicode U+08f26 in font
No glyph with unicode U+08f2a in font
No glyph with unicode U+08f3b in font
No glyph with unicode U+08f62 in font
No glyph with unicode U+08fb0 in font
No glyph with unicode U+0908f in font
No glyph with unicode U+090ce in font
No glyph with unicode U+090de in font
No glyph with unicode U+0916a in font
No glyph with unicode U+091b4 in font
No glyph with unicode U+091cc in font
No glyph with unicode U+091cf in font
No glyph with unicode U+091d1 in font
No glyph with unicode U+09234 in font
No glyph with unicode U+09304 in font
No glyph with unicode U+0934a in font
No glyph with unicode U+095ad in font
No glyph with unicode U+0962e in font
No glyph with unicode U+0964b in font
No glyph with unicode U+09675 in font
No glyph with unicode U+09678 in font
No glyph with unicode U+096b7 in font
No glyph with unicode U+096b8 in font
No glyph with unicode U+096e2 in font
No glyph with unicode U+096f6 in font
No glyph with unicode U+096f7 in font
No glyph with unicode U+09732 in font
No glyph with unicode U+09748 in font
No glyph with unicode U+09818 in font
No glyph with unicode U+099f1 in font
No glyph with unicode U+09a6a in font
No glyph with unicode U+09b6f in font
No glyph with unicode U+09c57 in font
No glyph with unicode U+09dfa in font
No glyph with unicode U+09e1e in font
No glyph with unicode U+09e7f in font
No glyph with unicode U+09ece in font
No glyph with unicode U+09f8d in font
No glyph with unicode U+20984 in font
No glyph with unicode U+233cc in font
No glyph with unicode U+29fce in font
No glyph with unicode U+051a4 in font
No glyph with unicode U+05be7 in font
No glyph with unicode U+05c60 in font
No glyph with unicode U+06753 in font
No glyph with unicode U+06eba in font
No glyph with unicode U+07c3e in font
Traceback (most recent call last):
  File "./scripts/powerline-fontpatcher", line 115, in <module>
    fp.patch()
  File "./scripts/powerline-fontpatcher", line 43, in patch
    target_font.familyname += ' for Powerline'
TypeError: unsupported operand type(s) for +=: 'NoneType' and 'str'
kenlunde commented 9 years ago

All seven Source Han Code JP fonts include glyphs for these 250 code points, as evidenced by the AFDKO spot dump below:

[00004E0D]=<\9846> 
[00004E32]=<\9902> 
[00004E39]=<\9912> 
[00004E82]=<\10020> 
[00004E86]=<\10026> 
[00004EAE]=<\10092> 
[00004EC0]=<\10122> 
[00004EE4]=<\10176> 
[00004F86]=<\10421> 
[00004F8B]=<\10429> 
[00004FBF]=<\10513> 
[0000502B]=<\10700> 
[000050DA]=<\11020> 
[00005169]=<\11277> 
[0000516D]=<\11288> 
[000051B7]=<\11398> 
[000051C9]=<\11434> 
[000051CC]=<\11442> 
[000051DC]=<\11473> 
[00005207]=<\11542> 
[00005217]=<\11560> 
[00005229]=<\11587> 
[0000523A]=<\11613> 
[00005289]=<\11743> 
[0000529B]=<\11778> 
[000052A3]=<\11787> 
[000052D2]=<\11863> 
[000052DE]=<\11881> 
[000052F5]=<\11920> 
[00005317]=<\11980> 
[0000533F]=<\12065> 
[00005375]=<\12147> 
[000053C3]=<\12269> 
[000053E5]=<\12323> 
[0000540F]=<\12384> 
[0000541D]=<\12403> 
[00005442]=<\12473> 
[000054BD]=<\12656> 
[00005587]=<\12968> 
[000056F9]=<\13628> 
[0000585E]=<\14192> 
[000058D8]=<\14401> 
[000058DF]=<\14416> 
[00005948]=<\14589> 
[00005973]=<\14669> 
[00005B85]=<\15891> 
[00005BEE]=<\16110> 
[00005C3F]=<\16246> 
[00005C62]=<\16304> 
[00005C65]=<\16310> 
[00005D19]=<\16655> 
[00005D50]=<\16768> 
[00005DBA]=<\16984> 
[00005E74]=<\17283> 
[00005EA6]=<\17373> 
[00005ED3]=<\17463> 
[00005EEC]=<\17517> 
[00005F04]=<\17562> 
[00005F8B]=<\17810> 
[00005FA9]=<\17857> 
[00005FF5]=<\17984> 
[00006012]=<\18027> 
[0000601C]=<\18041> 
[000060E1]=<\18372> 
[00006144]=<\18542> 
[00006190]=<\18695> 
[000061F6]=<\18880> 
[00006200]=<\18902> 
[0000622E]=<\18970> 
[000062C9]=<\19223> 
[000062CF]=<\19233> 
[000062D3]=<\19242> 
[000062FE]=<\19306> 
[0000637B]=<\19501> 
[000063A0]=<\19566> 
[0000649A]=<\20003> 
[000064C4]=<\20078> 
[00006578]=<\20406> 
[00006599]=<\20465> 
[00006613]=<\20690> 
[00006688]=<\20870> 
[000066B4]=<\20944> 
[000066C6]=<\20975> 
[000066F4]=<\21055> 
[0000674E]=<\21209> 
[0000677B]=<\21275> 
[00006797]=<\21324> 
[000067F3]=<\21467> 
[00006817]=<\21520> 
[00006881]=<\21695> 
[000068A8]=<\21764> 
[00006A02]=<\22397> 
[00006A13]=<\22426> 
[00006AD3]=<\22772> 
[00006ADB]=<\22784> 
[00006AF8]=<\22837> 
[00006B77]=<\23067> 
[00006BAE]=<\23196> 
[00006C88]=<\23566> 
[00006CCC]=<\23665> 
[00006CE5]=<\23710> 
[00006D1B]=<\23786> 
[00006D1E]=<\23791> 
[00006D41]=<\23847> 
[00006D6A]=<\23903> 
[00006DCB]=<\24053> 
[00006DDA]=<\24080> 
[00006DEA]=<\24109> 
[00006E9C]=<\24406> 
[00006ED1]=<\24509> 
[00006F0F]=<\24617> 
[00006F23]=<\24655> 
[00006FEB]=<\25003> 
[00006FFE]=<\25038> 
[00007099]=<\25344> 
[000070C8]=<\25431> 
[000070D9]=<\25465> 
[00007149]=<\25678> 
[000071CE]=<\25957> 
[000071D0]=<\25961> 
[00007210]=<\26095> 
[0000721B]=<\26118> 
[00007262]=<\26261> 
[000072C0]=<\26396> 
[000072FC]=<\26484> 
[00007375]=<\26690> 
[00007387]=<\26726> 
[000073B2]=<\26787> 
[000073DE]=<\26844> 
[00007406]=<\26906> 
[00007409]=<\26911> 
[00007469]=<\27078> 
[00007489]=<\27136> 
[00007498]=<\27159> 
[00007559]=<\27525> 
[00007565]=<\27547> 
[00007570]=<\27567> 
[000075E2]=<\27767> 
[00007642]=<\27965> 
[00007669]=<\28042> 
[000076E7]=<\28245> 
[00007701]=<\28288> 
[0000786B]=<\28858> 
[0000788C]=<\28908> 
[000078CA]=<\29011> 
[000078FB]=<\29102> 
[0000792A]=<\29177> 
[0000797F]=<\29334> 
[000079AE]=<\29425> 
[000079CA]=<\29478> 
[00007A1C]=<\29615> 
[00007ACB]=<\29991> 
[00007B20]=<\30155> 
[00007C60]=<\30831> 
[00007C92]=<\30939> 
[00007CE7]=<\31118> 
[00007D10]=<\31201> 
[00007D22]=<\31242> 
[00007D2F]=<\31264> 
[00007DA0]=<\31489> 
[00007DBE]=<\31553> 
[00007E37]=<\31806> 
[00007F79]=<\32311> 
[00007F85]=<\32334> 
[00007F9A]=<\32372> 
[00008001]=<\32584> 
[00008046]=<\32723> 
[0000806F]=<\32800> 
[0000807E]=<\32836> 
[0000808B]=<\32859> 
[000081D8]=<\33569> 
[000081E8]=<\33605> 
[0000826F]=<\33914> 
[000082E5]=<\34159> 
[00008336]=<\34336> 
[000083C9]=<\34634> 
[000083F1]=<\34724> 
[0000843D]=<\34885> 
[00008449]=<\34909> 
[000084FC]=<\35315> 
[000085CD]=<\35803> 
[000085FA]=<\35905> 
[00008606]=<\35937> 
[0000863F]=<\36067> 
[000087BA]=<\36703> 
[0000881F]=<\36883> 
[0000884C]=<\36964> 
[000088C2]=<\37163> 
[000088CF]=<\37189> 
[000088E1]=<\37228> 
[000088F8]=<\37270> 
[00008964]=<\37493> 
[0000898B]=<\37573> 
[00008AAA]=<\38108> 
[00008AD2]=<\38190> 
[00008AD6]=<\38199> 
[00008AFE]=<\38281> 
[00008B58]=<\38478> 
[00008C48]=<\38815> 
[00008CC2]=<\39024> 
[00008CC8]=<\39036> 
[00008DEF]=<\39455> 
[00008ECA]=<\39846> 
[00008F26]=<\39981> 
[00008F2A]=<\39989> 
[00008F3B]=<\40022> 
[00008F62]=<\40095> 
[00008FB0]=<\40197> 
[0000908F]=<\40771> 
[000090CE]=<\40868> 
[000090DE]=<\40890> 
[0000916A]=<\41141> 
[000091B4]=<\41292> 
[000091CC]=<\41341> 
[000091CF]=<\41344> 
[000091D1]=<\41347> 
[00009234]=<\41535> 
[00009304]=<\41941> 
[0000934A]=<\42072> 
[000095AD]=<\43024> 
[0000962E]=<\43201> 
[0000964B]=<\43241> 
[00009675]=<\43310> 
[00009678]=<\43317> 
[000096B7]=<\43437> 
[000096B8]=<\43439> 
[000096E2]=<\43524> 
[000096F6]=<\43561> 
[000096F7]=<\43564> 
[00009732]=<\43690> 
[00009748]=<\43736> 
[00009818]=<\44100> 
[000099F1]=<\44928> 
[00009A6A]=<\45157> 
[00009B6F]=<\45651> 
[00009C57]=<\46027> 
[00009DFA]=<\46656> 
[00009E1E]=<\46719> 
[00009E7F]=<\46823> 
[00009ECE]=<\47018> 
[00009F8D]=<\47434> 
[00020984]=<\59577> 
[000233CC]=<\60176> 
[00029FCE]=<\61476> 
[000051A4]=<\11367> 
[00005BE7]=<\16093> 
[00005C60]=<\16300> 
[00006753]=<\21218> 
[00006EBA]=<\24460> 
[00007C3E]=<\30751> 

The issue is elsewhere, either in Powerline or fontforge.

kenlunde commented 9 years ago

When I inspect powerline-symbols.sfd, the problem becomes apparent: CID-keyed fonts are not supported. It expects name-keyed fonts as input. Source Han Code JP is CID-keyed. There are no plans to make a name-keyed version.

Another issue is related to the glyph set. The glyph set on which Source Han Code JP is based includes 65,535 glyphs, which is at the architectural limit. Source Han Code JP includes a subset (17,690 glyphs) of these glyphs, but preserves the original CIDs. The highest CID in Source Han Code JP is 65505. Among the 65,535 glyphs in the original glyph set, 29 (CIDs 65506 through 65534) are unused, but reserved. In other words, it's not a good idea to patch Source Han Code JP if you want to maintain compatibility. If you want to fork the project, that's okay, but you will lose compatibility.

zchee commented 9 years ago

@kenlunde Thanks perfect answer!!

I'll give up on integration :)

HinTak commented 2 years ago

I am seeing piles and piles of "No glyph with unicode U+0XXXX in font" while re-visiting the latest comments in https://github.com/fontforge/fontforge/issues/1534 . I am afraid it is a fontforge issue - the glyphs are duplicated in the CJK Compatibility Ideographs range, and fontforge cannot cope with "one glyph <-> multiple unicode points". glyphs in the "CJK Compatibility Ideographs" range are necessarily of that nature.