Evolution Posted December 7, 2012 at 03:46 PM Report #486166 Posted December 7, 2012 at 03:46 PM (edited) 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 December 7, 2012 at 04:11 PM by nunopicado Adicionado Pascal Sintax Highlight ao código.
pmg Posted December 7, 2012 at 03:53 PM Report #486167 Posted December 7, 2012 at 03:53 PM The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!) (by Joel Sposky). Suponho que o charset do teu ficheiro fonte com o código em Pascal e o charset da execução do executável são diferentes. Tens que configurar o teu sistema para o mesmo charset nas duas situações. What have you tried? Não respondo a dúvidas por PM A minha bola de cristal está para compor; deve ficar pronta para a semana. Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!
Evolution Posted December 7, 2012 at 04:21 PM Author Report #486172 Posted December 7, 2012 at 04:21 PM E não me sabes dizer como se faz isso?
nunopicado Posted December 7, 2012 at 04:48 PM Report #486175 Posted December 7, 2012 at 04:48 PM (edited) 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 December 7, 2012 at 04:49 PM by nunopicado "A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!" > Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.
Evolution Posted December 7, 2012 at 04:54 PM Author Report #486177 Posted December 7, 2012 at 04:54 PM 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???
nunopicado Posted December 7, 2012 at 05:05 PM Report #486179 Posted December 7, 2012 at 05:05 PM (edited) 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 December 7, 2012 at 05:09 PM by nunopicado "A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!" > Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.
Evolution Posted December 7, 2012 at 05:09 PM Author Report #486180 Posted December 7, 2012 at 05:09 PM Continua na mesma
nunopicado Posted December 7, 2012 at 05:10 PM Report #486181 Posted December 7, 2012 at 05:10 PM Com qual? Já instalaste o Lazarus? "A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!" > Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.
Evolution Posted December 7, 2012 at 05:11 PM Author Report #486182 Posted December 7, 2012 at 05:11 PM Com o geany Não queria muito instalar o lazarus mais vai ter mesmo de ser!!
nunopicado Posted December 7, 2012 at 05:18 PM Report #486183 Posted December 7, 2012 at 05:18 PM 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: "A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!" > Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.
Evolution Posted December 7, 2012 at 05:27 PM Author Report #486184 Posted December 7, 2012 at 05:27 PM (edited) Está na mesma coisa com o lazarus. Edited December 7, 2012 at 05:27 PM by Evolution
nunopicado Posted December 7, 2012 at 05:36 PM Report #486187 Posted December 7, 2012 at 05:36 PM Com o Lazarus? Chegaste a alterar o regedit e a reiniciar o PC? "A humanidade está a perder os seus génios... Aristóteles morreu, Newton já lá está, Einstein finou-se, e eu hoje não me estou a sentir bem!" > Não esclareço dúvidas por PM: Indica a tua dúvida no quadro correcto do forum.
Evolution Posted December 7, 2012 at 05:47 PM Author Report #486189 Posted December 7, 2012 at 05:47 PM (edited) Sim e está tudo na mesma tanto no geany e no lazarus. Mas no geany já mudou a caracter. Edited December 7, 2012 at 05:49 PM by Evolution
thoga31 Posted December 7, 2012 at 06:39 PM Report #486195 Posted December 7, 2012 at 06:39 PM Usar o Notepad++ para compilar e executar código Pascal (com o FreePascal) Para principiantes, será uma boa opção. Eu pessoalmente uso o Free Pascal com o Notepad++. Se preferires o Lazarus, que também é um bom IDE, segue os conselhos do @nunopicado, que aí eu não te consigo ajudar. Knowledge is free!
Evolution Posted December 7, 2012 at 06:44 PM Author Report #486197 Posted December 7, 2012 at 06:44 PM Já está, estive a tentar todas as codificações e deu com a IBM850.
Evolution Posted December 7, 2012 at 08:14 PM Author Report #486219 Posted December 7, 2012 at 08:14 PM Alguém me pode explicar o que é um ficheiro (.O)? E se dá para desactivar essa opção.
thoga31 Posted December 7, 2012 at 08:34 PM Report #486222 Posted December 7, 2012 at 08:34 PM 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. Knowledge is free!
Evolution Posted December 7, 2012 at 08:42 PM Author Report #486223 Posted December 7, 2012 at 08:42 PM Ok obrigado.
Orgon Posted January 4, 2013 at 05:13 PM Report #489556 Posted January 4, 2013 at 05:13 PM 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.
thoga31 Posted January 4, 2013 at 05:30 PM Report #489557 Posted January 4, 2013 at 05:30 PM (edited) 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 January 4, 2013 at 05:30 PM by thoga31 Knowledge is free!
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now