Difference between revisions of "File extensions"

From Free Pascal wiki
Jump to navigationJump to search
(More precise info about *.rsj extension)
(Add list for Subversion/get ignore info etc.)
Line 2: Line 2:
  
 
Some [[File extension|file extensions]]
 
Some [[File extension|file extensions]]
 
  
 
== Lazarus ==
 
== Lazarus ==
 
+
=== Project files ===
 
  *.lpi  
 
  *.lpi  
 
     Lazarus Project Information file (stored in XML; contains project-specific settings)  
 
     Lazarus Project Information file (stored in XML; contains project-specific settings)  
Line 44: Line 43:
 
     compilation session for a project
 
     compilation session for a project
  
== General ==
+
=== Subversion or Git ===
 +
These files would normally be stored in a repository as an adequate description of a project:
 +
 
 +
*.lpi
 +
*.lpr
 +
*.lfm
 +
*.pas
 +
*.pp
 +
 
 +
These files might contain manually-generated or imported information, or might be regenerated by the IDE or build process. In general, if they have the same basename as the project or a form or unit they're IDE-generated, but in all cases should be reviewed individually:
 +
 
 +
*.inc
 +
*.res
 +
*.lrs
 +
*.rc
 +
*.ico
 +
 
 +
These files are regenerated by the IDE or by a build so do not need to be stored:
 +
 
 +
*.ppu
 +
*.o
 +
*.a
 +
*.lps
 +
*.or
 +
*.rst
 +
*.compiled
 +
 
 +
There's an example .gitignore file at [https://github.com/github/gitignore/blob/master/Global/Lazarus.gitignore].
  
 +
== [[Delphi]] ==
 +
=== Project files ===
 +
*.dfm
 +
    Delphi form module
 +
*.dof
 +
    Delphi project options file
 +
*.dsk
 +
    Desktop configuration
 +
 +
=== Converting Delphi projects ===
 +
Lazarus can convert at least some Delphi project files into its own format.
 +
 +
== Application ==
 +
=== General ===
 
  *.txt
 
  *.txt
 
     Text file
 
     Text file
Line 73: Line 113:
 
     Rich Text Format text file
 
     Rich Text Format text file
  
== Image ==
+
=== Image ===
 
 
 
  *.png
 
  *.png
 
     Portable network graphic
 
     Portable network graphic
Line 93: Line 132:
  
  
== XML ==
+
=== XML ===
 
 
 
  *.xml
 
  *.xml
 
  *.dtd
 
  *.dtd
Line 100: Line 138:
 
  *.xsl
 
  *.xsl
  
== Web ==
+
=== Web ===
 
 
 
  *.html
 
  *.html
 
     Hypertext Markup Language
 
     Hypertext Markup Language
Line 107: Line 144:
 
     Cascading style sheet
 
     Cascading style sheet
  
== Archive ==
+
=== Archive ===
 
 
 
  *.tar
 
  *.tar
 
     tape archive
 
     tape archive
 
  *.zip
 
  *.zip
  
== Database ==
+
=== Database ===
 
 
 
  *.dbf
 
  *.dbf
 
     Database file
 
     Database file
Line 120: Line 155:
 
     Multiple index file
 
     Multiple index file
  
== [[FPSpreadsheet|Spreadsheet]] ==
+
=== [[FPSpreadsheet|Spreadsheet]] ===
 
 
 
  *.ods
 
  *.ods
 
     OpenOffice.org Calc spreadsheet File Format
 
     OpenOffice.org Calc spreadsheet File Format
Line 129: Line 163:
 
     Microsoft Office Open XML Excel File Format  
 
     Microsoft Office Open XML Excel File Format  
  
 
+
== Operating system ==
== [[Delphi]] ==
+
=== Linux and Unix ===
 
 
*.dfm
 
    Delphi form module
 
*.dof
 
    Delphi project options file
 
*.dsk
 
    Desktop configuration
 
 
 
== Linux and Unix ==
 
 
 
 
  *.so  
 
  *.so  
 
     Shared object library
 
     Shared object library
Line 148: Line 172:
 
     Debian Package
 
     Debian Package
 
  *.rpm
 
  *.rpm
     RPM Package Manager  
+
     Red Hat Package Manager  
 
 
==  Mac ==
 
  
 +
===  Mac ===
 
  *.app
 
  *.app
 
     Application bundle
 
     Application bundle
Line 159: Line 182:
 
     Dynamic shared library
 
     Dynamic shared library
  
== Windows ==
+
=== Windows ===
 
 
 
  *.bat
 
  *.bat
 
     Batch file. It's a text file that contains a sequence of commands for a computer operating system.
 
     Batch file. It's a text file that contains a sequence of commands for a computer operating system.

Revision as of 08:54, 23 September 2015

File extensions

Some file extensions

Lazarus

Project files

*.lpi 
   Lazarus Project Information file (stored in XML; contains project-specific settings) 
*.lpr 
   Lazarus Program file; contains Pascal source of main program 
*.lfm 
   Lazarus Form file; contains configuration information for all objects on a form 
   (stored in a Lazarus-specific format; the actions are described by Pascal source code in a corresponding *.pas file) 
*.pas 
   Unit with Pascal code (typically for a form stored in a corresponding *.lfm file) 
*.pp
   Pascal code
*.lrs 
   Lazarus Resource file (this is a generated file; not to be confused with a Windows resource file). 
*.ppu 
   Compiled unit, symbols part.
*.o 
   (1) Compiled unit, code part.
   (2) Compiled code from other compilers (e.g. gcc)
*.or
   object resource, automatically generated from {$R} directive.
*.a 
   (1) Compiled unit, code part for smartlinking (on some platforms)
   (2) Compiled code from other compilers (e.g. gcc) linked into a static library
*.lpk 
   Lazarus package information file. (stored in XML; contains package-specific settings)
*.inc
   Include file
*.lps
   Lazarus Project Session file. See Project Options -> Save session information in
*.lrt
   Lazarus Resourcestring table created when saving a lfm file and i18n is enabled. It contains the TTranslateString properties of the lfm.
*.rst
   Resourcestring table created by the compiler for every unit with a resourcestring section. 
*.rsj
   Resourcestring table in JSON format created by FPC 2.7.1 for units with resourcestring section.
*.compiled
   compilation session for a project

Subversion or Git

These files would normally be stored in a repository as an adequate description of a project:

*.lpi
*.lpr
*.lfm
*.pas
*.pp

These files might contain manually-generated or imported information, or might be regenerated by the IDE or build process. In general, if they have the same basename as the project or a form or unit they're IDE-generated, but in all cases should be reviewed individually:

*.inc
*.res
*.lrs
*.rc
*.ico

These files are regenerated by the IDE or by a build so do not need to be stored:

*.ppu
*.o
*.a
*.lps
*.or
*.rst
*.compiled

There's an example .gitignore file at [1].

Delphi

Project files

*.dfm
   Delphi form module
*.dof
   Delphi project options file
*.dsk
   Desktop configuration

Converting Delphi projects

Lazarus can convert at least some Delphi project files into its own format.

Application

General

*.txt
   Text file
*.po
   Gettext Portable Object
*.bak
   Backup
*.cfg
   Config file
*.chm
   Compiled Help File - contains html. See also package chm
*.csv
   Comma Separated Values text file format 
*.exe
   Directly executable program
*.hlp
   Help file
*.ini
   Initialization file
*.odt
   OpenDocument text document
*.pdf
   Portable Document Format
*.ps
   PostScript 
*.rtf
   Rich Text Format text file

Image

*.png
   Portable network graphic
*.bmp
   bitmap 
*.ico
   icon 
*.xpm
   pixmap 
*.ppm
   portable pixmap 
*.pgm
   portable graymap 
*.pbm
   portable bitmap 
*.jpg


XML

*.xml
*.dtd
*.xsd
*.xsl

Web

*.html
   Hypertext Markup Language
*.css
   Cascading style sheet

Archive

*.tar
   tape archive
*.zip

Database

*.dbf
   Database file
*.mdx
   Multiple index file

Spreadsheet

*.ods
   OpenOffice.org Calc spreadsheet File Format
*.xls  
   Microsoft Excel File Format
*.xlsx  
   Microsoft Office Open XML Excel File Format 

Operating system

Linux and Unix

*.so 
   Shared object library
*.sh
   Shell script
*.deb
   Debian Package
*.rpm
   Red Hat Package Manager 

Mac

*.app
   Application bundle
*.dmg
   Disk Image File 
*.dylib 
   Dynamic shared library

Windows

*.bat
   Batch file. It's a text file that contains a sequence of commands for a computer operating system.
*.dll 
  dynamic-link library
*.exe
   Directly executable program

See also

Alphabetical list of file extensions