npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

hk1ll3r.rtltmpro

v3.3.2

Published

This plugin adds Right-to-left language support to TextMeshPro Unity package. You need to have TextMeshPro plugin in your project.

Downloads

5

Readme

RTL Text Mesh Pro

This plugin adds Right-to-left language support to "Text Mesh Pro" Unity plugin. You need to have TextMeshPro plugin in your project. You can install TMPro via Package Manager.

Attention

Looking for maintainers. Send email to [email protected]

Features

Realtime RTL Text

You don't need to convert, copy and paste texts. Start writing and texts will be converted right away.

Preview

Rich Text

All Text Mesh Pro's tags are available in RTL Text Mesh Pro

Rich Text Preview

RTL InputField (See known issues)

Realtime InputField is supported.

Input Field Preview

RTL Dropdown (See known issues)

Dropdown Preview

Multiline

Yes, This plugin has no problem with multiline RTL texts.

Multiline Preview

AutoSize

Auto Font Size is fully supported.

AutoSize Preview

English, Farsi and Arabic digits are supported

Numbers Preview

Arabic Tashkeel

Arabic tashkeel are supported.

Tashkeel Preview

Zero-Width No-Joiner character support

You can insert Zero-Width No-Joiner character with Ctrl+Shift+2 hotkey.

ZWNJ Preview

How To Use

  • You need to have TextMeshPro plugin in your project. You can install TMPro via Package Manager. DO NOT Install Text Mesh Pro from Asset Store.
  • Go to release page and download latest unitypackage file (or copy RTLTMPro folder from source to your project.)
  • Open one of the range files in Assets/RTLTMPro/Ranges/ folder using your favorite text editor.
    • RTL Letters are in LetterRanges.txt file
    • English, Arabic and Farsi numbers are in NumberRanges.txt file
    • Arabic tashil are in TashkilRanges.txt file.
  • Make sure you have copied ranges that you want to use
  • Open Window/TextMeshPro/Font Asset Creator window.
  • Assign your font in Font Source field (Your font must support RTL characters)
  • Set Character Set to Unicode Range
  • Paste copied ranges inside Character Sequence (Hex)
  • Press Generate Font Atlas button and wait for it to generate the atlas file.
  • Press Save TextMeshPro Font Asset and save the asset.
  • Use GameObject/UI/* - RTLTMP menu to create RTL UI elements. (Alternatively you can replace Text Mesh Pro UGUI components with RTL Text Mesh Pro)
  • Assign your font asset Font Asset property in RTL Text Mesh Pro component
  • Enter text in RTL TEXT INPUT BOX secion.

Usage Description

Farsi

When checked, English numbers will be converted to Farsi numbers. When unchecked, English numbers will be converted to Arabic numbers.

Preserve Numbers

When checked numbers will not be converted.

Force Fix

RTL Text Mesh Pro does not fix texts that start with English characters. Checking this checkbox forces RTL TextMeshPro to fix the text even when it starts with English character. Multiline English texts will have problem on components that have ForceFix checked.

Fix Tags

When checked, RTL Text Mesh Pro will try to fix rich text tags.

Known Issues

  • InputField, Dropdown (and anything that was designed to work with TextMeshProUGUI script) will not work unless you do these steps below.
    Why it doesn't work? We need to override the text property of TextMeshProUGUI. But the text property is not defined virtual. You need to manually make the property virtual.
    • Open TMP_Text.cs from TextMeshPro source code
    • add virtual keyword to text property.
      Text
    • Open RTLTextMeshPro.cs and uncomment the top line where it says //#define RTL_OVERRIDE
    • Now you can use InputFields and Dropdowns.

Contribution

All contributions are welcomed. Just make sure you follow the project's code style.

Contact: [email protected]