Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Algorithm to pad string is not Unicode aware #298

Open
Labels
BugSomething isn't working. Help WantedExtra attention is needed.
@kgryte

Description

Checklist

Please ensure the following tasks are completed before filing a bug report.

  • Read and understood the Code of Conduct.
  • Searched for existing issues and pull requests.

Description

Description of the issue.

Encountered an error when attempting to pad a string based on the number of visual characters. Currently, we rely on String#length to determine the number of characters to pad; however, this returns the number of code points, which may not be same as the number of graphemes.

We should consider how to properly handle Unicode characters comprised of multiple code points.

Related Issues

Does this issue have any related issues?

No.

Questions

Any questions for reviewers?

No.

Other

Any other information relevant to this issue? This may include screenshots, references, stack traces, sample output, and/or implementation notes.

This affects the following packages:

Demo

If relevant, provide a link to a live demo.

N/A

Reproduction

What steps are required to reproduce the unexpected output?

In order to reproduce this bug, do the following:

  • attempt to pad using an input string containing surrogate pairs or by providing a string with which to pad containing surrogate pairs.

Expected Results

What are the expected results?

I might expect that I would see padding based on the number of visual characters. Currently, the implementation runs the risk of unpaired surrogates.

Actual Results

What are the actual results?

N/A

Environments

What environments are affected (e.g., Node v0.4.x, Chrome, IE 11)? If Node.js, include the npm version, operating system, and any other potentially relevant platform information.

The following environments are affected:

  • all

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugSomething isn't working. Help WantedExtra attention is needed.

    Type

    Projects

    No projects

    Milestone

    No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

        AltStyle によって変換されたページ (->オリジナル) /