Provided by: fp-ide-3.0.4_3.0.4+dfsg-23_amd64 bug

NAME

       fp - Free Pascal Compiler (FPC) integrated development environment

SYNOPSIS

       fp [options] [sourcefile]

DESCRIPTION

       This  binary  is  the  integrated  development  environment of the Free Pascal Compiler (FPC) which is an
       advanced Turbo Pascal and Delphi (7.0) compatible multitarget Pascal compiler. The compiler engine is not
       based on GCC, but is completely standalone.

       The  compiler  uses  LD(1)  and  can  use  AS(1) (see parameter -Aas), but also has its own binary object
       writer.

       The current main targets are Go32V2  (Dos  DJGPP  extender),  Freebsd,  Linux,  MacOS,  MacOSX,  MorphOS,
       Netware,  OS/2  and  Win32.   The  other targets (M68K compilers for Atari and Amiga) are either based on
       older versions of the compiler or are still in development.

       This manpage is meant for quick-reference only. FPC comes with a great (2000+  pages)  manual,  which  is
       updated constantly, while this man page can be out of date.

Usage

       The user interface of the IDE has been designed to be similar to Turbo Pascal.  It provides the user with
       a user friendly, but rather powerful editor, an extensive on-line help system and a debugger.

       A text mode windowing system is the base of the user interface. The mouse is supported, but  most  people
       will  use  the keyboard. The user will usually open a few text editor windows in which he will design his
       program, during which he can regularly check and debug through the use of hot keys. The high speed of the
       compiler ensures that programmers can do this often and therefore allows speedy development of code.

Help files

       No  help  files  are  provided  by  default. The user must download the Free Pascal documentation in HTML
       format and install it into the IDE using the Help->Files menu.  Turbo  Pascal  .tph  files  can  also  be
       installed in this menu and can be useful for source code that ships with .tphfilesasdocumentation.

Character sets

       The  IDE  has  been  designed  for VGA text mode fonts. These fonts allow visually more interresting text
       modes than the the VT100 fonts normally used on Unix systems and also more portable, since most operating
       systems use VGA character sets for their text modes.

       When  running on a VT100 compatible terminal, some emulation will occur. Internally the IDE will think it
       is running on a VGA text mode font (most likely code page 850), while all characters will (in the case of
       code page 850) be converted to Latin-1 and VT100 alternate character set characters.

       The  Linux  console  can  do  VGA fonts and therefore the IDE can be viewed as it was intended on it. The
       Linux console mode supports the all of the VGA character set through the /dev/vcsa* devices and  most  of
       it  through  normal  escape  sequences.  To  prevent  bad  user experiences, the IDE has been made rather
       aggressive in using VGA character sets. First it will determine the actual console number you are running
       on  (even  if you run on a pty, like in Midnight Commander). Then the IDE will open the /dev/vcsa* device
       belonging to that console. If permission is denied the IDE will call the grab_vcsa utility,  which  is  a
       setuid root utility which will grant permissions to the vcsa device.

       In  case the vcsa device is not available, the IDE will send escape codes to enable the VGA font. In this
       mode a few characters in the low 32 ascii positions are unavailable, but mainly since  the  full  set  of
       line drawing characters is available the user will notice few differences.

       The  Linux  frame  buffer  device and the Free Pascal IDE are an excellent combination.  With fbdev it is
       possible to use text mode resolutions higher than the normal 80x25, which allows the programmer to see  a
       lot more code at a time.

       The Linux console allows the user to load user defined fonts. If you do this, such a font must have a VGA
       styled layout, i.e. code page 437/850/... (Note that this does not mean your file system has to use  such
       an  encoding,  the  Linux console handles the conversion from ISO-8859-1, UTF-8 or whatever to the font.)
       Since the default fonts have a code page 437 layout, only users that have experimented  with  fonts  will
       have to take care here.

       The  IDE recognizes the environment variable CONSOLEFONT_CP in which you can specify the code page of the
       console font. Recognized values are currently "cp437" and "cp850".  If you do not set this variable  code
       page 437 will be assumed. Currently, if you use code page 850 without setting the variable there won't be
       a huge impact at this time, the characters that the IDE uses exist in both code pages.

       Note: KOI8-R/KOI8-U fonts have all required characters, but the line drawing characters are  not  in  the
       right positions. We may support this in the future, but currently do not.

Keyboard

       Unix  keyboard  handling  is a complicated matter because not all key combinations generate escape codes,
       different terminal emulators generate different escape codes,  and  some  key  combinations  may  trigger
       actions in the X11 Window manager.

       Because  the  Free  Pascal  IDE's  user  interface  is  designed to be similar to Turbo Pascal, including
       keyboard commands, you may experience one of the above  situations.   Some  alternative  keys  have  been
       added, and perhaps more will have to be added in the future.

       When running on the Linux console, the keyboard is reprogrammed for full functionality.

       Here are some common problems you may encounter and possible work-arounds:

       Problem: Selecting text with shift+arrow keys does not work.

       Solution: Use the mouse

       Solution:  Use  "ctrl+k b" to mark start of block,"ctrl+k e" to mark end of block, "ctrl+k h" to hide the
       block.

       Problem: Cut/Copy/Paste keys do not work.

       Solution: Go to Options->Environment->Keyboard & mouse and enable  the  Microsoft  styled  Cut/Copy/Paste
       keys.

       Solution: Use the menu bar.

       Problem: Alt key does not work.

       Solution:  Press  Escape  first,  then  the  key without alt. Note that this is not possible on the Linux
       console, but the Alt key does work there.

       If for whatever reason the reprogrammed Linux console keyboard is not  restored  to  the  original  state
       after  exit  (IDE  crash?),  you  can  do something like "/etc/init.d/kbd start" to reprogram it into its
       normal behaviour.

AUTHORS

       Free Pascal development team (see http://www.freepascal.org)

SEE ALSO

       grab_vcsa fpc fpc.cfg(5) ppdep(1) ppudump(1) ppumove(1) ptop(1) h2pas(1) ld(1) as(1)