Giter Site home page Giter Site logo

Unicode chars about yams HOT 3 OPEN

erkekin avatar erkekin commented on July 17, 2024 1
Unicode chars

from yams.

Comments (3)

Lakr233 avatar Lakr233 commented on July 17, 2024 2

I got something [wrong/not working as expect] with it I think

(PTFoundation.CodeClip) $R0 = {
  name = "测试/1"
  code = "echo \'test\'"
  section = "测试栏目+:/\\!#@$%#^$*(*&)"
  executor = nil
  target = nil
  targetLink = 0 values {}
}

resulting

name: "\u6D4B\u8BD5/1"
code: echo 'test'
section: "\u6D4B\u8BD5\u680F\u76EE+:/\\!#@$%#^$*(*&)"
executor: unknown
target: unknown
link: []

from yams.

leonidmelnyk avatar leonidmelnyk commented on July 17, 2024 2

@Lakr233 as a workaround, you can apply a transformation to convert the Unicode codes into valid chars:

extension StringTransform {
    static let unicodeToAny = StringTransform("Hex-Any")
}

let yamlString = try? YAMLEncoder().encode(object)
return yamlString?.applyingTransform(.unicodeToAny, reverse: false)

from yams.

jpsim avatar jpsim commented on July 17, 2024

Can you please share more information for us to look into this as a possible issue?

For what it's worth we have tests validating some multi-byte unicode character use cases:

func testMultibyteCharacters() throws {
let example = """
Bulbasaur: フシギダネ
Charmander: ヒトカゲ
Squirtle: ゼニガメ
"""
let object = try Yams.load(yaml: example)
let expectedObject = [
"Bulbasaur": "フシギダネ",
"Charmander": "ヒトカゲ",
"Squirtle": "ゼニガメ"
]
YamsAssertEqual(object, expectedObject)
let yaml = try Yams.dump(object: object, allowUnicode: true)
XCTAssertEqual(yaml, example)
}

from yams.

Related Issues (20)

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.