12

Delphi 2009 sets the default file format for new source code files to ANSI, this makes the source code platform-dependent.

Even for a new XSD file created in the IDE, which by default starts with this line

<?xml version="1.0" encoding="UTF-8" ?>

Delphi sets the file format to ANSI (this looks like a bug, for new XML and XSLT documents UTF8 is selected by default).

Is there a hidden option to set the default file format for source code files?

JasonMArcher
  • 14,195
  • 22
  • 56
  • 52
mjn
  • 36,362
  • 28
  • 176
  • 378

5 Answers5

10

In fact this blog post from 2004 mentions a hidden IDE option. It states that you can set a default file filter in the registry to make UTF-8 the default encoding in Delphi 8. This still works under Tokyo! Clearly, you have to adapt the path of the registry key to recent versions like this:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Embarcadero\BDS\19.0\Editor]
"DefaultFileFilter"="Borland.FileFilter.UTF8ToUTF8"

After setting this value Delphi will encode new units in UTF-8 with BOM.

MBulli
  • 1,659
  • 2
  • 24
  • 36
7

Right-click on your source code in the Delphi 2009 IDE, and select File Format. Then choose UTF-8. Hope that helps.

Rohit Agarwal
  • 4,269
  • 3
  • 27
  • 22
5

Although the answer from MBulli should be still relevant, since version 10.4 of Delphi (as far as I remember) it is possible to change the default encoding within the IDE.

Go to Tools > Options and choose User interface > Editor from the navigation area.

You will find the Default file encoding setting down below.

Options window

Jacek Krawczyk
  • 2,083
  • 1
  • 19
  • 25
4

If you install UTF8ize Plugin (english translation of his page & latest version) to your IDE, when you edit any file within the IDE, the plugin set the file's codepage to UTF8 automatically.

(FYI: The author creates many useful plugins. I posted some of his plugins with image here, but my post was deleted by the modelator. I just wanted to know his useful plugins, but yes, it's off topic here. sorry.)

benok
  • 688
  • 1
  • 6
  • 21
3

AFAIK, there is no IDE-wide setting for specifying the default file format.

Remy Lebeau
  • 555,201
  • 31
  • 458
  • 770
  • However the IDE does prompt you, when you enter a unicode character into the editor buffer, and then click Save. – Warren P Jun 08 '11 at 07:15
  • Rob kennedy suggested that you can in fact, add a new Unit that is saved in UTF8 format to the Object Repository, and then use that from the File -> New menu. I found that it has to contain a high unicode character codepoint in order to keep the UTF8 encoding in new units though. – Warren P Feb 16 '12 at 23:13
  • There's a setting as explained in [this](https://stackoverflow.com/a/47813818/243614) answer. – Sertac Akyuz Dec 14 '17 at 20:51
  • 1
    With 10.4 there is now an option in the IDE. – MBulli May 27 '20 at 06:26