Ir ao conteúdo

Tecla de atalho para caracteres no winxp


MithuS

Posts recomendados

Postado

:help: Estou com um probleminha que parece simples, mas não achei solução ainda....Usando o mapa de caracteres no WinXP, posso enxergar a fonte que desejo usar (no meu caso uma fonte Unicode). Eu tenho um programa aqui que não sei quem desenvolveu que não aceita essa fonte.... e para que eu possa utilizar esses caracteres, eu tenho que visualizá-lo pelo mapa de caracteres, copiar e colar, pra cada uma vez e pra cada um caractere. A minha pergunta é:

Existe algum meio no WinXP(de preferência) ou algum outro Windows que atribua uma tecla de atalho para um determinado caractere?? Tipo: Ctrl+Alt+C, seja no word ou em qualquer lugar onde se insira texto, vai aparecer como ©. É isso que quero. Por exemplo.... clicar Ctrl+Alt+Shift+b e resultar um β.

Se alguém souber de algum comando, algo semelhante ou até mesmo algum shareware que coloque esses caracteres com esses atalhos na memória para uso em outros aplicativos, por favor..... aqui isso gera muitas divergências e isso seria quase que definitivo para os nossos problemas.

Grato. :joia:

Postado

É possível fazer o que você quer com o AutoHotkey, um programa de criação de scripts para automação de tarefas.

Segundo o mapa de caracteres, o símbolo de copyright (©) da fonte Arial no conjunto de caracteres Unicode pode ser gerado pressionando-se as teclas ALT + 0169 (esses números têm de ser pressionados no teclado numérico). Esse atalho funciona em qualquer programa. O problema é que atalhos como esse não são fáceis de memorizar e não estão disponíveis para todos os caracteres. Aí é que entra o AutoHotkey. Por exemplo, o script abaixo cria o símbolo © ao pressionar-se a combinação de teclas CTRL + ALT + c:

^!c::
Send, {ASC 0169}
Return

O bom é que o AutoHotkey vem com um compilador, ou seja, um programa que transforma um script (.AHK) em um arquivo executável (.EXE), permitindo assim que ele seja executado mesmo em computadores onde o AutoHotkey não esteja instalado.

Se você quiser, diga-me quais são os caracteres que lhe interessam e eu criarei um script executável para você. Se preferir instalar o programa, posso ajudar-lhe na criação do script. Para o que você quer, não é difícil criar um script, o único requisito é saber inglês, já que a ajuda do programa está nesse idioma.

Postado

É possível fazer o que você quer com o AutoHotkey, um programa de criação de scripts para automação de tarefas.

Segundo o mapa de caracteres, o símbolo de copyright (©) da fonte Arial no conjunto de caracteres Unicode pode ser gerado pressionando-se as teclas ALT + 0169 (esses números têm de ser pressionados no teclado numérico). Esse atalho funciona em qualquer programa. O problema é que atalhos como esse não são fáceis de memorizar e não estão disponíveis para todos os caracteres. Aí é que entra o AutoHotkey. Por exemplo, o script abaixo cria o símbolo © ao pressionar-se a combinação de teclas CTRL + ALT + c:

CODE

^!c::

Send, {ASC 0169}

Return

O bom é que o AutoHotkey vem com um compilador, ou seja, um programa que transforma um script (.AHK) em um arquivo executável (.EXE), permitindo assim que ele seja executado mesmo em computadores onde o AutoHotkey não esteja instalado.

Se você quiser, diga-me quais são os caracteres que lhe interessam e eu criarei um script executável para você. Se preferir instalar o programa, posso ajudar-lhe na criação do script. Para o que você quer, não é difícil criar um script, o único requisito é saber inglês, já que a ajuda do programa está nesse idioma.

--------------------------------------------------------------------------

Ok! Muito legal esse programa e acredito que ele resolva o problema. Lí a ajuda e tem até coisas demais nela...hehehehe....e ainda é GNU....demais!!!

Mas tem um detalhe: não sei se o leigo sou eu ou se é mais complicado do que parece, mas fica fácil atribuir um comando de teclas combinadas para um caractere tipo ASC. No caso do Unicode funciona da mesma maneira?? Dúvida: eu ví alguns caracteres do Unicode e eles têm como código numerações hexadecimais, tipo Alt+198E e pelo menos no teclado (segurando o alt e digitando no teclado numérico) ainda não consegui fazer isso funcionar, mas talvez colocando o código hexadecimal mesmo no código do programa talvez funcione.

Se puderes (ou alguém) me ajudar, principalmente com exemplos de como fazer o código (em Unicode) e gerar o executável, ficarei muito grato. Só por curiosidade, tem essa imagem com alguns dos caracteres que trabalhamos.

Imagem01.JPG

Grato à todos.

Postado
Postado Originalmente por MithuS@17 de fevereiro de 2005, 17:00

Dúvida: eu ví alguns caracteres do Unicode e eles têm como código numerações hexadecimais, tipo Alt+198E e pelo menos no teclado (segurando o alt e digitando no teclado numérico) ainda não consegui fazer isso funcionar, mas talvez colocando o código hexadecimal mesmo no código do programa talvez funcione.

Você está confundido o código do caractere com o atalho de teclado correspondente. Verifique no mapa de caracteres que nem todos eles têm uma combinação de teclas como atalho. Por exemplo, o símbolo de copyright tem como código U+00A9 e como atalho ALT+0169 ; já a letra grega ômega tem como código U+03A9 e não tem atalho disponível.

O AutoHotkey não aceita esse código alfanumérico, apenas numérico. Eu descobri no fórum do site do programa um script (abaixo) que lista os caracteres em Unicode e seus respectivos códigos para serem usados com o comando Send. Existem milhares de caracteres em Unicode, mas esse script listará apenas os 9743 primeiros (esse número pode ser facilmente modificado).

Para criar o script, clique na área de trabalho com o botão direito, selecione Novo e clique em AutoHotkey Script. Clique com o botão direito no arquivo criado e depois em Edit script. Copie, cole e salve nele o código abaixo:

SetFormat integer,d ; decimal
cnt = 256

^!u::
Loop 9999
{
code = `{ASC %cnt%`}
Send %cnt%  %code%`n
cnt++
}
Return

Execute o script. Abra o Wordpad, selecione Novo e depois Documento de texto Unicode. Finalmente, aperte a combinação de teclas CTRL+ALT+U para iniciar a listagem dos caracteres. Quando esta terminar, você terá de procurar nela os caracteres que lhe interessam.

Eu gostaria de ajudá-lo a fazer o script e o executável, mas eu não estou conseguindo identificar todos esses caracteres da imagem, já que o tamanho deles está muito pequeno e eles estão colados uns nos outros. O segundo parece ser a letra grega beta, não é isso? Veja como ficaria um script para gerar o beta usando-se as teclas CTRL+ALT+B:

^!b::
Send, {ASC 946}
Return

Postado

Legal Roberto....Esse seu script me ajudou bastante.... inclusive lendo o help do programa, descobri que poderia ser usado o caractere em unicode usando números após os 256 padrão ASC (ou seja, a partir do nº 256 até + - 65555, algo assim). Consegui fazer os scripts para os caracteres que desejo, mas tive outro problema :muro: (espero que possas continuar me ajudando): consigo usar os executáveis perfeitamente bem no word, no notepad, e algum outros programas mais....mas no excel, ele troca os caracteres que não sejam ASC! Isso se repete com o programa que necessito usar. Nesse dito programa, de acordo com o desenvolvedor, existe suporte para fontes unicode, mas na hora da inserção, o caractere que aparece não é o que foi programado no script, mas um outro qualquer (por sinal, o mesmo que aparece no excel). Você sabe de alguma coisa a respeito?

Grato.... :joia:

Postado

Antes, eu tinha tentado gerar a letra grega beta apenas no Wordpad (do Windows). Funcionou corretamente. Agora, tentei fazer o mesmo no bloco de notas e no Writer (do OpenOffice). Não funcionou em nenhum dos dois. Apareceu um caractere estranho no lugar da letra. Não tenho o Excell para testar.

Não faço ideia do porquê de e se é possível contornar esse problema. Será que existe mais de um código para o mesmo caractere? Se sim, como descobrir qual é? Não sei.

O que sei é que existe um método altenativo para gerar um caractere em Unicode com o AutoHotkey. Esse método faz uso de outro comando e usa a área de transferência. Use o script abaixo para ajudá-lo a gerar o comando. Esse script faz parte da ajuda do comando Transform.

^!u::; Control+Alt+U
MsgBox Copy some Unicode text onto the clipboard, then return to this window and press OK to continue.
Transform, ClipUTF, Unicode
Clipboard = Transform, Clipboard, Unicode, %ClipUTF%`r`n
MsgBox The clipboard now contains the following line that you can paste into your script. When executed, this line will cause the original Unicode string you copied to be placed onto the clipboard:`n`n%Clipboard%
return

Como teste, tentei gerar novamente a letra grega beta. Primeiro, abri o Mapa de caracteres e copiei dele o caractere em questão. Depois, executei o script que gerou o seguinte comando para mim:

Transform, Clipboard, Unicode, β

Por fim, colei esse comando em meu script que ficou assim:

^!b::
Transform, Clipboard, Unicode, β
Send, ^v; simula um CTRL+V (para colar o conteúdo do clipboard)
Return

Com este método consegui gerar a letra grega tanto no bloco de notas quanto no Writer, o que não havia conseguido com o outro método. Espero que ele sirva para você também. Há um inconveniente, porém. Como esse comando faz uso da área de transferência, cada vez que se gera um caractere com ele a mesma tem o conteúdo sobrescrito. Se isso for problema, saiba que o AutoHotkey dispõe de recursos que permitem contornar esse inconveniente.

Boa sorte!

  • 1 ano depois...

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...