Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Support For Cyrillic Letters #36

Merged
merged 3 commits into from
Sep 13, 2022

Conversation

kpostnov
Copy link
Contributor

@kpostnov kpostnov commented Sep 9, 2022

As suggested in #4 I have added support for cyrillic characters. This addition contains 96 glyphs ranging from U+0400 to U+045f. To match the existing space constraints (due to monospace) some characters, such as Ж or Ф, had to be redesigned a little. Regardless, it was not possible to 'squeeze' every character this way, which is why a few characters have missing spacing. This is the case for Ю ,for instance.
Feel free to reach out if you find any further issues.

Original characters in Minecraft
(note that they are not monospace)
Monocraft
minecraft_cyrillic cyrillic

This is what it looks like in VSCode (outdated):
vscode_cyrillic

@WexCore
Copy link

WexCore commented Sep 10, 2022

Regardless, it was not possible to 'squeeze' every character this way, which is why a few characters have missing spacing.

I feel that symbol spacing in monospaced font is more important than the look of each letter. It's definitely possible to fit every letter, given some sacrifices. The author of this font changed the I's and L's to fit the font better, why shouldn't you?
showcase

@kpostnov kpostnov closed this Sep 11, 2022
@kpostnov kpostnov reopened this Sep 11, 2022
@kpostnov
Copy link
Contributor Author

I feel that symbol spacing in monospaced font is more important than the look of each letter. It's definitely possible to fit every letter, given some sacrifices. The author of this font changed the I's and L's to fit the font better, why shouldn't you? !

You are probably right. Originally, I didn't want to change the font too much and used existing glyphs like ¾ as a guide, which also have a different width. But I think your version is nicer. I'll see what I can do.

@WexCore
Copy link

WexCore commented Sep 11, 2022

The spacing on the lowercase letter "к" is still a bit weird. Consider extending it a little.
k_example

UPD: just noticed its the same for English letter "k". Guess I'll open an issue and we'll see about it.

@kpostnov
Copy link
Contributor Author

The spacing on the lowercase letter "к" is still a bit weird. Consider extending it a little.

I too wasn't sure about that one. In the original it is only 4 pixels wide. In addition, there are other characters, such as i, l or t in latin, or г in cyrillic, that are 4 pixels wide as well.
But you are right. It does look weird. So I changed the к for now.

Before After
before after

However, I don't know what to do with the г. Extending it horizontally would make it look wrong. What do you think?

4 pixels 5 pixels
g_thin g_wide

@WexCore
Copy link

WexCore commented Sep 12, 2022

It really does look weird with 5px.
I say you should leave it as it is, to be more inline with english i, l, etc.

@IdreesInc
Copy link
Owner

Thank you for the tremendous amount of work you've put into adding all of these characters, as well as for including screenshots in the PR so that it is easy to compare against the game. Everything looks good to me and I feel like you've done the most you can given the constraints of the monospacing. I'll merge this in to a separate branch first so that I can deal with conflicts from other PRs before merging it into main.

@IdreesInc IdreesInc changed the base branch from main to 4-support-for-cyrillic September 13, 2022 22:36
@IdreesInc IdreesInc merged commit fb1c25e into IdreesInc:4-support-for-cyrillic Sep 13, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants