Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Live-Template für die Format-Funktion (https://www.delphipraxis.net/163663-live-template-fuer-die-format-funktion.html)

Codewalker 10. Okt 2011 08:40

Live-Template für die Format-Funktion
 
Für alle denen es wie mir geht und die bei der Format-Funktion immer Knoten in die Finger bekommen: Ein Mini-Livetemplate hilft. Es fügt den Code
Delphi-Quellcode:
Format('',[])
an der aktuellen Stelle ein und setzt den Cursor wieder schön innerhalb des Strings.

Code:
<?xml version="1.0" encoding="utf-8" ?>
<codetemplate   xmlns="http://schemas.borland.com/Delphi/2005/codetemplates"
            version="1.0.0">
   <template name="format" invoke="manual">
      <description>
       Fügt an der aktuellen Stelle im Code einen Aufruf
       zur Format-Funktion ein
      </description>
      <author>
                Codewalker@Delphi-PRAXiS
      </author>
      <code language="Delphi" delimiter="|"><![CDATA[Format('|end|',[])]]>
      </code>
   </template>
</codetemplate>

himitsu 10. Okt 2011 09:38

AW: Live-Template für die Format-Funktion
 
Eventuell noch eine Textmarke in den String und zischen [] (den Parametern) und schon kann man da auch hintabben.

Codewalker 10. Okt 2011 10:31

AW: Live-Template für die Format-Funktion
 
Zitat:

Zitat von himitsu (Beitrag 1129578)
Eventuell noch eine Textmarke in den String und zischen [] (den Parametern) und schon kann man da auch hintabben.

Gute Idee. Ich werde mal schauen, wie das mit den Textmarken geht (eine gute Doku zu den Dingern scheint es ja nicht zu geben).

himitsu 10. Okt 2011 10:45

AW: Live-Template für die Format-Funktion
 
Im Prinzip einfach zwei "Variablen", mit leeren Textinhalt.

Wenn man ganz krass drauf ist, dann könnte man noch ein Script nach dem "String" darüber laufen lassen, welche dann Platz für die passende Anzahl an Parametern vorbereitet, damit man keinen Parameter vergißt :lol:

Codewalker 10. Okt 2011 11:29

AW: Live-Template für die Format-Funktion
 
Die Idee ist gut, aber wie soll das gehen. Ich müsste ja dann nach dem Parsen entsprechende Kommata einfügen und dazwischen jeweils Sprungmarken (also <point>-Elemente).

Die ergänzte Version sieht schonmal so aus:

Code:
<?xml version="1.0" encoding="utf-8" ?>
<codetemplate   xmlns="http://schemas.borland.com/Delphi/2005/codetemplates"
            version="1.0.0">
   <template name="forma" invoke="auto">
      <description>Format-Funktionswrapper</description>
      <author>Thomas Hummes</author>
      <point name="FormatString" default="true">
         <text></text>
         <hint>Der Formatstring</hint>
      </point>
      <point name="Vars">
         <text></text>
         <hint>Variablen für die Formatierung</hint>
      </point>
      <code language="Delphi" delimiter="|"><![CDATA[Format('|FormatString||end|',[|Vars|])]]></code>
   </template>
</codetemplate>

wurzelzwerg 12. Okt 2011 13:18

AW: Live-Template für die Format-Funktion
 
Wie benutzt man das?

Codewalker 12. Okt 2011 14:15

AW: Live-Template für die Format-Funktion
 
In Delphi unter "Datei"->"Neu"->"Weitere..."->"Andere Dateien"->"Quelltextvorlage" eine neue leere Vorlage anlegen. Den Text aus meinem Post dort einfügen, speichern und dann Delphi neustarten.

Dann kann man im Quelltext durch tippen von "forma" + Leertaste oder Tab die Vervollständigung auslösen.

wurzelzwerg 12. Okt 2011 17:04

AW: Live-Template für die Format-Funktion
 
Klappt. Danke.

Satty67 12. Okt 2011 18:53

AW: Live-Template für die Format-Funktion
 
Hatte vor längerem mal die Code-Vorlagen in den Einstellungen gesucht und nichts gefunden
(bei Delphi 5 war es noch "Quelltextvorlagen" in den Einstellungen)

Jetzt weis ich wo es abgelegt wird und mit dem Beispiel gleich eine schöne Syntax-Vorlage bekommen.

Danke.

Codewalker 13. Okt 2011 06:44

AW: Live-Template für die Format-Funktion
 
Wie wäre es mit einem "Best of Delphi-Praxis"-LiveTemplates? Es muss hier ja nicht bei der Format-Funktion bleiben :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:12 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz