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

Moving to a pure Unicode text setup #1415

Closed
asarium opened this issue Jul 15, 2017 · 2 comments · Fixed by #1416
Closed

Moving to a pure Unicode text setup #1415

asarium opened this issue Jul 15, 2017 · 2 comments · Fixed by #1416
Assignees
Labels
discussion This issue has (or wants) a discussion enhancement A new feature or upgrade of an existing feature to add additional functionality.

Comments

@asarium
Copy link
Member

asarium commented Jul 15, 2017

A clarification up front: No, the old tables will of course not be deprecated. I plan on enabling Unicode mode with a mod table switch or enabling it by default if a recent enough FSO version is targetted.

This was prompted by the discussion in the forum thread about special characters in strings. While I fixed the bug reported in the thread I realized that the current mix of TTF and Bitmap glyphs simply doesn't work. The text rendering functions already support rendering UTF-8 encoded Unicode strings since NanoVG supports it but since we need to support the old tables which don't use UTF-8 we can't use that yet.

So, to fix that we would "simply" need to convert all our table text reading to support UTF-8 encoded strings and then pass that to the text rendering functions. Fortunately, most tables and mission files are already properly encoded since the use ASCII encoding. Only the strings and tstrings tables currently use the special FSO text encoding for special characters so modders would only need to convert those files.

Thoughts?

@asarium asarium added discussion This issue has (or wants) a discussion enhancement A new feature or upgrade of an existing feature to add additional functionality. labels Jul 15, 2017
@asarium asarium self-assigned this Jul 15, 2017
@Goober5000
Copy link
Contributor

I have a branch where I'm working on converting parselo.cpp to use SCP_string and string iterators. It's between 75% - 85% complete. I can push that for others to take a look if they want. I started working on it because I figured that it would be a simple matter to enable parsing of Unicode characters once that step was complete.

@asarium
Copy link
Member Author

asarium commented Jul 16, 2017

Using SCP_strings in the parsing could is obviously a good idea but I don't think it's required for Unicode support since normal char strings can handle UTF-8 data just fine.

asarium added a commit to asarium/fs2open.github.com that referenced this issue Jul 17, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
@asarium asarium mentioned this issue Jul 17, 2017
3 tasks
asarium added a commit to asarium/fs2open.github.com that referenced this issue Jul 17, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Jul 17, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Jul 17, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Jul 23, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Jul 23, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 24, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 24, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 24, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 24, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 24, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 24, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 24, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 24, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 25, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 25, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 25, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 25, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 25, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit that referenced this issue Nov 26, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes #1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 26, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 26, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 28, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 29, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
asarium added a commit to asarium/fs2open.github.com that referenced this issue Nov 30, 2017
This adds proper Unicode support by allowing the parse system to read
UTF-8 encoded files. The new mode is controlled by a mod option which
allows older mods to continue using the legacy text encoding.

That option changes the behavior of several systems in FSO. It disallows
the usage of Volition fonts since they don't support Unicode encoding
and changes a few usages of special characters to their unicode
counterparts of generic rendering solutions.

This fixes scp-fs2open#1415.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion This issue has (or wants) a discussion enhancement A new feature or upgrade of an existing feature to add additional functionality.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants