Jump to content
David Heffernan

New Delphi features in Delphi 13

Recommended Posts

1 hour ago, dummzeuch said:

These refactoring methods worked for me quite well, most of the time:

  • Declare a variable or field
  • Rename an identifier (that one always worked fine within a single unit and most of the time even for the whole project)
  • Extract selected code to a method

I have been using them since they were introduce in Delphi 2007 and I already miss them.

It's been mentioned several times. These things are handled by MMX. And good.

Share this post


Link to post
2 hours ago, Lars Fosdal said:

Basically, it is making things as readable as possible

Kudos on managing to avoid the one style we can all read.

 

 

1 hour ago, dummzeuch said:

Rename an identifier (that one always worked fine within a single unit and most of the time even for the whole project)

Rename across units have never worked for anything but the most trivial code (okay, maybe in the first couple of versions). And without that it's useless. I can manage rename in a single unit on my own, without the help of refactoring (but of course I wouldn't mind it).

 

 

16 minutes ago, Stano said:

It's been mentioned several times. These things are handled by MMX. And good.

MMX doesn't have rename refactoring.

I haven't got it installed anymore, so I can't verify, but every time I install it it's because I need rename refactoring and every time I discover that it can't do it properly and uninstall again.

What you are referring to as "rename refactoring" is just a text search/replace in MMX.

Share this post


Link to post
Just now, Anders Melander said:

Kudos on managing to avoid the one style we can all read.

Thanks. I just don't find it very readable - just old and established.

Share this post


Link to post
On 9/10/2025 at 6:50 PM, PeterPanettone said:

I like the NameOf(T) compiler (magic) function.

Attila: > it only took 10 years



Yes, it should have been done 10 years ago in order to be adopted by now.

Now if I use it in my public libraries, people will not be able to compile my code unless they have Delphi 13.
This is always the catch with new language features...
 

Anyway, I love it! Too bad it was not introduced in Delphi 1!

Today is it not as grandiose/necessary, because now we have tools like madShi madExpert (and the other one that I don't want to say its name here)... but still cool to have it!

 

_____________________________________________________________________________

Steve Maughan

> I assume Delphi 13 can be installed alongside 12.3.

 

Yes. It works. I just put a tutorial on my website on how to port the registry settings from D12 to D13 (actually it works with all editions).

 

 

_____________________________________________________________________________

 

 

On 9/12/2025 at 8:42 AM, Attila Kovacs said:

One step forward, ten steps back.

corneliusdavid

> That's a bit of an exaggerated statement.

 

I don't use that feature (I even disabled the dangerous Ctrl+D shortcut) but I do understand Attila. Each person uses the IDE/RTL in a certain way. What for one is irrelevant, for others is gold.

Second: It is sad (at least) to have features removed (instead of added) from your IDE 😞

 

___________________________________________________________________

 

Oboba:

>So the Refactor menu is greyed out, why is that? I know it didn't work properly sometimes, even basic "Rename" refactoring. I see above that it was removed with the Modelling support, then why leave the menu item greyed out and not remove it completely then?

 

Also see: https://embt.atlassian.net/servicedesk/customer/portal/3/RSB-911 

 

___________________________________________________________________

 

Mark NZ

>The refactoring removal is actually the biggest benefit of Delphi 13.0 for me so far.  It only ever worked on a trivially small project and on our large projects just moving the mouse past the menu option not fast enough caused minute+ freezes.

 

Same here. Refactoring rarely worked. BUT Anders is right " but it was an optional component so you could have just chosen not to install it". I hard it worked for some... 

 

___________________________________________________________________

 

Lars F

> I described it years back in this post.  Writing Readable Code - Formatting and Comments

 

I disagree with most of your proposed formatting examples (but I have nothing personal with you - big smiley face ).

We are all different human beings. You will never make everyone agree on what is the best formatting style. You can enforce it, as many companies do, but you will not convince all people agree with it. 

I have been in places where a very very specific (non Embarcadero) formatting style was enforced. Your commit was simply rejected if it was not tightly formatted. On the other hand the company had no rules enforced on programming style and documentation. Actually the documentation was discouraged (because "the code will change and we will forget to update the documentation"). And the code was as peppered with case-without-else, App.ProcessMessage, try/except as a well seasoned stake on the grill.

 

I think, before discussing formatting, we should deal with the safety rules. 🙂 

-

I have seen try/except so often abused that I started lately to wish Delphi had no such language feature. Or make it expensive: every time you compile a line of code like this, pay 10 cents! Or allow the developer to use it only if he has a Delphi certificate. 🙂 

Or, maybe the compiler can be made to detect empty try/except cases and refuse to compile... A warning would not be enough because I have also seen projects where developers abandoned the "Messages" window because it had too many hints and warnings.

 

Edited by GabrielMoraru

Share this post


Link to post
28 minutes ago, GabrielMoraru said:

Yes, it should have been done 10 years ago in order to be adopted by now. 

The request was created in 2015 by Horacio, that was what I was referring to.

  • Like 1

Share this post


Link to post

I cannot find "Delphi Advisor Wizard Upgrade" on web GetIt. Does anyone know anything about it?

Edited by GabrielMoraru

Share this post


Link to post
3 hours ago, Lars Fosdal said:

Thanks. I just don't find it very readable - just old and established.

Beauty is in the eye of the beholder. I literally get dizzy trying to read your code formatting. Even with braces I very much dislike any style besides Allman, and in Pascal, begin and end absolutely must be on the same vertical line for me.

  • Like 1

Share this post


Link to post
2 hours ago, GabrielMoraru said:

I just put a tutorial on my website on how to port the registry settings from D12 to D13 (actually it works with all editions).

Is there any reason why you aren't just using the bundled migration tool (apart from the (unsurprisingly) horrible usability of it)?

image.thumb.png.5331257e45b72688b2824ccc80eb65bc.png

Share this post


Link to post
1 hour ago, Dalija Prasnikar said:

Beauty is in the eye of the beholder.

That is indeed true.

Share this post


Link to post
2 hours ago, GabrielMoraru said:

You will never make everyone agree on what is the best formatting style.

True. But I would love a formatter flexible enough to allow it to transmogrify code according to my liking.  Currently, there are none, hence I have to do without.

  • Like 1

Share this post


Link to post
6 hours ago, Stano said:

It's been mentioned several times. These things are handled by MMX. And good.

I tried MMX but it's a lot less convenient than the integrated refactoring. I don't remember the specifics, but I think e.g. you have to enter / select the type for a new variable / field rather than have the tool infer it from what is assigned to it.

Share this post


Link to post

The tooling in RAD Studio is more than a decade behind the many other IDEs around. It's feeble that we are making excuses for it not being able to do basic refactorings. 

  • Like 2

Share this post


Link to post
2 hours ago, David Heffernan said:

The tooling in RAD Studio is more than a decade behind the many other IDEs around. 

That's one of the top items on my "Delphi wish list":

* Bring fresh blood 

* Expand the ecosystem (including libraries)

* Bring the IDE up to date (this includes fixing the bugs also)

 

I don't care much about RTL and VCL. That I have access to the code and I can patch. But the IDE.....
Oh Andreas, why have you forsaken us? 😞

Edited by GabrielMoraru

Share this post


Link to post
4 hours ago, Anders Melander said:

Is there any reason why you aren't just using the bundled migration tool (apart from the (unsurprisingly) horrible usability of it)?

 

Did they fixed that tool in the end?

===

I tried it in the past. It didn't worked. 
I do it manually now.

 

 

Share this post


Link to post
3 minutes ago, GabrielMoraru said:

Did they fixed that tool in the end?

I think it has always worked. It was just near impossible to understand how to use it.

 

I used it for D11->D12 and D12->D13. Each time I had to do it a few times before I got it right.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×