4406428
  • What if GS Unicode wasn't just made of pixels?  What if it had a better, more appealing width/height ratio?  What if it utilized the new FS inventory?  And what if GS Unicode 2.0 was actually completed?...

    I've split this font series up by plane since font files have a technical limit of 65,535 glyphs.

    Things that are planned but not (fully) implemented yet are denoted with an asterisk.

    A changelog of this font and the entire GS Unicode project can be found here.

    This font (Plane 0) should also serve as the hub for most major updates (like those relating to the series as a whole).

    Links to planes:

    Plane 0: [THIS FONT]
    *Plane 1
    *Plane 2
    *Plane 3
    (No Unicode characters exist in Planes 4 through D as of U18.0)
    *Plane E
    *Plane F
    *Plane 10

    PUA assignments:

    These should largely conform to the (Under-)ConScript Unicode Registry, found here, and SPUCE, found here.

    *E000~E07F - Tengwar
    *E080~E0FF - Cirth
    *E100~E14F - Engsvanyali [Engsvanyáli]
    *E150~E1AF - Kinya
    *E1B0~E1CF - Ilianore
    *E1D0~E1FF - Syai
    *E200~E26F - Verdurian
    *E270~E28F - aUI
    *E290~E2BF - Amman-Iar
    *E2C0~E2CF - Streich
    *E2D0~E2FF - Xaini [Xaîni]
    *E300~E33F - Mizarian
    *E340~E35F - Zirinka [Zírí:nka]
    *E360~E37F - Sarkai
    *E380~E3AF - Thelwik
    *E3B0~E3FF - Olaetyan
    *E400~E42F - Niskloz [Nísklôz]
    *E430~E44F - Kazat Akkorou [Kazat ?Akkorou]
    *E450~E46F - Kazvarad
    *E470~E48F - Zarkhand [Zarkhánd]
    *E490~E4BF - Rozhxh [Røzhxh]
    *E4C0~E4EF - Serivelna
    *E4F0~E4FF - Kelwathi
    *E500~E51F - Saklor
    *E520~E54F - Rynnan
    *E550~E57F - Alzetjan
    *E580~E59F - Telarasso
    *E5A0~E5BF - Ssuraki [Ssûraki]
    *E5C0~E5DF - Gargoyle
    *E5E0~E5FF - Ophidian
    *E600~E62F - Ferengi
    *E630~E64F - Seussian Latin Extensions
    *E650~E67F - Sylabica
    *E680~E6CF - Ewellic
    *E6D0~E6EF - Amlin
    *E6F0~E73F - Unifon Extended-1
    *E740~E76F - Unifon
    *E770~E77F - Solresol
    *E780~E7FF - Visible Speech
    *E800~E82F - Monofon
    *E830~E88F - Dni [D'ni]
    *E890~E8DF - Aurebesh
    *E8E0~E8FF - Tonal
    *E900~E97F - Glaitha-A
    *E980~E9FF - Glaitha-B
    *EA00~EA9F - Lhenazi
    *EAA0~EAFF - Wanya
    *EB00~EB3F - Orokin
    *EB40~EB5F - Standard Galactic
    *EB60~EB9F - Braille Extended-1
    *EBA0~EBDF - Cistercian Numerals
    *EBE0~EBEF - Lapointe Hexadecimal Numerals
    *EBF0~EBFF - Martin Hexadecimal Numerals
    *EC00~EC2F - Cylenian
    *EC30~EC6F - Syrrin
    *EC70~ECEF - Graflect
    *ECF0~ECFF - Whitaker Hexadecimal Numerals
    *ED00~ED3F - Deini
    *ED40~ED7F - Niji
    *ED80~EDAF - Iranic
    *EDB0~EDDF - Tassarunese
    *EDE0~EDEF - Zese
    *EDF0~EDFF - Grawlixes
    *EE00~EE2F - Vulcan
    *EE30~EE5F - Gallifreyan
    *EE60~EE8F - Atlantean
    *EE90~EEBF - Valyrian
    *EEC0~EEEF - Dovazhul
    *EEF0~EF0F - Utopian
    *EF10~EF3F - Global Alphabet
    *EF40~EF6F - Ditema
    *EF70~EFFF - Quoc Am Tan Tu
    *F000~F0FF - Stylistic Variant Forms
    *F100~F1FF - Phonetic Extensions-1
    *F200~F2FF - Latin Extended-1
    *F300~F37F - Greek Extended-1
    *F380~F3FF - Cyrillic Extended-1
    *F400~F4BF - Symbols and Punctuation Extended-1
    *F4C0~F4EF - Ath
    *F4F0~F5BF - Number Forms Extended-1
    F5C0~F7FF - <UNASSIGNED>
    *F800~F81F - Corporate Symbols
    F820~F87F - <UNASSIGNED>
    *F880~F89F - Font Specifics
    *F8A0~F8CF - Aiha [Aiha (Kesh)]
    *F8D0~F8FF - Klingon

    Additional PUA assignments will be available in the Plane F and 10 fonts.

    Feel free to recommend PUA assignments!  However, I will probably prioritize natural scripts, then PUA requests from GSU2.0.  I will also probably be a bit less likely to add more precomposed characters, as Unicode stopped doing this after U3.0, and I don't want them taking up the entire PUA.  If I do add them, they'll be much more organized, and will likely exist entirely in Plane 10, besides MSDOS and similar encodings.

    Also, it's more than likely I won't know every script well enough that there won't be any mistakes.  If/when I make a mistake, please tell me and I'll do my best to fix it!

    Special thanks to djnippa who provided a beautiful collection of composite bricks here, which I've used for this font (stored at U+F880) and erictom333 who helped me refine some of the early sloping!

  • Info:
    Created on 15th February 2026. Last edited on Wed, 4th November.
  • License:
  • Categories:
  • Sets:
  • Tag:

44 Comments

Hello!  It's been a while, hasn't it?...

The creation of this font is my first real activity on this site after an almost 2.5-year hiatus, as at this point I believe my mental health and schedule finally permit me to return to fontmaking.  I do apologize that I sort of left without much warning, and I further regret to admit that I can't quite confirm I'll be as active as I once was.  I hope I can be, but I don't want to make any promises.

However, for now, I present GS Unicode 3.0!  This font series will utilize composite bricks provided by djnippa with this font, although I'll be sticking to 1:1, 1:2, 1:3, 2:3, and possibly 1:4 slopes to keep things more organized and less laggy, especially as I approach the 65535-character mark.  This will otherwise largely be a continuation of GS Unicode 2.0, meaning it will keep the same width:height ratio, general shapes, and overall "feel" (hopefully).  The decision to make an entirely new font, as opposed to continuing work on the former, was one I'd been wrestling over for the past few months as I contemplated my return.  Ultimately, two major factors influenced my decision.

Firstly, for reasons I won't go into, I wanted a fresh start to my life, and GS Unicode 2.0 was unfortunately a casualty of a past that I otherwise don't want to remember.

Secondly, and more significantly, I wasn't overall happy with the development path that GS Unicode 2.0 was taking.  As the character count mounted, I discovered that the list of things I wanted to change was increasing too, and it was becoming extremely difficult to change a glyph without it affecting others whose geometries were based on it.  I've also wanted to restructure the extremely bloated and largely disorganized Private Use Area for quite a while, which was a similarly daunting task.  Please know that this is not a criticism of the recommendations y'all have given me.  I thoroughly enjoyed all of your creative and imaginative suggestions, and it was actually one of the things I enjoyed most about fontmaking!  However, I don't think it's controversial to suggest that there doesn't need to be a 4096-character space filled with just precomposed Latin-diacritic combinations (there's a reason Unicode stopped doing this after U3.0).

If you made a PUA recommendation on GS Unicode 2.0, I'll get to it here in due time, once I'm more organized and this font is more stable.  You don't need to re-recommend anything here, as I still have access to the GS Unicode 2.0 page and most of the code charts that I've been sent.

Even though, like its predecessors, GS Unicode 3.0 is meant to be a pan-Unicode font, I've only published it with Basic Latin to see what y'all think of it first.  I'm not super happy with some of the curves and angles, especially on 6, 7, 9, &, #, `, and W, so nothing is set in stone yet.

In the meantime though, I'm happy to be back!

Comment by Greenstar967 16th february 2026

i think unicode 17 added characters around plane 9...

Comment by elliqvl 16th february 2026

Seems odd that Unicode would randomly add characters in Plane 9.  Are you sure it's not a fan extension or something?  I can't seem to find any info...

Comment by Greenstar967 16th february 2026

Welcome back, Greenstar967.

Anyways, good luck again.

Comment by ctcg_ 16th february 2026

By the way, I'm also working on a Pan-Unicode font project (unicode CTCG).

Comment by ctcg_ 16th february 2026

@Greenstar967 nvm was a mandela effect

Comment by elliqvl 16th february 2026

reminds me of fairfax HD! lol

Comment by Unevensett2K26 (dhdhdhdhdhdhhdhddh) 18th february 2026

I actually did notice that (especially the curves on bdpq)!  Totally wasn't intentional though lol

Comment by Greenstar967 18th february 2026

I think, I would not try to draw glyphs, which I am not familiar with, from some unknown scripts, until I would be 100% satisfied with glyphs I know (basic latin).

For me here the 7, Z, z, /and \ would be bare minimum to be solved properly, before moving further. Even if it is intended to be of fixed width, does not mean all glyphs have to fill the whole box, if none of common slopes fills it seamlessly.

Comment by Peter (Petruuccio) 18th february 2026

I agree.  I've so far been unable to find an adequate simple slope without changing the width:height ratio (the closest I've been able to find mathematically is 16:23, which incidentally is the ratio of an A4 sheet of paper).  I'm not really fond of either using such a complicated slope or changing the width:height ratio, as I still (for now) want to keep GSU 3 compatible with GSU2.  But I'll keep looking, as the / shape is a pretty critical slope.  The other concern is that I'd have to find a way to fix / without damaging any of the other slopes....

Comment by Greenstar967 19th february 2026

Use nudging to correct the slopes in NZz07/#\%. My fonts Monospac and NPS Round use nudging to achieve centered slopes; feel free to use them for inspiration.

Comment by erictom333 20th february 2026

NZz07/#\% have been fixed.  W<>^ have also been altered.  Q&~*` are next on the list, as well as perhaps touching up some of the nudged bricks, because I'm not sure I've done them as efficiently as I could've.  Thank you Peter (Petruuccio) and erictom333 for the advice though!  They definitely look a lot cleaner now.

Comment by Greenstar967 23rd february 2026

I wonder if smoothing out the curves using an external font editor is in the plans (if it gets too big to work with in FontStruct)?

Comment by Bryndan W. Meyerholt (BWM) 23rd february 2026

Are you going to add Latin-1 Supplement?

Comment by ctcg_ 23rd february 2026

@BWM I may end up having to go that route, though I'm not sure yet.  Is there one in particular you'd recommend?

@ctcg_ I will add Latin-1 Supplement, as I plan to make this a pan-Unicode font, but I'd like to make sure I'm happy with all of the basic Latin glyphs before I move onto anything more complicated.

Comment by Greenstar967 23rd february 2026

For free and open-source font editing software, I use FontForge. It runs on Windows, Mac, and also on Linux.

But if you have the money, then I recommend either Glyphs ($299) or if you don't have a Mac, FontCreator ($49 for Home, $149 for Standard, and $199 for Professional)

Comment by Bryndan W. Meyerholt (BWM) 23rd february 2026

add argam numerals and initial teaching alphabet glyphs

Comment by 18man 23rd february 2026

@18man The Initial Teaching Alphabet glyphs will be added to Latin Extended-G in September, when Unicode 18 releases.

Comment by Bryndan W. Meyerholt (BWM) 23rd february 2026

Why do you publis this with only Basic Latin?

Comment by ctcg_ 24th february 2026

@Greenstar967 Why do you publish this with only Basic Latin?

@erictom333 Why do you no longer update Pixel Sans?

@BWM Why do you no longer update Kemig?

Comment by ctcg_ 24th february 2026

Can you make arabic and hangul

Comment by Natalia Kenig (ipgreen2024) 5th april 2026

Regarding the PUA encodings, I'm going to revamp SPUCE, shifting around and removing some blocks. Many of the blocks reserved for other users will be removed unless those users oppose. I'm open for suggestions; anything in the (U)CSUR (save for Unifon, which will be encoded as part of the Latin extensions) will be kept.

Comment by erictom333 6th april 2026

The SPUCE wiki has been moved to a new wiki on Miraheze; the existing wiki is now deprecated and will no longer be maintained. Most content will be copied over, but some blocks and characters will be relocated or removed.

Comment by erictom333 21st april 2026

I fear the nudging technique is lost on me.  I'm not sure if it's something I'm missing, but it seems to be difficult/impossible to stack nudged bricks.  For example, Ø, which would normally be constructed with O and /, does not seem to want to cooperate.  I may find a way to fix this, but in the meantime I'm writing off the imperfections in the /-like slopes as a style quirk (and at least they're symmetrical).

Comment by Greenstar967 Tue, 29th september

You can't stack blocks that have been nudged by different ways. You'll have to nudge the blocks into themselves (this is easy with 2x2 filters but as I haven't properly fontstructed with 1x1 filters in literal ages I don't know how easy it is there), or make composites that correspond to what you want (this isn't as hard as it seems even though with the new composite range it's kinda hard to keep track of how it's going to look like in the end).

Comment by opipik Tue, 29th september

It's entirely possible to make these strokes without nudging, you just need to make some new composites.

Comment by erictom333 Wed, 30th september

I will see what I can do then… may require more math than I'm usually capable of though lol

Comment by Greenstar967 Thu, 1st october

In an attempt to replicate the nudged bricks for the main diagonal slope I have come across two solutions (fig. 1).  The smoother approach (and the one I'd prefer) would be more like the composite in fig. 3 (which would be created by fig. 1B), although I am unsure how to actually do this considering that I can't make a composite brick out of already-composite bricks, nor can I make a composite out of more than 16 bricks.  fig. 1A, which uses bricks that are able to be made composite and creates fig. 2, is the current nonpreferred solution.  Though the jaggedness may not be visible for usual typing sizes, I'd still want to perfect this slope as much as I can given how essential it is.

So my question is: are the 2x3 slopes in the 4x4 composite space, as shown in figs. 1B and 3, possible to create, considering the constraint of a maximum of 16 bricks per composite, and if so, how?  If they aren't, would it be better to try to combine nudged bricks in cases like Ø or to try to redo the aspect ratio and/or try using 2x2 filters?

I apologize for the continued questioning, as I feel like this is something basic I should know by now, but I do want to get this right.

Also, @erictom333, is there a way to contact you on Miraheze?  I'm regrettably mostly unfamiliar with creating and maintaining wikis.

Comment by Greenstar967 Fri, 2nd october

I've already solved that problem, just make a 2x3 composite using the Quarter Triangle and Chipped Pixel bricks like I have done in the rightmost example in my previous comment; only 6 bricks needed.

To contribute to the new Miraheze wiki, just make a Miraheze account.

Comment by erictom333 Sat, 3rd october

I believe I have fixed it, at least for the most part, so thank you so much!  More minor edits coming soon.

Comment by Greenstar967 Sat, 10th october

Can you add General Punctuation block and Latin Extended-A block?

Comment by ctcg_ Sat, 10th october

Yes I will eventually

Comment by Greenstar967 Mon, 12th october

I sent a message on your talk page on the wiki.

Comment by erictom333 Wed, 14th october

I made my own fonts like GreekStar.

Comment by varsmat Sat, 24th october

In the pursuit of making my glyphs smoother, I've discovered that I need so many different slopes (especially composites) that it's becoming a bit difficult to manage.  If I scale this up, the number of composites I'd need would decrease greatly.  I had initially wanted to keep the size of my glyphs about the same as GSU 2.0 to keep them compatible, but I'd imagine that if they're the same ratio (e.g. 9:13 and 36:52) it wouldn't make any difference.  Am I correct in this assumption?  The only other sticking point would be that it might have an impact on performance, and I'm not sure whether this is the case either.

Comment by Greenstar967 Fri, 30th october

Is it me or does the diagonal line of the Z in that sample appear to be too thick?

Comment by Bryndan W. Meyerholt (BWM) Fri, 30th october

The above picture is just an example and won't be the exact change if I do go through with this option.

Comment by Greenstar967 Fri, 30th october

I don't really know if Engsvanyali is useful, because it turns into different characters when you type a letter from that language repetitively, and it actually goes backwards like Arabic.

Comment by kyt1336 Fri, 30th october

If it helps, I have a font with all the slopes you might need (1:1, 3:4, 2:3, 1:2, 1:3, 1:4, and 1:6, all with (near-)unit width lines and corners in all orientations).

Comment by erictom333 Sat, 31st october

@BWM It probably is too thick - I meant that to be more of an example of how I'd scale up the font, but I'd of course refine it so that the lines are equal (or as close as mathematically possible).

@kyt1336 It may not be, and it certainly isn't high up on my priority list (I'd like to do most natural/Unicode scripts first, if I can, before moving onto the UCSUR.  I'll figure out how to deal with it then.

@erictom333 Thank you (although I don't seem to be able to clone it)!  I do have all of the slopes anyway, thanks to you and djnippa, but my concern was more that there would almost be too many slopes and I don't know if it would have more of an impact on performance than is necessary.  Of course, FontStruct isn't necessarily designed to have pan-Unicode fonts without at least some performance compromises, but I wonder if it would be better to have more slopes and fewer overall bricks or more bricks but fewer slopes.

Comment by Greenstar967 Sun, 1st november

It should be cloneable now.

Comment by erictom333 Sun, 1st november

Thank you once again!  I should have all of the slopes I need that are possible though; the issue is that some aren't.  For example, the grave and acute accents are about 1/8 of a block too thick (not really noticeable, but mathematically off), even though the angle is correct.  I can technically make them the correct width, either by nudging or by slopes with slightly different width, but at the cost of symmetry.

Scaling up the font, such that, for example, each current block becomes a 4x4 set, would fix this problem and also let me have a more limited set of bricks while keeping the sloping/smooth aspect, so I'm leaning toward this as the solution.  Am I correct in assuming that if the width:height ratio stays the same, so does the size of the downloaded font?  If so, I may attempt this in a private font and move it over to here once I have it figured out, as it shouldn't really affect the look of things too much besides cleaning up a few odd points.

Comment by Greenstar967 Mon, 2nd november

For example, the leftmost is the current grave at a 1:2 slope, which is about 1/8 of a block too thick, and the second to the left is the next thinnest legal symmetrical 1:2 slope that I've found, which is about 1/8 of a block too thin.  The third grave has the correct thickness, but is asymmetrical.  This is fine for something like the asterisk, which has a vertical bar in the center to hide the necessary offset rotation, but fails for something like the dz ligature.  The fourth example is the optimal symmetrical version of the third grave, but contains slopes which are unable to be formed into a composite.

Technically, scaling up each brick in this font even to 2x2 would fix this issue, which I had initially wanted to do, but may come with its own set of issues even though it may solve several others.

Comment by Greenstar967 Mon, 2nd november

The second option, where the 1:2 slopes are 2/√5 ≈ 0.8944 bricks wide, is close enough to 1 to be satisfactory, and is practically simpler (it is what I use in Slopes).

Comment by erictom333 Tue, 3rd november

Also of Interest

GlyphsApp

Get the world’s leading font editor for OSX.

Fontself

Make your fonts on iPad

More from the Gallery

GS Unicodeby Greenstar967
Meet Circleby Greenstar967
UnStructed: Syriac Supplementby Greenstar967
GS Unicode 2.0 (Plane 0)by Greenstar967
Fimbriaeby chr.s
Spongeiaby Isaiah Montoya (aerolynx)
Neo-Tokyoby Frodo7
That Seventies Face r0.8by riccard0

From the Blog

News

Color Competition Results

News

Color Competition