Coder Social home page Coder Social logo

belluzj / fantasque-sans Goto Github PK

View Code? Open in Web Editor NEW
6.9K 127.0 155.0 9.77 MB

A font family with a great monospaced variant for programmers.

Home Page: http://openfontlibrary.org/en/font/fantasque-sans-mono

License: SIL Open Font License 1.1

Makefile 2.55% Shell 26.68% Python 69.23% Dockerfile 1.54%
font monospace-font

fantasque-sans's Introduction

Fantasque Sans Mono

A programming font, designed with functionality in mind, and with some wibbly-wobbly handwriting-like fuzziness that makes it unassumingly cool. Download or see installation instructions.

Previously known as Cosmic Sans Neue Mono. It appeared that similar names were already in use for other fonts, and that people tended to extend their instinctive hatred of Comic Sans to this very font of mine (which of course can only be loved). Why the previous name? Here is my original explanation:

The name comes from my realization that at some point it looked like the mutant child of Comic Sans and Helvetica Neue. Hopefully it is not the case any more.

Inspirational sources include Inconsolata and Monaco. I have also been using Consolas a lot in my programming life, so it may have some points in common.

Weights, variants and glyph coverage

The font includes a bold version, with the same metrics as the regular one. Both versions include the same ranges of characters : latin letters, some accented glyphs (quite a lot), some greek letters, some arrows.

Please note that I have not tested all of the glyphs I have drawn (some letters have those two layers of crazy accents that I have never witnessed before), so it might look bad in some cases. Please report these problems: see next section.

It also features a good italic version, which I designed in a fashion similar to Consolas' italic version, with new glyph designs, not just an added slant.

Stylistic set(s)

ss01: nondescript k

No distractive lovely loop. Get the pre-activated version here or see the issue #67 for techniques to activate the stylistic set.

Author and license

Created by Jany Belluz <jany.belluz AT hotmail.fr>

Licensed under the SIL Open Font License (see LICENSE.txt).

Please send me an e-mail or report an issue on Github if you stumble upon bad design or rendering problems (with screen shot if possible), or if you need more characters, or if you want to compliment me (I love compliments).

Installation

You can download the latest version and install it by hand. In the NoLoopK variant, the looped lowercase k is replaced with a straight version. The LargeLineHeight variant is especially useful for users of accented capitals. For more info, see the CHANGELOG.

Automatic installation on macOS with homebrew:

brew tap homebrew/cask-fonts #You only need to do this once for cask-fonts
brew install --cask font-fantasque-sans-mono

Instructions for other platforms might follow.

Building installable font files

The build process requires:

  • FontForge with python scripting support,
  • ttfautohint
  • sfnt2woff (from the woff-tools package on Ubuntu)
  • woff2_compress from the Google WOFF2 tools or woff2 package on Ubuntu

Run make. You should see green stuff and some "OK" messages.

If you are using Ubuntu, please note that the FontForge version in the default Ubuntu repositories is much outdated at the time of this writing, and that is known to have caused subtle problems. You are advised to install FontForge from this PPA (using sudo add-apt-repository ppa:fontforge/fontforge prior to the installation). Alternatively, you can always download the latest prebuilt release of these fonts.

make install will install the TTF fonts into your local .fonts/ directory and update the font cache. It comes in handy while modifying the font.

Alternatively, if you'd like to build Fantasque without installing required dependencies, a Dockerfile is provided. Run the following command, and the fonts will be built to the ./Variants directory.

docker build -t fantasque .
docker run -v "$(pwd)/Variants:/fantasque/Variants" fantasque

Webfonts

Each variant has a Webfonts/ folder which contains various font formats for use on the web, along with the matching CSS font declarations. To use them, you must combine in the same folder:

  • a custom .css file that you can assemble from the *-decl.css fragments (you can only pick the styles that you need, e.g. normal and bold)
  • the matching .svg, .woff, .woff2 files from Webfonts/
  • the matching .ttf files from the TTF/ folder
  • the matching .otf files from the OTF/ folder.

Versions

Check out the changelog.

fantasque-sans's People

Contributors

artem-ogre avatar belluzj avatar brian6932 avatar cedmax avatar claymager avatar d125q avatar doekman avatar eksperimental avatar igalic avatar rpdelaney avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fantasque-sans's Issues

More Unicode line drawing characters, please?

Hi,

Would it be possible to get the basic Unicode line drawing characters implemented? (i.e. the BOX DRAWINGS LIGHT bars, corners and tees?

Fantasque is awesome as a console font, but the thing it misses for me in particular is U+2500 and friends to allow tmux to draw horizontal bars when splitting terminals.

Thanks!

Some mathematical characters

Examples:

  • vulgar fractions: mostly ⅛⅜⅝⅞, but ⅐⅑⅒⅓⅔⅖⅗⅘⅙⅚ would be nice too
  • “not equal” sign U+2260 ≠

Strict 1/2em variant

I'm wondering whether Fantasque Sans can provide a variant which every character is exactly 1/2em wide? I am Chinese and i want use this font with Han characters (supported by other fonts; exactly 1em wide).

'd' is too narrow

'd' should be the same width as 'p' and 'b' and 'q'. Instead, it seems a bit narrow.

For reference, here's a screenshot (Win8 64-bit, cleartype on, settings 1,2,1,2,3)

i don't know where to "post this"

well, first, sorry for putting "this" as an issue, because it isn't.

i am dyslexic. not that i can't read a book or something, but i must use something to help me out sometimes (a rule, text mouse selection, and so on). i would like to congratulate everyone that made this font. i don't know if it was your intention or whatsoever, but my life as a programmer / sysadmin became a lot easier because of you. my many, many thanks.

best regards, richard.

Cannot show ␣(U+2423) symbol

the open box symobol ␣ sometimes used to denote space.

Not sure if the symbol is already included or not, I viewed the ␣ symbol in NexusFont, it shows correctly, but it shows as a little rectangle in MinTTY/PuTTY.

Line height is wrong in Mac OS X

This is how 14pt looks in Xcode, and also in Terminal. Note the caret location/size line height – it's too high, like there is too much padding on top.
image

For comparison, this is Inconsolata 14pt – line height is correct, no extra padding on top:
image

And this one is Menlo 14pt, note how big it is compared with Fantasque and Inconsolata.
image

Strangely, some apps don't show this extra padding on top, like BBEdit (but they may be using Carbon font rendering) and Java-based apps (AppCode).

Is it possible to rename the font?

Hi,

First of all thanks for creating such a wonderful font. I'm trying to package this font for Debian and filed my intent for the same. Here I got some concern raised by a fellow developer on the name of font.

Is it possible for upstream to consider a name change for the font?.

Thank you,

Bold replaces Medium on Windows

On my Windows 7 PC, I installed the medium weight and when I tried the installing the bold weight it asked me to replace the first weight that I installed. I'm guessing that it's because the OpenType font name is the same and that's how Windows decides if it needs to replace an existing font. Let me know if you need some more details.

Thanks for a great monospaced font!

Thoughts on Recent Changes

I absolutely love this font, and I use it in every IDE I work with. I just recently discovered that it was no longer called Cosmic Sans Neue, and thus that there were new versions available.

I was initially excited to see what had changed, but I think I like some aspects of the older versions better. The new italic variant is too oblique: it's hard to read, and the corners of some italic glyphs overlap with the characters next to them. (This is particularly egregious with brackets and parentheses.) The old italics were already pretty easily distinguishable.

The new quotation marks are also a bit confusing. In a vacuum, I think they'd be pretty cool. But unfortunately, a lot of text editors and IM clients have taken to substituting standard ASCII quotes with specialized left and right versions. Which, of course, don't compile if they find their way into source code. The old ones might be bland, but they're much less scary. :)

I hope this is the right place to submit this sort of feedback; I couldn't find any other outlet for it. And either way, I have the old version of the font, so I'm good. Just wanted to do what little I could to contribute to a great project.

New font-family defined for each variant

validate-generate.sh currently creates the following css rules:

@font-face {
    font-family: 'FantasqueSansMono-RegItalic';
    src: url('FantasqueSansMono-RegItalic.eot'); /* IE 9 Compatibility Mode */
    src: url('FantasqueSansMono-RegItalic.eot?#iefix') format('embedded-opentype'), /* IE < 9 */
         url('FantasqueSansMono-RegItalic.woff') format('woff'), /* Firefox >= 3.6, any other modern browser */
         url('FantasqueSansMono-RegItalic.ttf') format('truetype'), /* Safari, Android, iOS */
         url('FantasqueSansMono-RegItalic.svg#FantasqueSansMono-RegItalic') format('svg'); /* Chrome < 4, Legacy iOS */
}

@font-face {
    font-family: 'FantasqueSansMono-Regular';
    src: url('FantasqueSansMono-Regular.eot'); /* IE 9 Compatibility Mode */
    src: url('FantasqueSansMono-Regular.eot?#iefix') format('embedded-opentype'), /* IE < 9 */
         url('FantasqueSansMono-Regular.woff') format('woff'), /* Firefox >= 3.6, any other modern browser */
         url('FantasqueSansMono-Regular.ttf') format('truetype'), /* Safari, Android, iOS */
         url('FantasqueSansMono-Regular.svg#FantasqueSansMono-Regular') format('svg'); /* Chrome < 4, Legacy iOS */
}

// ...etc.

This means that when assigning fonts, style and weight are determined by the font-family name. A cleaner pattern is the following:

@font-face {
    font-family: 'FantasqueSansMono';
    src: url('FantasqueSansMono-RegItalic.eot'); /* IE 9 Compatibility Mode */
    src: url('FantasqueSansMono-RegItalic.eot?#iefix') format('embedded-opentype'), /* IE < 9 */
         url('FantasqueSansMono-RegItalic.woff') format('woff'), /* Firefox >= 3.6, any other modern browser */
         url('FantasqueSansMono-RegItalic.ttf') format('truetype'), /* Safari, Android, iOS */
         url('FantasqueSansMono-RegItalic.svg#FantasqueSansMono-RegItalic') format('svg'); /* Chrome < 4, Legacy iOS */
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'FantasqueSansMono';
    src: url('FantasqueSansMono-Regular.eot'); /* IE 9 Compatibility Mode */
    src: url('FantasqueSansMono-Regular.eot?#iefix') format('embedded-opentype'), /* IE < 9 */
         url('FantasqueSansMono-Regular.woff') format('woff'), /* Firefox >= 3.6, any other modern browser */
         url('FantasqueSansMono-Regular.ttf') format('truetype'), /* Safari, Android, iOS */
         url('FantasqueSansMono-Regular.svg#FantasqueSansMono-Regular') format('svg'); /* Chrome < 4, Legacy iOS */
    font-weight: normal;
    font-style: normal;
}
// ...etc.

This way a general font-family: 'FantastiqueSansMono' rule can be used and font-weight and font-style will work as expected.

Underscores disappear at size 14 in Intellij (Windows)

Hi,

I'm not sure if this is actually an issue with IJ or the actual font, but I've noticed that at size 13 or 14 (I guess this is pts?) in intelliJ on windows, underscores aren't visible. See this screenshot:

14

It's okay at 12 or 16 though, however "12" in IntelliJ is a lot smaller than "12" in the Windows font preview tool, and a bit too small for me.

font-preview

Any ideas?

Otherwise - I love this font! Thanks!

Exclamation mark becomes visibly equal to vertical bar at size 12

Maybe I'm running this smaller than you are, but it becomes very hard to read at this size. Everything else (so far) is beautiful, though.

This is in Intellij IDEA. Look at the "!file.exists()" part.
exclamation_mark

Is there perhaps a recommended smallest size under which it stops looking good/correct? If so, what is this?

Airline font is broken on Mac

Similar as in #22, I'm having trouble with the airline glyphs on Mac.

image

but I'm having no trouble on Linux. I've tried both the .ttf and .otf versions.

Some characters don't display

I run a mod for clojure development that shows certain characters as (function symbol) and (lambda symbol). In cosmic sans, the lambda looks fine, but the function symbol shows up as a block. See the second line of the code samples (filter...) below to see what I mean.

Menlo:
other-font

Cosmic Sans Neue Mono:
cosmic-sans

FantasqueSansMono-Regular fails to build since version 46e79a7

Hi I am unable to compile the fonts since version 46e79a7.

I am getting the following error.

./validate-generate "FantasqueSansMono-Regular"
Generating FantasqueSansMono-Regular...
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.
 Executable based on sources from 07:13 TAHT 27-May-2014-ML-D.
 Library based on sources from 07:13 TAHT 27-May-2014.
 Based on source from git with hash:
Error in FantasqueSansMono-Regular.
Font FantasqueSansMono-Regular.sfd is not valid
Makefile:17: recipe for target 'FantasqueSansMono-Regular.ttf' failed
make: *** [FantasqueSansMono-Regular.ttf] Error 42

I am using the following version of fontforge

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.
 Executable based on sources from 07:13 TAHT 27-May-2014-ML-D.
 Library based on sources from 07:13 TAHT 27-May-2014.
 Based on source from git with hash:
fontforge 20140527
libfontforge 20140527-ML

Thank you

This is obviously not an issue, but just a thank you for creating this awesome font and putting in the time required. And soon with unicode drawing characters. Excellent work!

Metafont

Do you think it could be possible to have the metafont format for this font in order to use it with latex ?

Is otf the best format to install?

I've done a bit of reading on font formats, the release ships a lot but to install for myself am I correct that ideally I want to just install the otf files? Seems like the most modern advanced format.

Does it even matter?

Single quote (U+0027) issues

Nice looking font, playing with it in an IDE right now. However, I am finding the standard single quote/apostrophe character quite jarring both in code and in text.

My personal opinions:

  • Character is too slanted compared to the rest of the text, and stands out jarringly.
  • Character is also very heavy for punctuation in general.
  • The style of the single quote does not match the double quote (slanted versus vertical).
  • The slanted style (versus the straight vertical style in many fonts) looks very odd as a string delimiter, especially where the double-quote is also used nearby.
  • In italics, the character seems to be just a smidge too far to the right.

This testing was in Windows at size 12 and 14. I can return with images if necessary.

Remove RFN

Please remove the RFN. This prevents people who wish to use the font as a web font and subset it to their own needs from using your font name in their subsets and CSS.

Can't choose this font anymore in PyCharm on Linux

Don't know if that's related to the renaming or the PyCharm IDE, but the latest Cosmic Sans was working flawlessly, i could choose "CosmicSansNeueMono" just fine: i then updated to the latest version via AUR (Arch Linux) and now i can't even look it up in the font selection. Any ideas?

EDIT: just to add this is one of the most awesome coding fonts i've seen in a lot of time, this is even better than Monaco, Menlo and Meslo! Keep up the fantastic work!

Cyrillic support

The font is very nice as it is, thank you very much. But it would be great to have Cyrillic support.

Couldn't get it to work on Xubuntu

I am using Xubuntu 13.10 running in VirtualBox (Windows 8.1 Host)
I installed the font with (sudo)

cp *.ttf /usr/share/fonts/truetype
fc-cache -f

The font appears in font lists, but...

  • in Terminal all characters appear as boxes
  • in Inkscape the font preview is boxes, text is rendered in a font which is not cosmic sans
  • gimp crashes (in pango_ot_get_info) when browsing the font list.

Additional info from gimp:

(gimp:1858): Pango-WARNING **: failed to create cairo scaled font, expect ugly output. the offending font is 'CosmicSansNeueMono Bold 16'
(gimp:1858): Pango-WARNING **: font_face status is: out of memory
(gimp:1858): Pango-WARNING **: scaled_font status is: out of memory

Rebooting did not solve the problem. I have not installed fonts in Xubuntu before so may have made a mistake there, please advise.

Invisible comma at some sizes

Using gvim, on Linux, at sizes 10 and 11, with regular Fantasque Sans Mono, the comma is invisible. The comma is there (I can copy-paste it to another program), but it isn't rendered. At other sizes, such as 9 and 12, or weigths, such as bold or italic, there's no problem.

Binaries for 1.3.1

Hi,

I see a new release description in the Readme, but the binary is not available on the openfontlibrary.org link.

Can you please upload it?

Also, it would be nice if you publish the binary on GitHub too (using their release feature).

Unable to print

I really enjoy using this font in Sublime and PuTTy, works and looks great.

Therefore I have been trying to use it when making simple Word documents on my Windows 7 machine.

However it refuses to print. I have tried multiple printers, exporting to PDF, both OTF & TTF. Nothing works. It sends to printer but just gets hung.

Request for 0x1A4 to be added

"Capital P with a hook"

This character is used by Emacs 'clojure-mode' to "fancify" code. See here for details.

I really like this font and this seems to be the only thing missing from an otherwise wonderful experience.

Ogoneks are not properly sized

Hi,

Could you please adjust ogoneks in ą and ę according to this manual? I tried to do that myself, but I'm afraid I can't do that properly.
Screenshot

Google Fonts

This font seems rather charming. Any chance you will get it hosted by Google?

Line height issue with size 10

When rendered with xft in xterm, size 10, there seems to be something wrong with the height of some characters ('g' for example):

cosmic-sans-neue-mono-10

Issues with backticks and curly-quotes

So, I've never submitted an issue about type before, so, I'm not sure about the etiquette here … it's a bit more subjective, and artistic, than anything I've ever commented on before. So, take my complaints as ‘this is my experience using your work,’ instead of as any instruction to change your style, I suppose? :P

I use a lot of backticks, for a variety of reasons; amongst others,

  • I write a lot of Markdown documentation for code.
  • I write a lot of shell-script (often, with Markdown documentation within it. O_O)

Unfortunately, although I've been so happy with switching to Fantasque as my code-editing typeface (as opposed to Terminal-window typeface), it's made any task involving backticks a bit … hellish.

Take a gander at how difficult it is to figure out what's going on in these:

screen shot 2015-12-13 at 11 52 19 pm screen shot 2015-12-13 at 11 52 57 pm screen shot 2015-12-13 at 11 53 18 pm

In order, those are:

  • Two backticks, followed by ‘curly single-quotes,’ and a single 'straight-quote.'
  • A "straight double-quote", a 'straight-quote', and two backticks.
  • Two pairs of backticks followed by two pairs of ‘curly single-quotes.’

It's gotten to the point where I've bound a hotkey to swap my editor's typeface out, when I'm staring at a block of text and I just can't determine what the mess of quotes are.


So, if I were to have my way in all things, I'd love to see:

  • Straight-quotes that are distinguishable from curly-quotes (after all, ’this’ doesn't look very pretty anyway; if you can't differentiate between start and end quotes, then why are you trying to make them faux-curly at all?), and that are preferably … well, straight. Although the latter is more of taste thing for myself than a usability issue. ¯_(ツ)_/¯
  • And, so very, very importantly for me, visually-distinguished backticks. Glancing at a couple other specimens, it looks like most editing typefaces go with a very “sharp” appearance for the backtick; but even when it's not super thin / pointed at the bottom, it's always straight as an arrow. I really do think it'd be best to make the backtick straight, to distinguish from the opening-curly-quote and straight-single-quote.

Here's a couple samples from other fixed-width faces I've used. Out of all of them, DejaVu Sans is (unsurprisingly) the most usable, and probably, the most elegant; but I don't think the approach that works for it is going to work for Fantasque's feel, so …

screen shot 2015-12-14 at 12 04 44 am

Build fails

The output of running make:

mkdir -p OTF Webfonts
./validate-generate "FantasqueSansMono-RegItalic"
�[1;37mGenerating FantasqueSansMono-RegItalic... �[0m
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 08:58 UTC 28-Mar-2015-ML-D.
 Based on source from git with hash: 
  File "<stdin>", line 6
    print font.fontname
             ^
SyntaxError: Missing parentheses in call to 'print'
�[1;31mError in FantasqueSansMono-RegItalic.�[0m
Makefile:17: recipe for target 'FantasqueSansMono-RegItalic.ttf' failed
make: *** [FantasqueSansMono-RegItalic.ttf] Error 1

I do have the dependencies (fontforge, ttfautohint, sfnt2woff and ttf2eot?) installed by the way. How can I check if my fontforge has python scripting support?

Emoji support

It's a pain to find good emoji fonts to program in.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.