AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 1541960
Accepted
Kedar Mhaswade
Kedar Mhaswade
Asked: 2025-02-21 12:49:40 +0800 CST2025-02-21 12:49:40 +0800 CST 2025-02-21 12:49:40 +0800 CST

Programa de linha de comando para gerar uma letra pelo seu nome Unicode?

  • 772

O padrão Unicode define pontos de código e nomes de letras dos sistemas de escrita do mundo. Existe um programa de linha de comando no Ubuntu (Linux) para imprimir letras por seus nomes (difusos) ?

Aqui está o que eu espero de um programa desse tipo (chamado pucc: Imprimir caractere Unicode — imprime o caractere Unicode dado seu nome ou regex):


$> pucc sigma 
ͻ = 037B (greek small reversed lunate *sigma* symbol)
ͼ = 037C (greek small dotted lunate *sigma* symbol)
ͽ = 037D (greek small reversed dotted lunate *sigma* symbol)
Σ = 03A3 (greek capital letter *sigma*)
ς = 03C2 (greek small letter final *sigma*)
σ = 03C3 (greek small letter *sigma*)
...
$> pucc root
؆ = 0606 (arabic-indic cube *root*)
؇ = 0607 (arabic-indic fourth *root*)
√ = 221A (square root)
∛ = 221B (cube *root*)
∜ = 221C (fourth *root*)

...

Entendo que é apenas curl/grepum ping do arquivo de texto Unicode mantido pelo Unicode Consortium e a saída depende da disponibilidade das fontes Unicode no sistema, mas só queria saber se isso já estava disponível como um comando ou se era possível usar o filtro mágico.

command-line
  • 1 1 respostas
  • 115 Views

1 respostas

  • Voted
  1. Best Answer
    terdon
    2025-02-22T00:01:19+08:002025-02-22T00:01:19+08:00

    Acho que você está procurando por uninames, que vem como parte do Unicode::Tusslemódulo Perl. Você pode instalar isso no Ubuntu com:

    sudo apt install cpanminus
    

    Isso instalará a ferramenta de gerenciamento CPAN e você poderá instalar o módulo Unicode::Tussle com:

    cpanm Unicode::Tussle
    

    Agora você deve ter as ferramentas unipropse (entre outras, veja e a seção VEJA TAMBÉM) disponíveis, que permitem que você faça coisas como:uninamesman uniprops

    $ uninames sigma | cat
    Duplicate specification "bmp|BMP|b" for option "bmp"
    uninames: using old UCD v6.0.0; current is v15.0.0
     Ʃ  01A9    LATIN CAPITAL LETTER ESH
        * African
        * lowercase is 0283
        x (greek capital letter sigma - 03A3)
     ͻ  037B    GREEK SMALL REVERSED LUNATE SIGMA SYMBOL
     ͼ  037C    GREEK SMALL DOTTED LUNATE SIGMA SYMBOL
     ͽ  037D    GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL
     Σ  03A3    GREEK CAPITAL LETTER SIGMA
        x (latin capital letter esh - 01A9)
        x (n-ary summation - 2211)
     ς  03C2    GREEK SMALL LETTER FINAL SIGMA
        = stigma (the Modern Greek name for this letterform)
        * not to be confused with the actual stigma letter
        x (greek small letter stigma - 03DB)
     σ  03C3    GREEK SMALL LETTER SIGMA
        * used symbolically with a numeric value 200
     Ϛ  03DA    GREEK LETTER STIGMA
        * apparently in origin a cursive form of digamma
        * the name "stigma" originally applied to a medieval sigma-tau ligature, whose shape was confusably similar to the cursive digamma
        * used as a symbol with a numeric value of 6
        x (roman numeral six late form - 2185)
     ϛ  03DB    GREEK SMALL LETTER STIGMA
        x (greek small letter final sigma - 03C2)
     ϲ  03F2    GREEK LUNATE SIGMA SYMBOL
        = greek small letter lunate sigma (1.0)
        # 03C2 greek small letter final sigma
     Ϲ  03F9    GREEK CAPITAL LUNATE SIGMA SYMBOL
        # 03A3 greek capital letter sigma
     Ͻ  03FD    GREEK CAPITAL REVERSED LUNATE SIGMA SYMBOL
        = antisigma
     Ͼ  03FE    GREEK CAPITAL DOTTED LUNATE SIGMA SYMBOL
        = sigma periestigmenon
     Ͽ  03FF    GREEK CAPITAL REVERSED DOTTED LUNATE SIGMA SYMBOL
        = antisigma periestigmenon
     Ↄ  2183    ROMAN NUMERAL REVERSED ONE HUNDRED
        = apostrophic C
        = Claudian antisigma
        * used in combination with C and I to form large numbers
        * lowercase is 2184
        x (greek capital reversed lunate sigma symbol - 03FD)
     ↄ  2184    LATIN SMALL LETTER REVERSED C
        x (greek small reversed lunate sigma symbol - 037B)
     ∑  2211    N-ARY SUMMATION
        = summation sign
        x (greek capital letter sigma - 03A3)
        x (double-struck n-ary summation - 2140)
     𝚺  1D6BA  MATHEMATICAL BOLD CAPITAL SIGMA
        # <font> 03A3 greek capital letter sigma
     𝛓  1D6D3  MATHEMATICAL BOLD SMALL FINAL SIGMA
        # <font> 03C2 greek small letter final sigma
     𝛔  1D6D4  MATHEMATICAL BOLD SMALL SIGMA
        # <font> 03C3 greek small letter sigma
     𝛴  1D6F4  MATHEMATICAL ITALIC CAPITAL SIGMA
        # <font> 03A3 greek capital letter sigma
     𝜍  1D70D  MATHEMATICAL ITALIC SMALL FINAL SIGMA
        # <font> 03C2 greek small letter final sigma
     𝜎  1D70E  MATHEMATICAL ITALIC SMALL SIGMA
        # <font> 03C3 greek small letter sigma
     𝜮  1D72E  MATHEMATICAL BOLD ITALIC CAPITAL SIGMA
        # <font> 03A3 greek capital letter sigma
     𝝇  1D747  MATHEMATICAL BOLD ITALIC SMALL FINAL SIGMA
        # <font> 03C2 greek small letter final sigma
     𝝈  1D748  MATHEMATICAL BOLD ITALIC SMALL SIGMA
        # <font> 03C3 greek small letter sigma
     𝝨  1D768  MATHEMATICAL SANS-SERIF BOLD CAPITAL SIGMA
        # <font> 03A3 greek capital letter sigma
     𝞁  1D781  MATHEMATICAL SANS-SERIF BOLD SMALL FINAL SIGMA
        # <font> 03C2 greek small letter final sigma
     𝞂  1D782  MATHEMATICAL SANS-SERIF BOLD SMALL SIGMA
        # <font> 03C3 greek small letter sigma
     𝞢  1D7A2  MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL SIGMA
        # <font> 03A3 greek capital letter sigma
     𝞻  1D7BB  MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL FINAL SIGMA
        # <font> 03C2 greek small letter final sigma
     𝞼  1D7BC  MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL SIGMA
        # <font> 03C3 greek small letter sigma
    

    (ele | catestá lá apenas para mostrar a saída aqui porque sem ele, uninamesele é automaticamente direcionado para um pager, dificultando a cópia/colagem)

    Ou para ver informações sobre um personagem específico:

    $ uniprops "final sigma"
    charnames: some short character names may clash in [GREEK, LATIN], for example GAMMA
    U+03C2 ‹ς› \N{GREEK SMALL LETTER FINAL SIGMA}
        \w \pL \p{LC} \p{L_} \p{L&} \p{Ll}
        All Alnum X_POSIX_Alnum Alpha X_POSIX_Alpha Alphabetic Any Assigned Greek Is_Greek ID_Continue Is_IDC Cased Cased_Letter LC Changes_When_Casefolded CWCF
           Changes_When_Casemapped CWCM Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Ll L Gr_Base Grapheme_Base Graph X_POSIX_Graph
           GrBase Grek Greek_And_Coptic InGreek IDC ID_Start IDS Letter L_ Lowercase_Letter Lower X_POSIX_Lower Lowercase Print X_POSIX_Print Unicode Word X_POSIX_Word
           XID_Continue XIDC XID_Start XIDS
    

    Ou

    $ uniprops ς
    charnames: some short character names may clash in [GREEK, LATIN], for example GAMMA
    U+03C2 ‹ς› \N{GREEK SMALL LETTER FINAL SIGMA}
        \w \pL \p{LC} \p{L_} \p{L&} \p{Ll}
        All Alnum X_POSIX_Alnum Alpha X_POSIX_Alpha Alphabetic Any Assigned Greek Is_Greek ID_Continue Is_IDC Cased Cased_Letter LC Changes_When_Casefolded CWCF
           Changes_When_Casemapped CWCM Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Ll L Gr_Base Grapheme_Base Graph X_POSIX_Graph
           GrBase Grek Greek_And_Coptic InGreek IDC ID_Start IDS Letter L_ Lowercase_Letter Lower X_POSIX_Lower Lowercase Print X_POSIX_Print Unicode Word X_POSIX_Word
           XID_Continue XIDC XID_Start XIDS
    

    Como alternativa, você pode tentar o que @mutru sugeriu em um comentário:

    $ curl  http://www.unicode.org/Public/UNIDATA/UnicodeData.txt 2>/dev/null | 
      grep -i sigma | awk -F';' '{printf "%s |0x%s| %c\n", $2, $1, strtonum("0x"$1)}' 
    GREEK SMALL REVERSED LUNATE SIGMA SYMBOL |0x037B| ͻ
    GREEK SMALL DOTTED LUNATE SIGMA SYMBOL |0x037C| ͼ
    GREEK SMALL REVERSED DOTTED LUNATE SIGMA SYMBOL |0x037D| ͽ
    GREEK CAPITAL LETTER SIGMA |0x03A3| Σ
    GREEK SMALL LETTER FINAL SIGMA |0x03C2| ς
    GREEK SMALL LETTER SIGMA |0x03C3| σ
    GREEK LUNATE SIGMA SYMBOL |0x03F2| ϲ
    GREEK CAPITAL LUNATE SIGMA SYMBOL |0x03F9| Ϲ
    GREEK CAPITAL REVERSED LUNATE SIGMA SYMBOL |0x03FD| Ͻ
    GREEK CAPITAL DOTTED LUNATE SIGMA SYMBOL |0x03FE| Ͼ
    GREEK CAPITAL REVERSED DOTTED LUNATE SIGMA SYMBOL |0x03FF| Ͽ
    MATHEMATICAL BOLD CAPITAL SIGMA |0x1D6BA| 𝚺
    MATHEMATICAL BOLD SMALL FINAL SIGMA |0x1D6D3| 𝛓
    MATHEMATICAL BOLD SMALL SIGMA |0x1D6D4| 𝛔
    MATHEMATICAL ITALIC CAPITAL SIGMA |0x1D6F4| 𝛴
    MATHEMATICAL ITALIC SMALL FINAL SIGMA |0x1D70D| 𝜍
    MATHEMATICAL ITALIC SMALL SIGMA |0x1D70E| 𝜎
    MATHEMATICAL BOLD ITALIC CAPITAL SIGMA |0x1D72E| 𝜮
    MATHEMATICAL BOLD ITALIC SMALL FINAL SIGMA |0x1D747| 𝝇
    MATHEMATICAL BOLD ITALIC SMALL SIGMA |0x1D748| 𝝈
    MATHEMATICAL SANS-SERIF BOLD CAPITAL SIGMA |0x1D768| 𝝨
    MATHEMATICAL SANS-SERIF BOLD SMALL FINAL SIGMA |0x1D781| 𝞁
    MATHEMATICAL SANS-SERIF BOLD SMALL SIGMA |0x1D782| 𝞂
    MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL SIGMA |0x1D7A2| 𝞢
    MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL FINAL SIGMA |0x1D7BB| 𝞻
    MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL SIGMA |0x1D7BC| 𝞼
    
    • 3

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve