• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Evolution

[Resolvido] Compilador Pascal

41 posts in this topic

Gosta de saber se alguém me indica uma interface amigável para usar com o free pascal.

Eu já usei o Geany com o free pascal , mas sempre que eu compilava algum código com acentos ou caracteres sem ser apenas letras ou números por exemplo:

Program Exemplo ;
Begin
writeln ('Este é um programa de exemplo!!');
readln;
End.

Em vez de aparecer o "e" com acento aparecia outro carácter.

Actualmente uso o Pascal Zim mas não gosto muito dele.

Se alguém conhecer outra interface poste o nome ou link, ou se alguém souber como resolver o meu problema com o Geany diga como o fazer.

Edited by nunopicado
Adicionado Pascal Sintax Highlight ao código.
0

Share this post


Link to post
Share on other sites

Deixa-me só fazer uma correcção antes de avançar: O que procuras não é um compilador, mas sim um IDE (isto facilita a busca).

No caso do PascalZIM, nem compilador aquilo tem... Acredito que não gostes, é mesmo muito mau!

Adiante:

Eu pessoalmente uso o IDE Lazarus, que é da mesma equipa do FreePascal, e que usa o FreePascal como compilador.

Este IDE tem a particularidade de ser um RAD IDE, ou trocando por miudos, podes criar rapidamente (e visualmente) aplicações para Windows com ele.

No entanto, quando crias um novo projecto, ele tem a possibilidade de criar um projecto do tipo PROGRAM, e torna-se um editor normal para FreePascal.

Depois, basta que inicies o código colocando a seguinte directiva de compilador:

{$CODEPAGE UTF8}  

Ficaria algo assim:

{$CODEPAGE UTF8}
Program Exemplo ;
Begin
 writeln ('Este é um programa de exemplo!!');
 readln;
End.

E assim os assentos já estão bem.

No fundo o que isto faz é dizer ao compilador em que codificação está o código fonte, para ele saber o que fazer depois.

É possível que usando esta directiva no Geany também funcione, mas pode é não ser UTF8 e sim outra codificação qualquer, isso já depende do IDE.

Edited by nunopicado
0

Share this post


Link to post
Share on other sites

Nuno eu compilei o teu código e ficou assim:

Este ú programa de exemplo!!

Mas o lazarus também dá para trabalhar em linha de comando???

0

Share this post


Link to post
Share on other sites

O Lazarus funciona em Windows (e linux) mas também dá para criar programas de linha de comandos.

Para tal, quando clicas em "NEW PROJECT", aparece-te uma lista de opções de projecto, tens de escolher PROGRAM (a predefinição é APPLICATION, para fazer aplicações para Windows.

Ter ficado mal fui eu que me esqueci de um pormenor! :)

É preciso indicar ao Windows que a página de códigos da linha de comandos (geralmente 850) é igual à do Windows (1252).

Para isso, tens de aceder ao REGEDIT e fazer o seguinte:

1. Procuras a seguinte chave: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]

2. Editas a que disser OEMCP. Provavelmente a tua tem o valor 850. Altera-a para 1252.

3. Reinicias o computador

Depois, com a alteração que te falei no programa, já dará bem!

EDIT: Podes experimentar até só a alteração do Regedit. Se o IDE que usares já funcionar em 1252, nem precisas de mais nada.

O Lazarus é que funciona em UTF8, daí ser necessária aquela directiva.

Edited by nunopicado
0

Share this post


Link to post
Share on other sites

Com o geany

Não queria muito instalar o lazarus mais vai ter mesmo de ser!!

0

Share this post


Link to post
Share on other sites

Com o Geany é possíve que seja necessário outra pagina de códigos, mas não te sei dizer qual.

Com o Lazarus fica assim:

teste10.jpg

0

Share this post


Link to post
Share on other sites

Está na mesma coisa com o lazarus.

Edited by Evolution
0

Share this post


Link to post
Share on other sites

Sim e está tudo na mesma tanto no geany e no lazarus.

Mas no geany já mudou a caracter.

Edited by Evolution
0

Share this post


Link to post
Share on other sites

Alguém me pode explicar o que é um ficheiro (.O)?

E se dá para desactivar essa opção.

0

Share this post


Link to post
Share on other sites

A compilação de um programa em Pascal através do Free Pascal envolve vários passos, e no meio disso são criados ficheiros como o *.o. Não é nenhuma opção, são ficheiros importantes. O executável é independente deles, claro. Mas caso venhas a programar units, terás de andar com esses ficheiros atrás para que os programas que as utilizem possam linkar.

0

Share this post


Link to post
Share on other sites

Eu estou com o mesmo problema que o evolution.

Na escola uso o Pzim mas não gosto muito daquilo, e já a uns tempos que estou a procura de um compilador pascal.

Já usei o Free Pascal mas aparece uns caracteres esquisitos no lugar das letras com acentos e queria saber uma maneira de corrigir isso.

Já tentei o que diz aqui mas não deu.

0

Share this post


Link to post
Share on other sites

Podes utilizar o Free Pascal como compilador e um IDE diferente. Vê aqui aquilo que eu utilizo.

Quanto aos caracteres, o compilador só compila caracteres do Standard ASCII. Acentos e outros fazem parte do Extended ASCII, o qual o compilador não reconhece de forma directa. Para que ele seja compilado, é preciso seguir os passos que o @nunopicado indicou, ou então (e que é um bocado chato) fazer o typecasting dos caracteres. Por exemplo, para obter o texto final "Olá":

writeln('Ol', char(160));
// ou...
writeln('Ol', #160);

Edited by thoga31
0

Share this post


Link to post
Share on other sites

Encontrei um compilador/ide mas e pago.

Chama-se irie pascal mas deve valer o investimento

0

Share this post


Link to post
Share on other sites

NOOON!

Se tens coisas óptimas à borla, para que é que vais gastar 80 dólares?

Usa Free Pascal, moço! Não vai ser esse compilador Irie que te vai resolver a questão dos acentos, se é isso que te preocupa...

Edited by thoga31
0

Share this post


Link to post
Share on other sites

Nesse compilador os acentos estao corretos.

Ja exprimentei a demo e esta bom.

0

Share this post


Link to post
Share on other sites

E vais gastar 80 dólares por causa de meia dúzia de acentos? Really?

Pah, o dinheiro é teu, e se tens assim tanto para esbanjar ao desbarato, força, não serei eu a impedir-te...

0

Share this post


Link to post
Share on other sites

Então mas é que no IDE do Free Pascal os caracteres ficam bem, no linux os caracteres ficam bem só no windows com o lázarus ou com outro IDE é que fica mal.

É um bocado estranho.

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now