Commit graph

46 commits

Author SHA1 Message Date
Protesilaos Stavrou c57f5c48c6
Add note that Iosevka Comfy is superseded by "Aporetic" fonts 2025-02-04 11:47:04 +02:00
Protesilaos Stavrou c7cfc91eb8
Update to Iosevka Comfy version 2.1.0
This is a small release that fixes a detail in the `m` character of
all the "motion" variants. It now has a tail at the bottom right
corner in addition to the top left serif. This is the same design used
wherever relevant, such as in the `n` and `u` glyphs.

Other than that, the rebuild is an attempt to fix the broken files
that appear on NixOS, as reported by Damien Cassou in issue 17:
<https://github.com/protesilaos/iosevka-comfy/issues/17>. I do not
know if this fixes the problem, but I cannot think of a better
approach. This is not reproducible on my end (Debian stable).
2024-10-19 10:32:54 +03:00
Protesilaos Stavrou f7086ff14c
Update to Iosevka Comfy version 2.0.0 (on top of Iosevka 31.3.0)
* It is difficult to build Iosevka Comfy

I made a lot of adjustments to preserve the aesthetics of Iosevka
Comfy while adapting them to the latest version of upstream Iosevka.
Users will now benefit from all the refinements made upstream.

Iosevka has a rapid release cycle. Almost every version introduces
some breaking change: a code point is repurposed to reference another
character or the numeric value of a character variant is modified to
point to another variant... To rebuild Iosevka Comfy, I have to
inspect every single character to ensure its code point AND numeric
variant are correct. This is a laborious task that takes several days
of testing all the fonts. Still, it is worth the effort as I get a set
of highly functional fonts in the process.

Another complication this time was on the hardware side of things. I
could not rebuild because I was running out of RAM and my computer
would crash. This stalled the current version for several months. I
finally got a new 16GB memory stick and was able to work on this project.

* Minor stylistic refinements

All the variants I provide are the same except for two small changes:

- The capital U in all the "motion" variants now uses the style I had
  always intended. This is a rounded bottom with a serif at the top
  left corner. In the previous version of Iosevka Comfy, this character
  had a tail at the bottom right corner because upstream had changed
  the numeric value of the variant. I either did not notice that in
  the documentation at the time, or the documentation had not been
  updated accordingly. I did spot the error back then after I had
  rebuilt the fonts, but I was not going to put further stress on my
  computer just for one character. Anyway, this change makes "motion"
  variants have the desired rhythm throughout.

- All "duo" and "wide" variants have a capital 'i' ('I') with shorter
  bars/serifs than the others (e.g. Iosevka Comfy and Iosevka Comfy
  Motion). For the "duo" variants, this enforces tighter spacing around
  that character, which is appropriate in a quasi-proportional font.
  While for the "wide" variants, the same change improves the sense of
  added space between characters and is easier to read at tiny point sizes.
  This capital 'I' still has serifs to not be mistaken for the bar/pipe
  character or for a cursor that is rendered in a vertical bar shape.

* Stylistic tweaks for the Greek alphabet

Greek characters have always been supported, though their style was
the same as that of upstream Iosevka. For many of those characters I
now introduce changes to make them fit better with their Latin
counterparts. The specifications are in the file 'private-build-plans.toml'.
2024-08-22 16:57:32 +03:00
Protesilaos Stavrou 767b0df817
Update repository URLs 2024-08-22 16:34:18 +03:00
Protesilaos Stavrou f297c83f79 Update to Iosevka Comfy version 1.4.0
- All fonts are now available in two more weights: medium and
  semibold.  Use them to refine your interfaces.  This is in response to
  the request for a medium weight made by madjxatw in issue 8 on the
  GitHub mirror: <https://github.com/protesilaos/iosevka-comfy/issues/8>.

- Large portions of the build instructions have been rewritten to (i)
  track the numerous and non-trivial breaking changes made by upstream
  Iosevka and (ii) preserve the style of Iosevka Comfy.

- The latin long S (ſ) and the Latin sharp S, else Eszett (ß), are now
  supported by Iosevka Comfy.  Details of shape have been considered,
  such that the reader does not conflate those characters with similar
  ones (e.g. the sharp S with a Greek beta, an ampersand, or an 8).

- The slanted version of the ampersand looks the same as its upright
  counterpart.  This is a deviation from the previous version, where
  this character looked like a flipped 3 with a flat top: I had
  introduced that style by mistake and did not want to rebuild
  everything just for it (rebuilding fonts is an expensive
  operation---I spent 8 hours this time).

- Thanks to Raymond Ko for sending a patch to make Iosevka Comfy build
  on top of Iosevka version 26.3.1.  I installed it to register the
  contribution in Git, though I eventually wrote the aforementioned
  changes from scratch as the current development of Iosevka has more
  breaking changes (the version was updated to 27.1.0 and more changes
  were made on top).  It was easier to review all code points, than to
  assume some as fixed.  Raymond send the patch on the mailing list:
  <https://lists.sr.ht/~protesilaos/general-issues/patches/44816>.

As a note for future users, I am always keeping track of upstream
Iosevka, though I do not want to rebuild Iosevka Comfy too frequently.
Upstream has a policy of changing the code points practically every
few weeks, which then requires hours or days of testing on my end just
to keep Iosevka Comfy the same.  If you try to build Iosevka Comfy
from source, make sure to use the commit in iosevka.git specified in
my project's README.md, as of this writing: this is the current
working version for me.  Future versions of iosevka.git will probably
contain breaking changes.  I will eventually adapt to them.
2023-09-30 20:35:07 +03:00
Protesilaos Stavrou d6f825f59b Update to Iosevka Comfy version 1.3.0
* Include table in the 'README.md' file that succinctly describes the
  Iosevka Comfy variants.  This is it:

  | Family                          | Shapes | Spacing | Style      | Ligatures |
  |---------------------------------+--------+---------+------------+-----------|
  | Iosevka Comfy                   | Sans   | Compact | Monospaced | Yes       |
  | Iosevka Comfy Fixed             | Sans   | Compact | Monospaced | No        |
  | Iosevka Comfy Duo               | Sans   | Compact | Duospaced  | Yes       |
  |---------------------------------+--------+---------+------------+-----------|
  | Iosevka Comfy Motion            | Slab   | Compact | Monospaced | Yes       |
  | Iosevka Comfy Motion Fixed      | Slab   | Compact | Monospaced | No        |
  | Iosevka Comfy Motion Duo        | Slab   | Compact | Duospaced  | Yes       |
  |---------------------------------+--------+---------+------------+-----------|
  | Iosevka Comfy Wide              | Sans   | Wide    | Monospaced | Yes       |
  | Iosevka Comfy Wide Fixed        | Sans   | Wide    | Monospaced | No        |
  | Iosevka Comfy Wide Duo          | Sans   | Wide    | Duospaced  | Yes       |
  |---------------------------------+--------+---------+------------+-----------|
  | Iosevka Comfy Wide Motion       | Slab   | Wide    | Monospaced | Yes       |
  | Iosevka Comfy Wide Motion Fixed | Slab   | Wide    | Monospaced | No        |
  | Iosevka Comfy Wide Motion Duo   | Slab   | Wide    | Duospaced  | Yes       |

* Review all glyph codes to preserve the font's style in light of the
  numerous breaking stages in the main Iosevka repository.  An example
  of such a change is when 'cv20 = 2' has a different style than what
  it used to or when the 'cvXX' refers to another character than what
  it once did.

* Ensure the lower case italic form of 'f' has a crossbar at the
  x-height. This is how its roman counterpart is: it aligns with 'i'
  and 't'.

* Make the capital 'B' in all the "motion" variants (slab serif families)
  consist of two symmetric chambers.  This is consistent with the sans
  serif variants of Iosevka Comfy.

* Revise the 'f' in the "motion" variants to be the same as their sans
  serif counterparts.  The reason is that the previous glyph was
  closed at the top and was thus harder to read at small point sizes.

* Change the italic forms of lower case 'v', 'w', 'x', and 'z' from
  curly to straight across all the variants.  This is to ensure a
  consistent rhythm in all contexts between upper and lower case
  characters as well as upright and slanted forms.

* Let capital 'W' have a middle joint below the height of its two
  sides in order to be consistent with capital 'M' and the lower case
  'w'.

* Adjust the bar character '|' (also known as "pipe") to have no slope
  in italic forms.  The intent is to disambiguate it from the forward
  slash.  Also, the pipe can now be used in plain text tables even if
  those are italicised (e.g. a comment in programming code).

* Declare the Iosevka Comfy Wide Motion Duo as a slab serif font.
  This affects characters that are not explicitly defined in our list
  of overrides.

* Clarify some comments in the build plan of Iosevka Comfy to better
  describe the intended looks of the referenced characters.
2023-05-16 07:35:31 +03:00
Protesilaos Stavrou 0c80c2516a Make table monospaced to render on GitHub 2023-04-27 15:59:22 +03:00
Protesilaos Stavrou 011095f968 Add table with Iosevka Comfy variants 2023-04-27 08:33:31 +03:00
Protesilaos Stavrou a27aa63eb6 Update to Iosevka Comfy version 1.2.0
* Make necessary adjustments to handle backward-incompatible changes
  in upstream Iosevka.  The intent is to preserve the aesthetic of
  Iosevka Comfy.

* Introduce the "wide motion" superset of font families.  This is
  another triplet that consists of (i) a regular monospaced style with
  support for ligatures and some wide glyphs like arrows, (ii) a fixed
  spaced monospaced variant that does not support ligatures or any
  wide glyphs, and (ii) a quasi-proportional ("duospaced") variant
  that preserves some of the rigidity of its monospaced counterparts
  but allows certain glyphs to occupy their natural width.  The
  project's README describes all the variants on offer.
2023-04-27 05:25:44 +03:00
Protesilaos Stavrou 55fc0b0511 Update to latest Iosevka version
There are no user-facing changes in this release.  Though I had to
test everything again and make sure to adapt to upstream's breaking
changes.

Given this update, I am removing some files that had stayed behind
from a previous release.
2023-03-24 08:01:36 +02:00
Protesilaos Stavrou 913de4bc41 Make backronym easier to read 2022-12-22 06:31:02 +02:00
Protesilaos Stavrou 41362e4b77 Clarify wording of "build information"
The language was confusing, as demonstrated by Dave Abrahams in issue
3 on the GitHub mirror: <https://github.com/protesilaos/iosevka-comfy/issues/3>.
2022-12-22 06:25:21 +02:00
Protesilaos Stavrou 281498106d Update to Iosevka Comfy version 1.1.0
* Made the '@' and '%' characters wider in the font families
  'iosevka-comfy-duo', 'iosevka-comfy-motion-duo', 'iosevka-comfy-wide',
  'iosevka-comfy-wide-fixed', 'iosevka-comfy-wide-duo'.  This is
  consistent with their design, which has wider glyphs and/or more
  generous spacing.

* Built using upstream Iosevka 'v16.3.4', commit 'ad1e247a'.

The rest of the design remains the same as before.  Read the detailed
release notes for version 1.0.0:
<https://protesilaos.com/codelog/2022-09-14-iosevka-comfy-1-0-0/>.
2022-10-19 07:43:37 +03:00
Protesilaos Stavrou 54ae92f642 Update to Iosevka Comfy version 1.0.0
Breaking change about vertical spacing
--------------------------------------

I no longer override the line height established by upstream Iosevka.
This means that all the font families provided by the Iosevka Comfy
project are the same as Iosevka in terms of vertical spacing.

This change is necessary to conform with recent developments upstream.
Those affected Iosevka Comfy in two ways:

1. Capital letters with accents would no longer be rendered in full.
   The accent would be cropped.  I tried some modest adjustments to the
   relevant variable, but the problem would still occur at certain point
   sizes.

2. The "wide" families no longer had the same vertical spacing as the
   others.  This is a regression from what we used to have.  I do not
   want the various families of this project to be radically different,
   so such a deviation is unacceptable.

New families and reorganisation into triplets
---------------------------------------------

I added two new families: 'iosevka-comfy-motion-fixed' and
'iosevka-comfy-wide-duo'.  These complete the set of the three stylistic
variants provided by this project.

These triplets follow the naming scheme 'NAME{,-fixed,-duo}'.  The base
name is monospaced and supports ligatures.  The "fixed" one is strictly
monospaced so as to work with all terminal emulators: it does not
support ligatures.  And the "duo" is quasi-proportionately spaced, while
supporting ligatures.

1. The **compact, sans-serif** set:

   - 'iosevka-comfy' is monospaced and supports ligatures.  Apart from
     ligatures, it allows certain special glyphs, such as arrows, to
     occupy more than one block.

   - 'iosevka-comfy-fixed' is like 'iosevka-comfy' albeit strictly
     monospaced and thus does not support ligatures.  All glyphs are
     exactly the same width.  Use this if you prefer it or if your
     application (e.g. terminal emulator) does not recognise
     'iosevka-comfy' as a monospaced font.

   - 'iosevka-comfy-duo' is quasi-proportional and supports ligatures.  The
     naturally narrow glyphs, such as 'i', are allowed to occupy their
     natural width instead of one space.

2. The **compact, serif** set:

   - 'iosevka-comfy-motion' is monospaced and supports ligatures.  It is
     like 'iosevka-comfy' but with lots of small tweaks that add serifs
     and tailed ends to relevant glyphs.  Put simply, it is the serified
     counterpart of 'iosevka-comfy'.

   - 'iosevka-comfy-motion-fixed' is the serif equivalent of the
     aforementioned 'iosevka-comfy-fixed'.

   - 'iosevka-comfy-motion-duo' is the serif equivalent of
     'iosevka-comfy-duo'.

3. The **wide, sans-serif** set:

   - 'iosevka-comfy-wide' is the same as 'iosevka-comfy' except it is
     noticeably wider.  It also looks taller than 'iosevka-comfy' even
     though both variants fit the same number of lines on a screen.

   - 'iosevka-comfy-wide-fixed' is the "wide" counterpart of the
     'iosevka-comfy-fixed' family.

   - 'iosevka-comfy-wide-duo' is the "wide" counterpart of the
     'iosevka-comfy-duo' family.

Inter-font consistency
----------------------

I ensured that all fonts feel part of the same project.  The stylistic
differences between them are subtle and, generally, only go in one
direction (e.g. the "motion" triplet just adds some serifs while
retaining the main skeleton).

Simplification of the README and update to the demo pictures
------------------------------------------------------------

I rewrote the README to omit some of its more technical sections.  It
now is simpler as it focuses on describing what this project offers.

The README also includes links to all official sources of the project.

Furthermore, I updated the sample screen shots to better showcase the
three variants mentioned above:
<https://protesilaos.com/emacs/iosevka-comfy-pictures>.

Miscellaneous
-------------

The README now suggests a shallow clone of the git repo.  Keeping a
version history of lots of .ttf files is not ideal.

Advanced users who plan to tweak the 'private-build-plans.toml' and then
build their own fonts, may be interested in the shell one-liner I use to
build the font files:

    for i in iosevka-comfy{,-motion,-wide}{,-fixed,-duo} ; do npm run build -- ttf::$i ; done

This is invoked from the root of the iosevka.git repo and works with my
'private-build-plans.toml'.

The backronym of Iosevka COMFY is: Iosevka (Could Only Modify a Font, Yes)
2022-09-14 19:34:34 +03:00
Protesilaos Stavrou 37e6cedd2c BREAKING: Rebuild files without change to line height
Changes upstream affected our override of the 'leading' variable to the
effect that some point sizes would crop accents over capital letters.

Also, the "wide" variants no longer occupied the same lines as the
others, which is a regression based on what we had before.  I do not
want the "wide" ones to be a different font.

This is not yet part of a release.  I might make further changes.
2022-09-13 10:59:36 +03:00
Protesilaos Stavrou 34f71665b4 Update to Iosevka Comfy 0.5.0
* Created a dedicated page for sample pictures of the fonts:
  <https://protesilaos.com/emacs/iosevka-comfy-pictures>.

* Revised the proportions of the fonts to have a marginally less compact
  vertical spacing.  The intent is to fix the display of accents over
  capital letters, such as ÀÄÃÁÖÕ.  This issue was discussed on the
  mailing list.  Thanks to inwit for bringing the matter to my
  attention:
  <https://lists.sr.ht/~protesilaos/general-issues/%3CCMG66XYLH7MO.2T0058JIS1343%40bisio%3E>.

* Made sweeping changes to Iosevka Comfy Motion and Iosevka Comfy Motion
  Duo to address their [subtle] inconsistencies and enforce a uniform
  style throughout their glyphs.  Put simply, the "motion" variants are
  the pseudo-serif counterparts of base Iosevka Comfy and Iosevka Comfy
  Duo, respectively.

* Rebuilt all font files based on Iosevka 'v16.2.0', commit 'b7a59ee4'
  on 2022-09-10.

* Updated the README to reflect the aforementioned.

* * *

Reminder of the font families on offer:

* 'iosevka-comfy' is monospaced and supports ligatures.  Apart from
  ligatures, it allows certain glyphs, such as arrows, to occupy more
  than one block.

* 'iosevka-comfy-motion' is like 'iosevka-comfy' but with lots of small
  tweaks that add serifs and tailed ends to relevant glyphs.  Put sipmly
  this is the pseudo-serif version of the otherwise sans-serif base
  style.

* 'iosevka-comfy-duo' is quasi-proportional and supports ligatures.  The
  naturally wide glyphs, such as 'i', are allowed to occupy their
  natural width instead of one space.

* 'iosevka-comfy-motion-duo' is like 'iosevka-comfy-duo' but with the
  serified style of 'iosevka-comfy-motion'.

* 'iosevka-comfy-fixed' is like 'iosevka-comfy' albeit strictly
  monospaced and thus does not support ligatures.  All glyphs are
  exactly the same width.  Use this if you prefer it or if your
  application (e.g. terminal emulator) does not recognise
  'iosevka-comfy' as a monospaced font.

* 'iosevka-comfy-wide' is the same as 'iosevka-comfy' except it is
  noticeably wider.  It also looks taller than 'iosevka-comfy' even
  though both variants fit the same number of lines on a screen.

* 'iosevka-comfy-wide-fixed' same as 'iosevka-comfy-wide' though it is
  strictly monospaced and does not support ligatures.
2022-09-10 17:10:59 +03:00
Protesilaos Stavrou 8aa8e2cb46 Update to Iosevka Comfy 0.4.0
- Rebuilt all files using upstream Iosevka version 'v16.0.2', commit
  '2f48331f'.  This is done to incorporate the latest changes (although
  they do not affect Iosevka Comfy).

- Designed a new stylistic "motion" variant.  Select glyphs are curlier
  and/or have tailed ends and serifs, giving a more playful and fluid
  impression.  By comparison, standard Iosevka Comfy is austere.

  The new variants are (i) 'iosevka-comfy-motion', which is largely
  monospaced and supports ligatures, and (ii) 'iosevka-comfy-motion-duo'
  which is quasi-proportional in its spacing.

  The variants in brief:

  - 'iosevka-comfy' is monospaced and supports ligatures.  Apart from
    ligatures, it allows certain glyphs, such as arrows, to occupy more
    than one block.

  - 'iosevka-comfy-motion' is like 'iosevka-comfy' but with lots of small
    tweaks that add serifs and tailed ends to give a more playful
    impression.

  - 'iosevka-comfy-duo' is quasi-proportional and supports ligatures.  The
    naturally wide glyphs, such as 'm', are allowed to occupy two blocks
    instead of one.

  - 'iosevka-comfy-motion-duo' is like 'iosevka-comfy-duo' but with the
    more playful style of 'iosevka-comfy-motion'.

  - 'iosevka-comfy-fixed' is like 'iosevka-comfy' albeit strictly
    monospaced and thus does not support ligatures.  All glyphs are
    exactly the same width.  Use this if you prefer it or if your
    application (e.g. terminal emulator) does not recognise
    'iosevka-comfy' as a monospaced font.

  - 'iosevka-comfy-wide' is the same as 'iosevka-comfy' except it is
    noticeably wider.  It also looks taller than 'iosevka-comfy' even
    though both variants fit the same number of lines on a screen.

  - 'iosevka-comfy-wide-fixed' same as 'iosevka-comfy-wide' though it is
    strictly monospaced and does not support ligatures.

- Updated all screen shots and reworked the README to better present the
  stylistic variants of Iosevka Comfy.

- The comparison between regular Iosevka and Iosevka Comfy now uses a
  larger font height and displays line numbers.  These help illustrate how
  Iosevka Comfy is more compact than its counterpart (compactness is more
  economical, but also prevents rivers of negative space from flowing
  through the lines; rivers which I find incredibly annoying).
2022-09-02 12:37:48 +03:00
Protesilaos Stavrou 8a58a4a4d1 Update section of comparison with Iosevka 2022-09-02 12:35:38 +03:00
Protesilaos Stavrou 4ee6e4a478 Update screenshots 2022-09-02 12:33:20 +03:00
Protesilaos Stavrou 6013e4b962 Fix broken link to image 2022-07-21 20:12:37 +03:00
Protesilaos Stavrou 9b131015d8 Rebuild Iosevka Comfy
* Changed the 'a' glyph from a single to a double storey design.  The
  previous implementation had two problems: (1) it was not fully
  consistent with the overall rounded style of Iosevka Comfy, and (2) it
  could be mistaken for an 'o'.

  Damien Cassou wrote about the latter case in issue 2 over at the
  GitHub mirror: <https://github.com/protesilaos/iosevka-comfy/issues/2>.

  The report confirmed my suspicion that I had a misplaced sense of
  comfort in disambiguating the single storey 'a' from 'o' solely
  because of how we tend to read known words predictively instead of
  character-by-character.  I was already testing this by substituting
  random 'a' with 'o' in long texts where I was still reading everything
  as if the typos were not there.  Damien's report was the final datum
  that provided the impetus for this change.

* Revised the 'b' and 'd' glyphs to exhibit the roundedness found in
  other relevant glyphs.  Before they had a sturdier look which broke
  the established patterns of Iosevka Comfy, albeit ever so slightly.
  The inconsistency was noticeable at larger point sizes.

  The new rounded shapes look virtually the same as their predecessors
  at small point sizes.  At larger sizes though, they retain the
  desirable characteristics of the typeface.

* Removed the tail from the 'u' glyph and enforced roundedness.  This
  aligns its design with 'a' but also with other characters like 'n'.
  Again, the intent is to achieve inter-character consistency, where
  appropriate.

* Updated the documentation to reflect the aforementioned.

* Produced new screenshots to showcase the current state of the project.
2022-07-21 20:03:21 +03:00
Protesilaos Stavrou 1a6589664c Fix broken link to image 2022-07-01 10:10:48 +03:00
Protesilaos Stavrou 793c6411be Rebuild Iosevka Comfy (version 0.2.0)
* Updated the screenshots that compare Iosevka Comfy to regular Iosevka.
  They show how the former is more vertically compact than the latter,
  while also exhibiting the stylistic differences between the two.  Make
  sure to view the images in full screen mode, otherwise the characters
  may be distorted.

* Iosevka Comfy comes in "narrow" and "wide" variants.  As the latter
  have different requirements, we optimise for them instead of enforcing
  a misguided one-size-fits-all.  Concretely, the README explains thus:

      Deviations from the regular style
      ---------------------------------

      The variants of Iosevka Comfy are subdivided into "narrow" and "wide".
      The former consists of `iosevka-comfy` and `iosevka-comfy-fixed`.  The
      latter includes `iosevka-comfy-wide`, `iosevka-comfy-wide-fixed`, and
      the quasi-proportional `iosevka-comfy-duo`.

      Due to the relaxed spacing requirements and concomitant legibility
      considerations, the wide variants have stylistic deviations from their
      counterparts.  In detail:

      * The 'm' character has three legs of equal length, insetad of a shorter
        middle leg.  The short middle leg in the narrow variants is necessary
        for legibility, especially at small point sizes (otherwise the
        character's legs visually blend into what appears to be a solid
        block).

      * The '0' has a forward slash that cuts diagonally through the middle of
        the circle, connecting the bottom left part to the top right of the
        oval shape.  Whereas the narrow variants have a dashed forward slash
        which does not connect the two sides as it is positioned inside the
        oval shape.

Done using upstream version 'v15.5.2', commit 'a0f82f14'.
2022-07-01 09:57:49 +03:00
Protesilaos Stavrou 593f9fbb22 Clarify wording about the percent sign 2022-06-23 07:05:18 +03:00
Protesilaos Stavrou 340b670d80 Fix typo 2022-06-03 19:41:30 +03:00
Protesilaos Stavrou 986273b4de Rebuild Iosevka Comfy
* Upstream now supports inheriting glyph variants, so we do just that.
  Makes the build plans easier to manage.

* After lots of tests, the '@' sign uses a tall three-fold style which
  (i) does not give off a faux bold weight, meaning that it does not
  have more typographic colour than it ought to, (ii) does not look like
  concentric circles at small point sizes the way four-folded variants
  do, (iii) is not too short to the point where it might be mistaken for
  a regular 'a' or simply be hard to discern, the way the Fira-style
  version is, and (iv) has a recognisable shape at all point sizes and
  widths.

* All "wide" builds use an 'm' character with three legs of equal
  length.  Whereas the "narrow" builds have an 'm' with a shorter middle
  leg.  The relevant part from the README:

      Note that the `iosevka-comfy-duo`, `iosevka-comfy-wide`, and
      `iosevka-comfy-wide-fixed` use a different style for the `m`
      character.  Instead of the one with a shorter middle leg, they let
      all legs have the same length.  The short middle leg in `m` that
      we need in the narrow monospaced variants is necessary for
      legibility, especially at small point sizes.  Otherwise it is a
      gimmick, so we remove it in the "wider" builds.

* To keep track of things, this commit marks the release of Iosevka
  Comfy version '0.1.0' (even though the project has been viable for
  close to two years now).

Done using upstream version 'v15.4.2', commit '76a87155'.
2022-06-02 10:49:08 +03:00
Protesilaos Stavrou f0ad3ef79a Rebuild Iosevka Comfy
* Make punctuation marks and diacretics square, instead of circular.

* Add 'iosevka-comfy-wide-fixed' variant.

* Reword some statements in the README and update it to reflect the
  above.

* Update sample light/dark pictures.
2022-05-14 09:30:04 +03:00
Protesilaos Stavrou ead65e8bb3 Add iosevka-comfy-wide 2022-05-14 07:35:07 +03:00
Protesilaos Stavrou e33750855a Rebuild Iosevka Comfy; add fixed and duo spacing
* Iosevka Comfy now comes in three variants:

  - 'iosevka-comfy' which is monospaced and supports ligatures as well
    as some wider glyphs;

  - 'iosevka-comfy-fixed' which is strictly monospaced and does not
    support ligatures or wider glyphs;

  - 'iosevka-comfy-duo' which is quasi-proportionately spaced, meaning
    that it allows naturally wide glyphs to occupy two blocks instead of
    one while others retain their mono-block spacing.

* Updated the build instructions' file to include all aforementioned
  variants.

* Rendered explicit support for some lower-case Greek glyphs.

* Ensured that diacritics are circular, just like punctuation.

* Modified the overrides of cv72 to match changes upstream (keeping it
  as it was before, just pointing at the new value).

* Elaborated on the differences between the Iosevka Comfy variants in
  the project's README.md.

* Wrote how to install fonts on GNU/Linux.
2022-05-11 08:18:43 +03:00
Protesilaos Stavrou 1ba552968c Clarify wording in the README 2022-02-02 09:00:46 +02:00
Protesilaos Stavrou 4821efa7c8 Rebuild Iosevka Comfy; update documentation
* Remove the "book" weight.
* Tweak the metrics to make glyphs more clear (otherwise the regular
  weight looks heavier than it is supposed to).
* Update the demo pictures.
2022-01-26 09:46:09 +02:00
Protesilaos Stavrou cfc807913c Minor correction 2022-01-25 15:11:04 +02:00
Protesilaos Stavrou 837ec4f36a Minor rewording to the README 2022-01-25 15:08:48 +02:00
Protesilaos Stavrou 089b1841fe Rebuild Iosevka Comfy (upstream v.11.2.7)
* Improve: the README to explain how Iosevka Comfy differs from the
  standard Iosevka style.

* Make the capital 'D' use a top and bottom serif to avoid the issue
  where TODO at small point sizes reads like TOOO.  This reverts commit
  3e3a91f.

* Use a single storey 'a' for roman and italic variants.  The rounded
  shape is more consistent with the rest of the typeface.

* Use a tailed 'u' for both variants, for the same reason as above.

* Revert to using an 'm' with a short middle leg to avoid the problem
  where the three legs visually blend into a solid block at small point
  sizes.  Roman and italic variants have slighty different 'm' glyphs
  due to their particular requirements, though both use the short middle
  leg style in the interest of consistency.

* Make the '0' have an oval shape for both roman and italic variants
  with a dashed forward slash which looks like a dot at small point
  sizes.  The slashed zero that was used before feels like an
  exaggeration when the oval shape of the character already is
  sufficiently distinct from 'O'.  This new style is better than the
  alternative of the dotted zero because the inside of the character is
  more subtle (again, avoiding the possible exaggeration).

* Other minor tweaks to the comments in the private-build-plans.toml.
2022-01-25 14:51:22 +02:00
Protesilaos Stavrou 759056767f Update README to match current build 2021-09-08 22:05:01 +03:00
Protesilaos Stavrou 0e5850368f Fix shape of 'q' (using Iosevka 7.2.6 5b0b5425)
This makes it look like it was in commit 23d2018 to this repo, as I had
missed that change upstream.
2021-07-09 13:48:15 +03:00
Protesilaos Stavrou b722232760 Rebuil Iosevka v7.2.5 commit 8977ac09
+ Make W sides straightly slanted and apply the same effect to M in
  order to reduce blur and improve consistency.

+ Update build plan to match latest changes in upstream.  All other
  styles should be the same as with the last build of Iosevka Comfy
  (commit 23d2018 in this repo).
2021-07-05 10:28:23 +03:00
Protesilaos Stavrou 23d201812b Rebuild Iosevka v6.0.0-preview.4 commit 2b144b0e
+ Make spacing "fixed", which disables ligatures and makes all glyphs
  strictly monospaced.

+ Update all glyph codes to their latest references.

+ Adjust metrics.  Now I can finally use Iosevka Comfy at small point
  sizes: "m" can be read properly!

+ Introduce 5 open contour.

+ Use m double-arched without shortleg for straight variant.

+ Remove 350 weight, which is no longer eligible.

+ Simplify build plan by removing all unused sections.

+ Update screenshots.
2021-04-22 20:24:41 +03:00
Protesilaos Stavrou a991f428e7 Rebuild Iosevka Comfy on upstream 5.2.0
Changes:
+ Use dotted oval zero for the upright forms.
+ Use dotted more open rounded zero for the slanted forms.
+ Use earless double arched m with shortleg for the upright forms.
+ Use asymmetric double-circled 8.
+ Update inline comments in the build plan.
2021-04-04 11:01:18 +03:00
Protesilaos Stavrou d5d3609216 Rebuild Iosevka Comfy with upstream version 5.0.4
+ Rewrite the toml plan so that it is aligned with Iosevka's version 5.

+ Use oval shape for the zero.  Furthermore, make upright zero long
  dotted and slanted zero middle dotted.

+ Let Q have a crossing bottom line so that it is closer to O.

+ Be explicit about the shape of capital letters and other characters.

+ Provide unhinted variants.

+ Update screenshots.
2021-03-02 16:41:49 +02:00
Protesilaos Stavrou 01398fa5de Rebuild Iosevka Comfy
+ Fix inconsistency between 'g' and 'y'.
+ Make 'y' the same style across upright and slanted variants.
+ Use straight shortleg 'm' for slanted variants.
+ Remove extended variants.
+ Disable unused metric overrides.
+ Clarify that the light weight is 350 instead of 300
+ Update screenshots.
2021-01-16 15:13:53 +02:00
Protesilaos Stavrou 2e4850b92d Update Iosevka Comfy
+ Add lighter weight.
+ Slashed zero instead of a dotted one.
+ More circular eight.
+ Double arched roman 'm' instead of one with a shorter middle leg.
+ For italics, straight 'm' instead of a shortleged one.
+ Add light and dark sample screen shots.
2021-01-15 16:33:48 +02:00
Protesilaos Stavrou dc6e26f112 Rebuild Iosevka Comfy (breaking changes) 2020-12-27 16:36:14 +02:00
Protesilaos Stavrou 041944eeb1 Rebuild Iosevka Comfy 2020-11-07 12:13:59 +02:00
Protesilaos Stavrou d4192f3917 Rebuild Iosevka Comfy
This reviews several characters, in an attempt to tone down some
exaggerations, improve consistency between characters, and use more
appropriate styles for Roman and Italic variants.  Some choices still
break the design pattern in the interest of keeping glyphs distinct in
body copy.
2020-08-23 10:19:16 +03:00
Protesilaos Stavrou f54939dbe7 Initial build of "Iosevka Comfy" 2020-08-12 19:51:40 +03:00