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 / unix / Perguntas / 487245
Accepted
merlin2011
merlin2011
Asked: 2018-12-11 17:05:15 +0800 CST2018-12-11 17:05:15 +0800 CST 2018-12-11 17:05:15 +0800 CST

É possível digitar μ na linha de comando do bash sem copiar e colar?

  • 772

Isso pode parecer uma pergunta um pouco estranha, mas me ocorreu que ao digitar um comando como o seguinte, sempre tenho que copiar e colar o caractere da Wikipedia .

echo '5 μs' >> /tmp/Output

Existe uma maneira de inserir esse caractere diretamente usando uma sequência de escape no atalho de teclado em um teclado inglês padrão?

Por exemplo, em Vim, pode-se fazer C-k,m*para produzir esse caractere.

command-line keyboard-shortcuts
  • 3 3 respostas
  • 3802 Views

3 respostas

  • Voted
  1. Best Answer
    user232326
    2018-12-11T22:04:03+08:002018-12-11T22:04:03+08:00

    Sim, existem pelo menos essas quatro (cinco?) maneiras:

    1. AltGr
      Faça o layout do seu teclado English (international AltGr dead keys).
      Então a chave certa Alt é a AltGrchave. Pressionar AltGr- mirá gerar um µ. Muitas outras teclas também geram outros caracteres: AltGr-s para ße Shift-AltGr-s para §.

      Existe um layout de teclado separado para o console (os verdadeiros consoles em AltCtrlF1até F6) e um para a GUI no X. A mudança depende da sua distribuição (CentOS, Fedora, Debian, etc.) e do gerenciador de exibição (gnome, kde, xfce , etc). Por exemplo, a instalaçãoxfce4-xkb-plugin permitirá que um botão em um painel configure o teclado e alterne entre vários layouts de teclado para X no XFCE.

    2. Compose
      Faça de alguma chave a Composechave. Então, apertando Compose, soltando, apertando /, soltando, e então uvai gerar um µ.

      A definição de uma Composetecla geralmente é feita com xkbou com um applet de layout de teclado.
      Por exemplo, no Gnome geralmente está disponível na seção Região e Idioma , ou talvez, Mudar o layout do teclado facilmente .

    3. Unicode
      Existe uma maneira genérica de digitar qualquer caractere Unicode (se seu console suportar). Sim, qualquer ponto de código dos 1.111.998 caracteres possíveis (visível se sua(s) fonte(s) puderem desenhá-los). Pressione, como um acorde (ao mesmo tempo) ShiftCtrlu, solte-os (Provavelmente, aparecerá um u̲ sublinhado), depois digite b5qual é o codepoint Unicode (sempre em Hex) para o caractere. E para finalizar, digite espaço ou digite (pelo menos).

    4. Readline
      Em um prompt do bash (conforme você marcou a pergunta) é possível usar readline para gerar um µ ( mu).

       bind '"\eu": "µ"'
      

      Ou adicione a linha:

       "\eu": "µ"
      

      to ~/.inputrc, leia-o com Alt- x Alt- rou inicie um novo shell bash (execute bash) e quando você digitar:

      Alt-u

      Um µaparecerá.

    5. Método de entrada
      Provavelmente demais para uma resposta curta como essa.


    Um erro: tecnicamente, o caractere solicitado na pergunta era Unicode \U3bc, enquanto esta resposta forneceu soluções para \Ub5. Sim, eles são diferentes, erro meu, desculpe.

     $ unicode $(printf '\U3bc\Ub5')
     U+03BC GREEK SMALL LETTER MU
     UTF-8: ce bc UTF-16BE: 03bc Decimal: μ Octal: \01674
     μ (Μ)
     Uppercase: 039C
     Category: Ll (Letter, Lowercase)
     Unicode block: 0370..03FF; Greek and Coptic
     Bidi: L (Left-to-Right)
    
     U+00B5 MICRO SIGN
     UTF-8: c2 b5 UTF-16BE: 00b5 Decimal: µ Octal: \0265
     µ (Μ)
     Uppercase: 039C
     Category: Ll (Letter, Lowercase)
     Unicode block: 0080..00FF; Latin-1 Supplement
     Bidi: L (Left-to-Right)
     Decomposition: <compat> 03BC
    

    E tecnicamente, as únicas soluções válidas são os números 3 e 4. Em 3, o número Unicode pode ser alterado de b5para 3bcpara obter esse caractere grego . Em 4 basta copiar o caractere correto e pronto.

    Não em minha defesa, mas

    1. Ambos b5e 3bctêm como Maiúsculas 39c. Então, ambos são as minúsculas de MU.
    2. Ambos parecem muito, muito semelhantes (provavelmente o mesmo glifo da fonte):

    insira a descrição da imagem aqui

    Alternativas.

    1. AltGr

      É bem possível e já feito alterando o AltGr-g (com xkb) para:

       key <AC05>  { [         g,          G,       dead_greek,   dead_greek ]};
      

      E, em seguida, digitando AltGr-g mpara obter um verdadeiro mu grego.

    2. Compor

      A tabela Compose está incorreta, até mesmo o arquivo Greek Compose (/usr/share/X11/locale/el_GR.UTF-8/Compose) lista:

       <Multi_key> <slash> <u>                 : "µ"   mu
       <Multi_key> <u> <slash>                 : "µ"   mu
       <Multi_key> <slash> <U>                 : "µ"   mu
       <Multi_key> <U> <slash>                 : "µ"   mu
      

      Essas composições como Greek, que não são.

      A solução correta para compose é incluir um ~/.XCompose para grego e reiniciar.

    3. Unicode

      Funciona como postado, com número unicode3bc

    4. Leia a linha

      Funciona como postado, altere o caractere efetivo para qualquer desejado.

    • 14
  2. jasonwryan
    2018-12-11T17:08:51+08:002018-12-11T17:08:51+08:00

    Se você habilitar sua tecla de composição , você pode imprimir este símbolo com a compose/usequência, assim: µ

    A gama completa de símbolos disponíveis e suas respectivas sequências de teclas estão documentadas no wiki do Ubuntu .

    • 4
  3. JdeBP
    2018-12-12T02:56:35+08:002018-12-12T02:56:35+08:00

    Usando métodos de entrada

    Os métodos de entrada do arquivo CIN podem ser usados ​​no X11 e nos meus terminais virtuais de espaço do usuário. Um dos comumente colecionados, greek.cin, tem o caráter mu. Basta digitar m(minúsculas) e é a única conversão.

    Pode-se modificar greek.cinpara adicionar micro, fornecendo uma segunda conversão, embora visualmente seja bastante confuso, dificultando a seleção do correto durante a seleção de conversão, se ambos mapearem de m. Uma conversão melhor seria micromapeada para U+00B5:

    micro μ

    Usando o grupo secundário comum da ISO 9995

    Seu mapa de teclado X11 ou seu terminal virtual pode não implementar isso, mas se o fizer, há uma sequência de teclas padrão independente do país (de dois acordes de teclas) para o caractere mu definido pela ISO/IEC 9995: ⇨ Group 2 SelectB07

    • ⇨ Group 2 Selecté convencionalmente o acorde ⇧ Level 2 Shift+ ⇮ Level 3 Shiftporque a especificação USB HID e outras não possuem um código para uma tecla adequada ⇨ Group 2 Selecte tal tecla não existe na maioria dos teclados.
    • ⇮ Level 3 Shifté geralmente gravado ⌥ Optionou ⇮ AltGrem teclados de 105/106/107/109 teclas ou ⎇ Altem teclados de 104 teclas.
    • B07 é a notação padrão ISO/IEC 9995 para uma posição física na linha "B" e coluna "07", e a chave geralmente é gravada M.

    Quando implementado, este chamado grupo secundário comum da ISO/IEC 9995 não deve variar de acordo com o layout do país selecionado e está sempre disponível.

    No entanto, não existe uma sequência de grupo secundário comum para o caractere de microprefixo.

    Usando qualquer acorde definido em seu layout de teclado

    As especificidades dos layouts de teclado estão além do escopo desta resposta, e há muitas respostas aqui lidando com elas.

    Pré-requisitos:

    Existe um layout de teclado para aplicativos X11, existe um layout de teclado possivelmente relacionado para terminais virtuais do kernel (se o seu sistema operacional tiver), e existem layouts de teclado para terminais virtuais de espaço do usuário (se você estiver usando). Os layouts geralmente fornecem caracteres como um acorde com ⇧ Level 2 Shiftou ⇮ Level 3 Shiftem conjunto com uma tecla do teclado principal.

    Além disso, alguns mapas de teclado X11 definem (como um adendo opcional) uma tecla de composição que inicia sequências de teclas (de acordes de várias teclas) que mapeiam para esses caracteres. No conjunto de composição X11 convencional, conforme documentado por David Monniaux anos atrás , o caractere mu é a sequência Compose M Uou a sequência Compose / U. Observe que ele é confundido com o caractere de micro prefixo.

    Consulte seus mapas de teclado VT e X11 para obter informações sobre qual acorde está mapeado, se houver. Verifique sua configuração para saber se você ativou a opção de composição de chave no X11.

    Exemplos:

    Os mapas de teclado de terminal ch, de, it, nle novirtual no FreeBSD fornecem o caractere mu como o acorde ⇮ Level 3 Shift+B07 ( M):

    % sed -n -e '2,5p;/0xb5/p' /usr/share/vt/keymaps/de.kbd /usr/share/vt/keymaps [pts/4.10009.1]
    #alt
    # scan cntrl alt alt cntrl lock
    # código base shift cntrl shift alt shift cntrl shift state
    #------------------------------------------------- -----------------
      050 'm' 'M' cr cr 0xb5 0xb5 cr cr C
    %

    Mas outros mapas ou não o possuem ou definem um acorde diferente. No frmapa do teclado é ⇧ Level 2 Shift+C12 (EUROPE1):

    % sed -n -e '2,5p;/0xb5/p' /usr/share/vt/keymaps/fr.kbd /usr/share/vt/keymaps [pts/4.10011.1]
    #alt   
    # scan cntrl alt alt cntrl lock
    # código base shift cntrl shift alt shift cntrl shift state
    #------------------------------------------------- -----------------
      043 '*' 0xb5 nop nop '#' '~' nop nop O
    %

    E não é mapeado no ukmapa do teclado. Nem nenhum deles tem o caractere de micro prefixo.

    Outros métodos

    Outros métodos são específicos para bibliotecas de manipulação de entrada do aplicativo ou para emuladores de terminal específicos, enquanto os métodos de entrada e mapas de teclado X11/VT não são específicos do aplicativo.

    Alguns emuladores de terminal fornecem outras maneiras de inserir caracteres, por seus pontos de código Unicode. É claro que o Readline pode ser configurado para mapear sequências de entrada para esse caractere, assim como o ZLE. E você já mencionou o VIM na pergunta.

    Leitura adicional

    • Jonathan de Boyne Pollard (2018). " recursos terminais ". Guia de no . Programas.
    • Jonathan de Boyne Pollard (2018). Digitando o lema do Vietnã em um teclado ISO 9995-3 . conjunto de ferramentas nosh. Programas.
    • Jonathan de Boyne Pollard (2018). Métodos de entrada japoneses em terminais virtuais nosh de espaço de usuário . conjunto de ferramentas nosh. Programas.
    • Onde as associações de teclas de composição padrão são armazenadas?
    • Alterando o layout/mapeamento do teclado no console (tty) e no X de uma maneira agnóstica do X/console?
    • 3

relate perguntas

  • O comando ip suporta curingas?

  • Qual é a interface recomendada para um utilitário que requer muitos parâmetros? [fechado]

  • Execute o aplicativo X remotamente, execute a GUI no host remoto [fechado]

  • Fazendo mysql CLI me pedir uma senha interativamente

  • Pub / sub de linha de comando sem um servidor?

Sidebar

Stats

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

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    ssh Não é possível negociar: "nenhuma cifra correspondente encontrada", está rejeitando o cbc

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    Como descarregar o módulo do kernel 'nvidia-drm'?

    • 13 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Wong Jia Hau ssh-add retorna com: "Erro ao conectar ao agente: nenhum arquivo ou diretório" 2018-08-24 23:28:13 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Bagas Sanjaya Por que o Linux usa LF como caractere de nova linha? 2017-12-20 05:48:21 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

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