Code Monkey home page Code Monkey logo

Comments (2)

tikiatua avatar tikiatua commented on July 18, 2024 2

Hi @Vinnythetrue,

Thank you for your feedback. This is indeed a tricky problem and has to do with character encoding and html escaping.

For security reasons, vue will automatically escape all html tags – i.e. the   tag – in text unless you use the v-html directive to insert the content. Be aware, that using the v-html directive might open your application up to possible security vulnerabilities. Especially, if it is used on content that users can specify.

However, the content can contain a range of characters, which is usually encoded in a specific format. Nowadays, I would suggest to use the utf-8 encoding for most websites that use latin characters (exceptions for special languages like Arabic, Chinese, Japanese, ..).

You can specify the encoding to use for the website in a meta tag

<head>
  <meta charset="UTF-8">
</head>

Make sure that the content in the json file is also encoded in utf-8 – i.e. in VSCode this can be set in the toolbar on the bottom right.

Now you need to actually use a non-breaking space instead of a regular space in the json content. To enter a non breaking space you need to use the unicode code to insert the character, which is 00A0 (http://www.fileformat.info/info/unicode/char/00a0/index.htm).

There are different ways of inserting a special unicode character depending on your operating system:

  • On windows, you hold down the ALT key and press the + key on the number keypad. Then you enter the hexadecimal unicode value (i.e. 00A0) and release the ALT key.
  • On OS X, this is slightly more complicated and involves activating the unicode keyboard. Details can be found here https://poynton.ca/notes/misc/mac-unicode-hex-input.html. Usually, you can also add a non-breaking space by just pressing ALT+SPACE.

Please let me know if this solves your problem.

from vuex-i18n.

Vinnythetrue avatar Vinnythetrue commented on July 18, 2024

thanks tikiatua ! The solution was so simple, I even didn't though of simply insert the "real" non-breaking space unicode character O_o

It works like a charm !

The only downside for me, is when it comes to the translation work, I will have to process somehow the texts coing back from translation, because the translation people won't be able to do this I guess...

Thanks again :)

from vuex-i18n.

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.