Difference between revisions of "IDE Window: Unit info/de"

From Lazarus wiki
Jump to navigationJump to search
m
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[category: IDE Fenster|Unit]]
 
 
{{IDE Window: Unit info}}
 
{{IDE Window: Unit info}}
  
 
Dieser Dialog zeigt verschiedene Informationen der aktuellen Datei im Quelltexteditor.
 
Dieser Dialog zeigt verschiedene Informationen der aktuellen Datei im Quelltexteditor.
  
== General ==
+
== Allgemein ==
  
 
* Name: der Unit-Name wie er im Quellcode geschrieben ist. Ansonsten ist es der Dateiname ohne Erweiterung und Pfad.
 
* Name: der Unit-Name wie er im Quellcode geschrieben ist. Ansonsten ist es der Dateiname ohne Erweiterung und Pfad.
* Typ: Der highlighter Typ. Dies kann geändert werden im Popup Menü des Quelltexteditors.
+
* Typ: Der Hervorheber-Typ. Dies kann geändert werden im Popup Menü des Quelltexteditors.
 
* im Projekt: Wenn die Datei Teil des Projekts ist. Dies kann geändert werden im Projektinspektor oder den Projekt -> Aufnehmen/Entfernen Menüeinträgen.
 
* im Projekt: Wenn die Datei Teil des Projekts ist. Dies kann geändert werden im Projektinspektor oder den Projekt -> Aufnehmen/Entfernen Menüeinträgen.
 
* Größe: Größe der Datei in Bytes.
 
* Größe: Größe der Datei in Bytes.
 
* Zeilen: Anzahl der Quellcodezeilen.
 
* Zeilen: Anzahl der Quellcodezeilen.
* Path: Vollständiger Dateiname.  
+
* Pfad: Vollständiger Dateiname.  
* Eingebunden von: Diese Datei wurde das letzte Mal einbezogen von dieser Quellcodedatei. Zum Beispiel mittels einer {$I filename.inc} Include Direktive. Dies wird automatisch gesetzt jedes Mal wenn die IDE die Unit mit der Include Direktive analysiert. Sie können das löschen mit der Leeren Schaltfläche. Sie können Suche -> Zu Include Direktive springen verwenden um zur Include Direktive der Vorgängerdatei zu springen.  
+
* Eingebunden von: Diese Datei wurde das letzte Mal einbezogen von dieser Quellcodedatei. Zum Beispiel mittels einer {$I filename.inc} Include Direktive. Dies wird automatisch gesetzt jedes Mal wenn die IDE die Unit mit der Include-Direktive analysiert. Sie können dies löschen mit der Include-Cache löschen Schaltfläche. Sie können Suche -> Zu Include Direktive springen verwenden um zur Include-Direktive der Vorgängerdatei zu springen.  
* Leeren: Diese Schaltfläche leert die 'Eingebunden von'.
+
* Include-Cache löschen: Diese Schaltfläche leert die 'Eingebunden von'.
  
== Unit paths ==
+
== Unit-Pfade ==
  
 
Dies sind die Unitpfade, die von der IDE für diese Datei verwendet werden. Die Unitpfade werden verwendet zur Suche nach .ppu, .pas, .pp, .p Dateien. Normalerweise werden diese Pfade an den Compiler gegeben. Aber es gibt Fälle, wo dies nicht der Fall ist. Und es zeigt nicht die Unitpfade, die in der Compiler Konfigurationsdatei (fpc.cfg) definiert sind.
 
Dies sind die Unitpfade, die von der IDE für diese Datei verwendet werden. Die Unitpfade werden verwendet zur Suche nach .ppu, .pas, .pp, .p Dateien. Normalerweise werden diese Pfade an den Compiler gegeben. Aber es gibt Fälle, wo dies nicht der Fall ist. Und es zeigt nicht die Unitpfade, die in der Compiler Konfigurationsdatei (fpc.cfg) definiert sind.
  
Diese Pfade werden erzeugt durch die Regeln in Einstellungen -> CodeTools Defines Editor. Alle Dateien in einem Verzeichnis benutzen die selben Suchpfade (unit paths, include paths, ...). Wenn dies ein Projektverzeichnis ist, werden alle Projekt-Unitpfade hinzugefügt. Wenn das Verzeichnis zu einem Package gehört, werden dessen Unitpfade hinzugefügt.
+
Diese Pfade werden erzeugt durch die Regeln in Werkzeuge -> Editor für CodeTools-Eigenschaften. Alle Dateien in einem Verzeichnis benutzen die selben Suchpfade (unit paths, include paths, ...). Wenn dies ein Projektverzeichnis ist, werden alle Projekt-Unitpfade hinzugefügt. Wenn das Verzeichnis zu einem Package gehört, werden dessen Unitpfade hinzugefügt.
 
Wenn sie ein Projekt und ein Package in ein Verzeichnis packen, werden beide Pfade hinzugefügt. Deshalb wird empfohlen, Packages und Projekten eigene Verzeichnisse zu geben.
 
Wenn sie ein Projekt und ein Package in ein Verzeichnis packen, werden beide Pfade hinzugefügt. Deshalb wird empfohlen, Packages und Projekten eigene Verzeichnisse zu geben.
  
 
Unterschied zwischen Compiler Suchpfaden und IDE Suchpfaden:
 
Unterschied zwischen Compiler Suchpfaden und IDE Suchpfaden:
Normalerweise ist der Unterschied ohne Bedeutung. Der Compiler wird aufgerufen in einem Verzeichnis mit einer Reihe von Suchpfaden. Zum Beispiel:
+
Normalerweise ist der Unterschied ohne Bedeutung. Der Compiler wird in einem Verzeichnis mit einer Reihe von Suchpfaden aufgerufen. Zum Beispiel:
 
Es gibt 4 Packages:
 
Es gibt 4 Packages:
 
   /home/user/package1/package1.lpk
 
   /home/user/package1/package1.lpk
Line 30: Line 29:
 
   /home/user/package4/package4.lpk verwendet package1 und package2
 
   /home/user/package4/package4.lpk verwendet package1 und package2
  
Package3 ist kompiliert in /home/user/package3 mit dem Unitpfad /home/user/package1/;/home/user/package2/. Wenn der Compiler eine Unit findet in /home/user/package2/ und sie kompiliert, wendet er alle Unitpfade an, inklusive dem Pfad zu /home/user/package3/. Dies ist normalerweise nicht gewollt und deshalb definiert ein Standardpackage ein Ausgabeverzeichnis. Aber für dieses Beispiel nehmen wir an, daß das Package seine .ppu Dateien in das Quellverzeichnis kompiliert.
+
Package3 ist kompiliert in /home/user/package3 mit dem Unitpfad /home/user/package1/;/home/user/package2/. Wenn der Compiler eine Unit findet in /home/user/package2/ und sie kompiliert, wendet er alle Unitpfade an, inklusive dem Pfad zu /home/user/package3/. Dies ist normalerweise nicht gewollt und deshalb definiert ein Standardpackage ein Ausgabeverzeichnis. Aber für dieses Beispiel nehmen wir an, dass das Package seine .ppu Dateien in das Quellverzeichnis kompiliert.
  
Wenn der Compiler aufgerufen wird für package4 wird er gestartet in einem anderen Verezichnis mit anderen Suchpfaden. Hier wird er aufgerufen in /home/user/package4 mit dem Unitpfad /home/user/package1/;/home/user/package2/. Wenn der Compiler eine Unit findet in /home/user/package2/ und sie kompiliert, wendet er alle Unitpfade an, inklusive dem Pfad zu package4.  
+
Wenn der Compiler aufgerufen wird für package4, dann wird er in einem anderen Verzeichnis mit anderen Suchpfaden gestartet. Hier wird er aufgerufen in /home/user/package4 mit dem Unitpfad /home/user/package1/;/home/user/package2/. Wenn der Compiler eine Unit findet in /home/user/package2/ und sie kompiliert, wendet er alle Unitpfade an, inklusive dem Pfad zu package4.  
Das bedeutet, daß der Compiler die Units in package2 mit zwei unterschiedlichen Unitpfaden kompiliert. Dies ist normalerweise eine schlechte Idee, weil das Ergebnis von der Reihenfolge abhängt - ob sie zuerst package3 kompilieren und dann package4 oder anders herum. Aber in der realen Welt (z.B. der Delphi Welt) ist das verbreiteter als mancher annehmen würde.
+
Das bedeutet, dass der Compiler die Units in package2 mit zwei unterschiedlichen Unitpfaden kompiliert. Dies ist normalerweise eine schlechte Idee, weil das Ergebnis von der Reihenfolge abhängt - ob sie zuerst package3 kompilieren und dann package4 oder anders herum. Aber in der realen Welt (z.B. der Delphi Welt) ist das verbreiteter als mancher annehmen würde.
Es ist klar, daß wenn Packages Units mit dem selben Namen enthalten, die Reihenfolge der Dateipfade in den Suchpfaden wichtig wird.
+
Wenn Packages Units mit dem selben Namen enthalten, ist es klar, dass die Reihenfolge der Dateipfade in den Suchpfaden wichtig wird.
  
Die IDE löst dies indem sie die Suchpfade für jedes Verzeichnis sammelt. Das bedeutet zum Beispiel, daß die Suchpfade für die Lazarus Quellen ihre eigenen Unitpfade haben und nicht die Unitpfade zu ihrem Projekt enthalten. Ein Verzeichnis, das nicht Teil ihres Projekts ist, enthält nicht die Unitpfade ihres Projekts. Auf diese Weise können sie Delphi VCL Quellen und Lazarus LCL Quellen durchsuchen, die beide Units mit den selben Namen enthalten.
+
Die IDE löst dies, indem sie die Suchpfade für jedes Verzeichnis sammelt. Das bedeutet zum Beispiel, dass die Suchpfade für die Lazarus Quellen ihre eigenen Unitpfade haben und nicht die Unitpfade zu ihrem Projekt enthalten. Ein Verzeichnis, das nicht Teil ihres Projekts ist, enthält nicht die Unitpfade ihres Projekts. Auf diese Weise können sie Delphi VCL Quellen und Lazarus LCL Quellen durchsuchen, die beide Units mit den selben Namen enthalten.
  
== Include paths ==
+
== Include-Pfade ==
  
 
Dasselbe wie Unitpfade, aber für die Includepfade. Suchpfade für Include Direktiven {$I filename.inc} oder {$INCLUDE filename.inc}.
 
Dasselbe wie Unitpfade, aber für die Includepfade. Suchpfade für Include Direktiven {$I filename.inc} oder {$INCLUDE filename.inc}.
  
== Source paths ==
+
== Quelltext-Pfade ==
  
 
Dies ist der Unitpfad plus den kompilierte Quellen Pfade.
 
Dies ist der Unitpfad plus den kompilierte Quellen Pfade.
Line 51: Line 50:
 
Das Projekt verwendet das Package. Die Package Quelldateien sind in /home/user/package und die Ausgabedateien (.ppu) des Packages sind in /home/user/package/lib abgelegt.
 
Das Projekt verwendet das Package. Die Package Quelldateien sind in /home/user/package und die Ausgabedateien (.ppu) des Packages sind in /home/user/package/lib abgelegt.
 
Der Unitpfad des Projekts wird den Pfad zum Ausgabeverzeichnis des Packages enthalten - /home/user/package/lib. Wenn der Compiler aufgerufen wird um das Projekt zu kompilieren, findet er die .ppu Dateien des Packages, aber nicht die die Quellen (.pas) des Packages. Aus diese Weise kann er das Package nicht rekompilieren, was gut ist, weil die Compilereinstellungen des Projekts wahrscheinlich anders sind als für das Package.
 
Der Unitpfad des Projekts wird den Pfad zum Ausgabeverzeichnis des Packages enthalten - /home/user/package/lib. Wenn der Compiler aufgerufen wird um das Projekt zu kompilieren, findet er die .ppu Dateien des Packages, aber nicht die die Quellen (.pas) des Packages. Aus diese Weise kann er das Package nicht rekompilieren, was gut ist, weil die Compilereinstellungen des Projekts wahrscheinlich anders sind als für das Package.
Die IDE sollt die Quelldateien (.pas) finden. Sie weiß, das /home/user/package/lib das Ausgabeverzeichnis des Packages ist, daher fügt sie die Unitpfade des Packages zum Quellenpfad des Projekts hinzu. Diese Hinzufügung wird compiled source path genannt.
+
Die IDE sollte die Quelldateien (.pas) finden. Sie weiß, dass /home/user/package/lib das Ausgabeverzeichnis des Package ist. Deshalb fügt sie die Unitpfade des Package zum Quelltext-Pfad des Projekts hinzu. Der Zusatz wird compiled source path genannt.
  
== Show CodeTools Values ==
+
== Anzeige der CodeTools-Werte ==
  
 
Siehe [[IDE Window: Codetools Directory Values/de|Codetools Directory Values]]
 
Siehe [[IDE Window: Codetools Directory Values/de|Codetools Directory Values]]

Latest revision as of 16:57, 3 July 2015

Deutsch (de) English (en) français (fr)

Dieser Dialog zeigt verschiedene Informationen der aktuellen Datei im Quelltexteditor.

Allgemein

  • Name: der Unit-Name wie er im Quellcode geschrieben ist. Ansonsten ist es der Dateiname ohne Erweiterung und Pfad.
  • Typ: Der Hervorheber-Typ. Dies kann geändert werden im Popup Menü des Quelltexteditors.
  • im Projekt: Wenn die Datei Teil des Projekts ist. Dies kann geändert werden im Projektinspektor oder den Projekt -> Aufnehmen/Entfernen Menüeinträgen.
  • Größe: Größe der Datei in Bytes.
  • Zeilen: Anzahl der Quellcodezeilen.
  • Pfad: Vollständiger Dateiname.
  • Eingebunden von: Diese Datei wurde das letzte Mal einbezogen von dieser Quellcodedatei. Zum Beispiel mittels einer {$I filename.inc} Include Direktive. Dies wird automatisch gesetzt jedes Mal wenn die IDE die Unit mit der Include-Direktive analysiert. Sie können dies löschen mit der Include-Cache löschen Schaltfläche. Sie können Suche -> Zu Include Direktive springen verwenden um zur Include-Direktive der Vorgängerdatei zu springen.
  • Include-Cache löschen: Diese Schaltfläche leert die 'Eingebunden von'.

Unit-Pfade

Dies sind die Unitpfade, die von der IDE für diese Datei verwendet werden. Die Unitpfade werden verwendet zur Suche nach .ppu, .pas, .pp, .p Dateien. Normalerweise werden diese Pfade an den Compiler gegeben. Aber es gibt Fälle, wo dies nicht der Fall ist. Und es zeigt nicht die Unitpfade, die in der Compiler Konfigurationsdatei (fpc.cfg) definiert sind.

Diese Pfade werden erzeugt durch die Regeln in Werkzeuge -> Editor für CodeTools-Eigenschaften. Alle Dateien in einem Verzeichnis benutzen die selben Suchpfade (unit paths, include paths, ...). Wenn dies ein Projektverzeichnis ist, werden alle Projekt-Unitpfade hinzugefügt. Wenn das Verzeichnis zu einem Package gehört, werden dessen Unitpfade hinzugefügt. Wenn sie ein Projekt und ein Package in ein Verzeichnis packen, werden beide Pfade hinzugefügt. Deshalb wird empfohlen, Packages und Projekten eigene Verzeichnisse zu geben.

Unterschied zwischen Compiler Suchpfaden und IDE Suchpfaden: Normalerweise ist der Unterschied ohne Bedeutung. Der Compiler wird in einem Verzeichnis mit einer Reihe von Suchpfaden aufgerufen. Zum Beispiel: Es gibt 4 Packages:

 /home/user/package1/package1.lpk
 /home/user/package2/package2.lpk
 /home/user/package3/package3.lpk verwendet package1 und package2
 /home/user/package4/package4.lpk verwendet package1 und package2

Package3 ist kompiliert in /home/user/package3 mit dem Unitpfad /home/user/package1/;/home/user/package2/. Wenn der Compiler eine Unit findet in /home/user/package2/ und sie kompiliert, wendet er alle Unitpfade an, inklusive dem Pfad zu /home/user/package3/. Dies ist normalerweise nicht gewollt und deshalb definiert ein Standardpackage ein Ausgabeverzeichnis. Aber für dieses Beispiel nehmen wir an, dass das Package seine .ppu Dateien in das Quellverzeichnis kompiliert.

Wenn der Compiler aufgerufen wird für package4, dann wird er in einem anderen Verzeichnis mit anderen Suchpfaden gestartet. Hier wird er aufgerufen in /home/user/package4 mit dem Unitpfad /home/user/package1/;/home/user/package2/. Wenn der Compiler eine Unit findet in /home/user/package2/ und sie kompiliert, wendet er alle Unitpfade an, inklusive dem Pfad zu package4. Das bedeutet, dass der Compiler die Units in package2 mit zwei unterschiedlichen Unitpfaden kompiliert. Dies ist normalerweise eine schlechte Idee, weil das Ergebnis von der Reihenfolge abhängt - ob sie zuerst package3 kompilieren und dann package4 oder anders herum. Aber in der realen Welt (z.B. der Delphi Welt) ist das verbreiteter als mancher annehmen würde. Wenn Packages Units mit dem selben Namen enthalten, ist es klar, dass die Reihenfolge der Dateipfade in den Suchpfaden wichtig wird.

Die IDE löst dies, indem sie die Suchpfade für jedes Verzeichnis sammelt. Das bedeutet zum Beispiel, dass die Suchpfade für die Lazarus Quellen ihre eigenen Unitpfade haben und nicht die Unitpfade zu ihrem Projekt enthalten. Ein Verzeichnis, das nicht Teil ihres Projekts ist, enthält nicht die Unitpfade ihres Projekts. Auf diese Weise können sie Delphi VCL Quellen und Lazarus LCL Quellen durchsuchen, die beide Units mit den selben Namen enthalten.

Include-Pfade

Dasselbe wie Unitpfade, aber für die Includepfade. Suchpfade für Include Direktiven {$I filename.inc} oder {$INCLUDE filename.inc}.

Quelltext-Pfade

Dies ist der Unitpfad plus den kompilierte Quellen Pfade. Zum Beispiel:

 /home/user/project
 /home/user/package/lib

Das Projekt verwendet das Package. Die Package Quelldateien sind in /home/user/package und die Ausgabedateien (.ppu) des Packages sind in /home/user/package/lib abgelegt. Der Unitpfad des Projekts wird den Pfad zum Ausgabeverzeichnis des Packages enthalten - /home/user/package/lib. Wenn der Compiler aufgerufen wird um das Projekt zu kompilieren, findet er die .ppu Dateien des Packages, aber nicht die die Quellen (.pas) des Packages. Aus diese Weise kann er das Package nicht rekompilieren, was gut ist, weil die Compilereinstellungen des Projekts wahrscheinlich anders sind als für das Package. Die IDE sollte die Quelldateien (.pas) finden. Sie weiß, dass /home/user/package/lib das Ausgabeverzeichnis des Package ist. Deshalb fügt sie die Unitpfade des Package zum Quelltext-Pfad des Projekts hinzu. Der Zusatz wird compiled source path genannt.

Anzeige der CodeTools-Werte

Siehe Codetools Directory Values