Re: [fpc-pascal] ReadLine history works in windows/cmd.exe but not in bash/linux
On Wed, 1 Sep 2010 19:30:07 +0200, Dusan Halicky wrote about [fpc-pascal] ReadLine history works in windows/cmd.exe but not in bash/linux: I compiled it in windows (FPC 2.4.0), run it in cmd.exe and I was surprised that history of commands is working out of the box (by pressing arrow UP). That is standard behaviour for most modern shells. Can you help me to make readln history working on linux too? The readln() function has nothing to do with libreadline. The problem you are seeing is due to the shell you are using and the key binding options you have assigned or defaulted to in the shell and/or the terminal emulator. It has nothing to do with FPC. Try: man 1 bash and see how you can set the options you need. -- Regards, Dave [RLU #314465] *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* david.w.n...@ntlworld.com (David W Noon) *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* signature.asc Description: PGP signature ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] ReadLine history works in windows/cmd.exe but not in bash/linux
I compiled it in windows (FPC 2.4.0), run it in cmd.exe and I was surprised that history of commands is working out of the box (by pressing arrow UP). That is standard behaviour for most modern shells. The readln() function has nothing to do with libreadline. The problem you are seeing is due to the shell you are using and the key binding options you have assigned or defaulted to in the shell and/or the terminal emulator. It has nothing to do with FPC. So you are saying, that cmd.exe is monitoring what am I typing, and when test.exe is waiting on `readln(s)` and I press UP, then cmd.exe somehow paste to STDIN what I typed 1 EOL before? Try: man 1 bash and see how you can set the options you need. Can you be more specific? ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] ReadLine history works in windows/cmd.exe but not in bash/linux
On Wed, 1 Sep 2010, Dusan Halicky wrote: I compiled it in windows (FPC 2.4.0), run it in cmd.exe and I was surprised that history of commands is working out of the box (by pressing arrow UP). That is standard behaviour for most modern shells. The readln() function has nothing to do with libreadline. The problem you are seeing is due to the shell you are using and the key binding options you have assigned or defaulted to in the shell and/or the terminal emulator. It has nothing to do with FPC. So you are saying, that cmd.exe is monitoring what am I typing, and when test.exe is waiting on `readln(s)` and I press UP, then cmd.exe somehow paste to STDIN what I typed 1 EOL before? Yes, that is correct. If you run the program twice, you'll see that you can scroll back even to what you typed in the first run of the program; This is clear proof that it is not the program itself which does that. Michael. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] ReadLine history works in windows/cmd.exe but not in bash/linux
If you run the program twice, you'll see that you can scroll back even to what you typed in the first run of the program; This is clear proof that it is not the program itself which does that. Ok. This somehow convinced me. Can I achieve the same thing in bash? ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] ReadLine history works in windows/cmd.exe but not in bash/linux
On Wed, 1 Sep 2010, Dusan Halicky wrote: If you run the program twice, you'll see that you can scroll back even to what you typed in the first run of the program; This is clear proof that it is not the program itself which does that. Ok. This somehow convinced me. Can I achieve the same thing in bash? Not that I know of. But I'm not a bash expert; I use tcsh. Michael ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] ReadLine history works in windows/cmd.exe but not in bash/linux
On Wed, 1 Sep 2010 21:17:04 +0200, Dusan Halicky wrote about Re: [fpc-pascal] ReadLine history works in windows/cmd.exe but not in bash/linux: If you run the program twice, you'll see that you can scroll back even to what you typed in the first run of the program; This is clear proof that it is not the program itself which does that. Ok. This somehow convinced me. Can I achieve the same thing in bash? Not bash itself, but you can call readline() explicitly and achieve the desired effect. Remember that the program and the shell are largely independent under all UNIX systems, including Linux. So, if you want the scrollback capabilities you need to use the appropriate API. -- Regards, Dave [RLU #314465] *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* david.w.n...@ntlworld.com (David W Noon) *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal