Página 1 de 3

problema com acentuação no xHarbour

Enviado: 13 Jan 2016 13:27
por porter
ola pessoal, faz tempo que estou tentando resolver problema com acentuação, os caracteres ficam completamente diferente, o meu editor é o
Notepad++ e a formatação no editor é a codificação em ANSI, na entrada principal do sistema estou usando os dois comandos abaixo, nao da erro de compilação, mas os caracteres ficam diferentes quando o sistema está sendo executado.

REQUEST HB_CODEPAGE_PTISO
REQUEST HB_CODEPAGE_PT850

xHarbour, windows 7.

problema com acentuação no xHarbour

Enviado: 13 Jan 2016 14:18
por Jairo Maia
Porter, em texto ANSI, tente usar a codificação latina em Espanhol Moderno Windows (ou se preferir: Ansi para Espanhol Moderno). No inicio de sua função MAIN() coloque:

Código: Selecionar todos

REQUEST HB_CODEPAGE_ESMWIN
Hb_SetCodepage( "ESMWIN" )
Veja se vai funcionar.

Poderia usar também a HB_CODEPAGE_PTISO, mas ai teria que inserir uma GT para desabilitar a Compatibilidade de Buffer: HB_GtInfo( HB_GTI_COMPATBUFFER, .F. )

problema com acentuação no xHarbour

Enviado: 13 Jan 2016 14:43
por porter
Porter, em texto ANSI, tente usar a codificação latina em Espanhol Moderno Windows (ou se preferir: Ansi para Espanhol Moderno).
ola Jairo, o meu editor é o Notepad++, na aba Formatar, eu habilitei o Codificação em ANSI, existe várias configurações mas essas configurações que você
sugeriu, não estou localizando.

problema com acentuação no xHarbour

Enviado: 13 Jan 2016 15:03
por Kapiaba

Código: Selecionar todos

REQUEST HB_LANG_PT
REQUEST HB_CODEPAGE_PT850

FUNCTION MAIN()

   HB_LANGSELECT( 'PT' )     // Default language is now Portuguese
   HB_SETCODEPAGE( "PT850" )

   ...

RETURN NIL
Biblioteca do xHarbour:

echo %hdir%\lib\Codepage.lib + >> b32.bc
echo %hdir%\lib\Lang.lib + >> b32.bc

problema com acentuação no xHarbour

Enviado: 13 Jan 2016 15:16
por Jairo Maia
Porter,
Isso não está no editor NotePad++. Ele como você disse já está configurado para ANSI. As duas linhas que passei acima, você tem que inserir no seu .PRG principal, colocando no início da função MAIN().
Editado:
Porter, veja no exemplo do Kapiaba acima (bem lembrado). Alinha do REQUEST fica acima de FUNCTION MAIN() e a linha Hb_SetCodepage() abaixo da linha FUNCTION MAIN()

Kapiaba,
Tenho a impressão que PT850 funciona corretamente em OEM. Acho que não funciona com ANSI.

problema com acentuação no xHarbour

Enviado: 13 Jan 2016 15:20
por porter
ola Jairo e Kapiaba, inseri os comandos, mas não resolveu, executa mas os caracteres aparecem errados.

problema com acentuação no xHarbour

Enviado: 13 Jan 2016 15:23
por Jairo Maia
Você fez como está no exemplo do Kapiaba, mas inserindo as linhas que passei? Se sim, coloque uma imagem do problema para tentarmos entender...

problema com acentuação no xHarbour

Enviado: 13 Jan 2016 15:36
por porter
ola Jairo, eu tentei da forma que você passou e tambem da forma que o Kapiaba passou, nas duas formas, onde deveria aparecer ã esta aparecendo a letra O com acento ao contrario.

padrão aparece -> padròo (letra ò aparece maiuscula)

obrigado.

problema com acentuação no xHarbour

Enviado: 13 Jan 2016 16:58
por Kapiaba
https://pctoledo.org/forum/viewto ... =4&t=15648

Mostre o que você está fazendo via código. se você acentua no editor, o xHarbour, tem que mostrar igual ao editor, eu uso o EDITPAD .EXE e a acentuação é igual a do editor.

A não ser, que sua versão do xHarbour esteja obsoleta.

abs.

problema com acentuação no xHarbour

Enviado: 13 Jan 2016 17:52
por porter
a versão do xHarbour é:

xHarbour Compiler build 1.2.1 (Simplex) (Rev.6633)

se precisar atualizar eu baixo no www.xHarbour.com ?

problema com acentuação no xHarbour

Enviado: 13 Jan 2016 18:02
por porter
meu codigo está assim:

Código: Selecionar todos

REQUEST HB_LANG_PT
REQUEST HB_CODEPAGE_PT850
FUNCTION MAIN()
HB_SETCODEPAGE( "PT850" )
HB_LANGSELECT( 'PT' )     // Default language is now Portuguese

problema com acentuação no xHarbour

Enviado: 13 Jan 2016 18:22
por Jairo Maia
Olá Porter,

Da minha minha parte vou sugerir o seguinte: Troque tudo isso que você postou que está assim:

Código: Selecionar todos

REQUEST HB_LANG_PT
REQUEST HB_CODEPAGE_PT850
FUNCTION MAIN()
HB_SETCODEPAGE( "PT850" )
HB_LANGSELECT( 'PT' )     // Default language is now Portuguese
Por isso:

Código: Selecionar todos

REQUEST HB_CODEPAGE_ESMWIN
FUNCTION MAIN()
HB_SETCODEPAGE( "ESMWIN" )
E faça o teste para ver como irá se comportar os caracteres de SUAS MENSAGENS próprias no aplicativo.

OBS: Veja que estou me atendo apenas a CODEPAGE (Paginação de código do aplicativo), e sobre LANGSELECT (seleção de linguagem de mensagens nativas de erros do [x]Harbour em tempo de execução) vamos deixar para depois.

problema com acentuação no xHarbour

Enviado: 13 Jan 2016 18:45
por porter
ã (Til) aparece como O (crase)

obrigado Jairo, Kapiaba

problema com acentuação no xHarbour

Enviado: 14 Jan 2016 13:06
por porter
Será que o problema é devido a versao do xHarbour, existe versao mais atualizada que essa ?

xHarbour Compiler build 1.2.1 (Simplex) (Rev.6633)

obrigado.

problema com acentuação no xHarbour

Enviado: 14 Jan 2016 14:10
por Kapiaba
Mostre a linha do programa onde ã (Til) aparece como O (crase).

xhabrour, onde baixar:

http://forums.fivetechsupport.com/viewf ... e474d2377d