How can one locate the Unicode values for subscript letters in the alphabet?

While I have uncovered a few letters, my search continues for the elusive "c", "m", and "p". Is it possible to locate them as well?

Answer №1

Have you checked out the wikipedia page about Unicode subscripts and superscripts? It seems like these characters are scattered across various ranges, and not all of them are readily available.

For easy copying and pasting, the Unicode standard includes complete sets of sub- and super-scripts for numbers and common mathematical symbols ( ⁰ ¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹ ⁺ ⁻ ⁼ ⁽ ⁾ ₀ ₁ ₂ ₃ ₄ ₅ ₆ ₇ ₈ ₉ ₊ ₋ ₌ ₍ ₎ ), a full collection of superscript Latin lowercase alphabet letters (excluding q) ( ᵃ ᵇ ᶜ ᵈ ᵉ ᶠ ᵍ ʰ ⁱ ʲ ᵏ ˡ ᵐ ⁿ ᵒ ᵖ ʳ ˢ ᵗ ᵘ ᵛ ʷ ˣ ʸ ᶻ ), a limited selection of uppercase Latin alphabet characters ( ᴬ ᴮ ᴰ ᴱ ᴳ ᴴ ᴵ ᴶ ᴷ ᴸ ᴹ ᴺ ᴼ ᴾ ᴿ ᵀ ᵁ ⱽ ᵂ ), a small number of subscripted lowercase letters ( ₐ ₑ ₕ ᵢ ⱼ ₖ ₗ ₘ ₙ ₒ ₚ ᵣ ₛ ₜ ᵤ ᵥ ₓ ), and some Greek letters ( ᵅ ᵝ ᵞ ᵟ ᵋ ᶿ ᶥ ᶲ ᵠ ᵡ ᵦ ᵧ ᵨ ᵩ ᵪ ). Keep in mind that because these characters come from different ranges, they may differ in size and position based on the font being used.

Answer №2

To get the characters from the Wikipedia page mentioned in another response, simply copy them and then use Python for further processing

characters = '⁰ ¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹ ⁺ ⁻ ⁼ ⁽ ⁾ ₀ ₁ ₂ ₃ ₄ ₅ ₆ ₇ ₈ ₉ ₊ ₋ ₌ ₍ ₎ ᵃ ᵇ ᶜ ᵈ ᵉ ᶠ ᵍ ʰ ⁱ ʲ ᵏ ˡ ᵐ ⁿ ᵒ ᵖ ʳ ˢ ᵗ ᵘ ᵛ ʷ ˣ ʸ ᶻ ᴬ ᴮ ᴰ ᴱ ᴳ ᴴ ᴵ ᴶ ᴷ ᴸ ᴹ ᴺ ᴼ ᴾ ᴿ ᵀ ᵁ ⱽ ᵂ ₐ ₑ ₕ ᵢ ⱼ ₖ ₗ ₘ ₙ ₒ ₚ ᵣ ₛ ₜ ᵤ ᵥ ₓ ᵅ ᵝ ᵞ ᵟ ᵋ ᶿ ᶥ ᶲ ᵠ ᵡ ᵦ ᵧ ᵨ ᵩ ᵪ'
for c in characters.split():
    print(c + '=' + hex(ord(c)))

⁰=0x2070 ¹=0xb9 ²=0xb2 ³=0xb3 ⁴=0x2074 ⁵=0x2075 ⁶=0x2076 ⁷=0x2077 ⁸=0x2078 ⁹=0x2079 ⁺=0x207a ⁻=0x207b ⁼=0x207c ⁽=0x207d ⁾=0x207e

₀=0x2080 ₁=0x2081 ₂=0x2082 ₃=0x2083 ₄=0x2084 ₅=0x2085 ₆=0x2086 ₇=0x2087 ₈=0x2088 ₉=0x2089 ₊=0x208a ₋=0x208b ₌=0x208c ₍=0x208d ₎=0x208e

ᵃ=0x1d43 ᵇ=0x1d47 ᶜ=0x1d9c ᵈ=0x1d48 ᵉ=0x1d49 ᶠ=0x1da0 ᵍ=0x1d4d ʰ=0x2b0 ⁱ=0x2071 ʲ=0x2b2 ᵏ=0x1d4f ˡ=0x2e1 ᵐ=0x1d50 ⁿ=0x207f ᵒ=0x1d52 ᵖ=0x1d56 ʳ=0x2b3 ˢ=0x2e2 ᵗ=0x1d57 ᵘ=0x1d58 ᵛ=0x1d5b ʷ=0x2b7 ˣ=0x2e3 ʸ=0x2b8 ᶻ=0x1dbb

ᴬ=0x1d2c ᴮ=0x1d2e ᴰ=0x1d30 ᴱ=0x1d31 ᴳ=0x1d33 ᴴ=0x1d34 ᴵ=0x1d35 ᴶ=0x1d36 ᴷ=0x1d37 ᴸ=0x1d38 ᴹ=0x1d39 ᴺ=0x1d3a ᴼ=0x1d3c ᴾ=0x1d3e ᴿ=0x1d3f ᵀ=0x1d40 ᵁ=0x1d41 ⱽ=0x2c7d ᵂ=0x1d42

ₐ=0x2090 ₑ=0x2091 ₕ=0x2095 ᵢ=0x1d62 ⱼ=0x2c7c ₖ=0x2096 ₗ=0x2097 ₘ=0x2098 ₙ=0x2099 ₒ=0x2092 ₚ=0x209a ᵣ=0x1d63 ₛ=0x209b ₜ=0x209c ᵤ=0x1d64 ᵥ=0x1d65 ₓ=0x2093

ᵅ=0x1d45 ᵝ=0x1d5d ᵞ=0x1d5e ᵟ=0x1d5f ᵋ=0x1d4b ᶿ=0x1dbf ᶥ=0x1da5 ᶲ=0x1db2 ᵠ=0x1d60 ᵡ=0x1d61

ᵦ=0x1d66 ᵧ=0x1d67 ᵨ=0x1d68 ᵩ=0x1d69 ᵪ=0x1d6a

Answer №3

import sys
# running from QtConsole on Windows due to unicode support in Cmd console
# Best viewed with monospace font like "DejaVu Sans Mono" for superscripts/subscripts
# "Consolas" works, but some characters may be missing
# Presently, "Courier" has the weakest support

if int(sys.version[0]) != 3:
    print('Aborted: Python 3.x required')
    sys.exit(1)

def table():
    unicode_map = {
         #           superscript     subscript
        '0'        : ('\u2070',   '\u2080'      ),
        '1'        : ('\u00B9',   '\u2081'      ),
        '2'        : ('\u00B2',   '\u2082'      ),
        '3'        : ('\u00B3',   '\u2083'      ),
        '4'        : ('\u2074',   '\u2084'      ),
        '5'        : ('\u2075',   '\u2085'      ),
        '6'        : ('\u2076',   '\u2086'      ),
        '7'        : ('\u2077',   '\u2087'      ),
        '8'        : ('\u2078',   '\u2088'      ),
        '9'        : ('\u2079',   '\u2089'      ),
        # more mappings here...
    }

    keys = sorted(unicode_map.keys())

    for key in keys:
        spr = "X" + unicode_map[key][0] 
        sub = "X" + unicode_map[key][1]        
        if (spr == "X?"): spr = ""
        if (sub == "X?"): sub = ""
        print('%-15s %s %s' % (key, spr, sub))

table()

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

1. "Ensuring the URL of a New Tab Using WDIO"2

During my testing scenario: Navigate to link1 Click a button Open a new tab with link2 How should I verify the link2? I attempted using assert(browser).toHaveUrlContaining(''), but it only verified the link1, causing my test to fail. ...

TypeScript Yup schema validation combined with the power of Type Inference

I currently have a unique data structure as shown below: type MyDataType = | { type: "pro"; content: { signedAt: string; expiresOn: string }; } | { type: "default" | "regular"; content: { signed ...

Ways to remove the uploaded document

I have been tasked with uploading a file. The file comes with a remove button, which can be pressed to delete it. Below is the code I used: The code snippet is as follows: <div id="main"> <p id="addfile1">Add File</p> <div id ...

Using a uibCollapse within a nested directive element may not function as expected

Whenever I try to click on my custom directive, the elements that are supposed to expand remain collapsed. To ensure that the click event is actually triggered, I have specified a size in the css for the .btn class. // index.html <body ng-controller=" ...

Angular factory transforming service

I am looking to transform the 'i18n' function into a factory in order to return a value instead of just setting it. Any suggestions or tips would be greatly appreciated! services.factory('i18nFactory', function() { var language = ...

Retrieve the initial element from a JSON object to identify errors, without being dependent on its specific key name

Utilizing AngularJS, my JSON call can result in various errors. Currently, I am handling it like this: $scope.errors = object.data.form.ERRORS or $scope.errors = object.data.system.ERRORS However, in the future, 'form' or 'system' ...

jQuery causing trouble with AJAX in Rails

Currently, I am fetching a list of users from the controller side and generating the HTML code to append it. This is how I wrote the code: $.ajax({ type : "get", contentType : "application/json; charset=utf-8", url : "/users/sear ...

Certain hyperlinks are refusing to open within an embedded iframe

I'm currently facing an issue with finding a solution for a simple problem. I am in the process of developing a portfolio plugin and one of the requirements is to showcase projects within an iframe to demonstrate their responsive layout. However, I&ap ...

The onClick() handler within the map function is erroneously altering the state of every element rather than just the element that was clicked

Currently, I am working on a Next.js website that focuses on multiple choice questions (MCQs) and answers. Initially, only the questions are displayed with the title and options. There is a feature where a button allows users to reveal the answer to a sp ...

Making a switch from one image to another - JavaScript

I need a solution to swap out an image that is used in multiple locations on a webpage. Consider this sample HTML page: <html> <head> </head> <body> <img id="1" src="example.com/img/1889.png"> <d ...

How to apply a series of spaces using span/tspan with jquery/javascript

Check out this fiddle: http://jsfiddle.net/jzLu4toe/3/ <span id='tghj'></span> $('#tghj').text('Hey There'); I'm facing an issue where I need to insert multiple spaces inside a span element. ...

Deactivate the button when submitting the form

Is there a way to disable a button on a form submission in order to prevent users from submitting multiple times? I attempted to disable the button with JavaScript using onclick, but encountered an issue where the button remained disabled if client side v ...

JavaScript validation for radio buttons that are grouped together

Need help with a JavaScript validation issue regarding grouped radio buttons named optionRadios1 to 5. I'm trying to validate them before submitting the form, but my code isn't working as expected and still allows the form submission. Below is t ...

Finding the scope of dynamically generated fields in AngularJS has proven to be quite challenging

I'm currently working on creating a dynamic form where users can add input fields by clicking a button. However, I am facing issues with fetching the value of the input field in the controller. Below is my form: <div ng-repeat="skill in skill_set" ...

Equivalent of SQL Select in MongoDB with node.js

As a newcomer to node.js and mongodb, I find it frustrating that querying data with 'SELECT * FROM table' in php produces an array or array of objects, while in node and mongo, it requires so much unnecessary code. To simplify this process, I cre ...

Having trouble making an AJAX request work in AngularJS?

Just dipped my toes into the world of Angular (only a few hours in). Managed to tweak the demo to get close to what I need, but hitting a roadblock with my AJAX request. After trying a variety of fixes, one puts me in an endless loop (discovered that&apos ...

Child_process module spawn method in Node.js

When I attempt to play an audio stream using the mpg123 command, everything works perfectly fine. I have also implemented a method to terminate the process successfully. However, I am struggling to retrieve output from the executed command. Despite follow ...

Javascript function failing to execute upon page load

I don't have much experience with JavaScript, but I found the following code in a .htm file. The function doesn't seem to be triggering when it should; It is supposed to activate when the page is directly opened i.e www.site.com/12345.htm This ...

JavaScript takes the spotlight before CSS

Currently experiencing this issue in Chrome, although Firefox seems to be working fine so far. Here is a greatly simplified version of the problem: HTML: <div class="thumbnail"> <a href='#' id="clickMe">Click me!</a> </d ...

Revising Your Task Checklist with React

I encountered an issue while attempting to update the value retrieved from Addlist. Unfortunately, my solution isn't working as expected. Additionally, clicking on the '+' button without entering any text results in an empty list being creat ...