Change the Arduino file extension!

This has been an issue for a few years, I wonder if there has been a good official answer to this yet. Because the Arduino IDE is based on the Processing IDE, their sketch files share the same file extension: .pde. The problem is, if I associate this file extension with either Processing or Arduino, I now lose the ability to open each file in the correct IDE every time.

Obviously this isn't an issue when you open the IDE first, then open the files through the IDE, but many times I (or many of my students) just want to double-click the sketch file itself and let the IDE open and load the sketch in one action.

I would love to see the Arduino sketch files have a different file extension, so that we can all start associating the correct IDEs with the correct file types.

I propose the file extension .ard. A quick Google search reveals that this file extension does not seem to currently be in use by any major software platforms, so its ripe for the Arduino platform.

This will probably be one of those things that never gets fixed due to "backward compatibility", like how the headers on the Arduino board has always had odd spacing that makes it not fit on a 0.1" grid, plus a bunch of other problems with the Arduino.

A slow transition might be possible though, maybe open both .pde and .ard but save in .ard by default and auto-convert .pde to .ard

One of the issues is that things like .ard are already in use for other applications (but so is .pde I suppose)

One of the things I want to see is the ability to create tabs with different extensions - why are we limited to .h and .cpp?
Why can't we use .hpp and .cpp and .hh and .cc and .h and .c?

Already changed for 1.0:

http://code.google.com/p/arduino/issues/detail?id=13

It appears ".ino" is what was settled on.

It appears ".ino" is what was settled on.

That really pisses me off. I begged for an extension with more than three characters. At this point in history, there is no valid reason to use a short extension.

Arduino 1.0 will conflict with Inno Setup needlessly continuing my file-extension pain.

Note that David mentions in the issue that he's open to other (three-letter) suggestions.

You might not be able to convince him that a longer extension is valuable, but the conflict with InnoSetup might convince him to at least change the three letters he used.

Filename extensions at filext.com
List of filename extensions at Wikipedia

Edit: Also, the SD library only supports 8.3 filenames, which may have been a consideration:

logic:
Note that David mentions in the issue that he's open to other (three-letter) suggestions.

I have made my opinion clear on two separate occasions.

but the conflict with InnoSetup might convince him to at least change the three letters he used

I have made him aware of the conflict and the folly of three letter extensions.

"Coding Badly" reports that he is "pissed off." The mental state of posters is rightfully considered off topic on almost any forum in the world because it does nothing to facilitate the purpose of such forums and generally wastes everyone's time. It is an issue only of interest to the poster. Personally I make it a policy to be grateful when someone makes a major work like Arduino available for free. Quibbling when the details are not exactly what I would choose would feel selfish and ungrateful. Maybe childish is a better word.

The mental state of posters is rightfully considered off topic ... Personally I make it a policy to be grateful when someone makes a major work like Arduino available for free

My mental state is off-topic but your mental state is on-topic. Got it. I'll do my best to keep my mental state out of all future posts. And I will certainly refrain from commenting if you post about your mental state.

While we're on the subject of "wasting everyone's time", it would be substantially more productive to simply report offending posts to the Moderators.

Thank you for passing judgment over me, zencuke. I'm sure I deserve every bit of your scorn.

zencuke:
It is an issue only of interest to the poster.

No, it's not. He might not be the only one. It is important to look at edge cases like his.

Personally I make it a policy to be grateful when someone makes a major work like Arduino available for free. Quibbling when the details are not exactly what I would choose would feel selfish and ungrateful. Maybe childish is a better word.

In case you haven't noticed, the official Arduino is around $30. It's open source because it almost has to be, its code is based off Processing.org and Wiring.org , the tool chain is GNU, and if the schematics and core source code are not available, then many people would not find it useful. Derivatives and clones exist because Arduino is open source, and they take full advantage of the fact that if Arduino was not open source, the official Arduino would have no market.

Arduino is not some sort of charity. Arduino uses the works of skilled community members to make itself very attractive to more skilled and newbie hobbyists, thus I think making a complaint, or even a demand for change, is perfectly acceptable.

And I can't believe you registered on this forum just to complain about something off topic.


I know it's completely non-standard practice, but I think there can be a way for a user to customize the file extension settings. Arduino can have a configuration file where the default file extension is stored, this would be loaded into a static string upon launching Arduino and all new files, file open/save dialogs, and other things would use that extension for that session. It is easy to change the default program association in any operating system too.


edit:
at the time of this post, zencuke's total post count was 1


edit:
zencuke's next post is not worth a new post, so I'll add my thoughts here:

Nothing wrong with open source making money, but that doesn't mean people can't complain about flaws in the project. You can't complain about a free lunch from a food bank, but if free samples at a supermarket gave you food poisoning, I think you have every right to complain.

frank26080115:
And I can't believe you registered on this forum just to complain about something off topic.

Let wait and see if anything usefull is coming from there after this, seems that he/she zen-priest lost his/her piece of mind, and it is nessessary to go back to mountains, and meditate for few weeks.
:.

File extensions are good, just that for some reason, the ancient 8.3 style is changed only to x.3. Microsoft thinks that extensions doesn't matter, that's why they are hidden by default; plain stupidity.

I'm pissed of too now... and that was just one reason for that!

Cheers,
Kari

GaryP:

frank26080115:
And I can't believe you registered on this forum just to complain about something off topic.

Let wait and see if anything usefull is coming from there after this, seems that he/she zen-priest lost his/her piece of mind, and it is nessessary to go back to mountains, and meditate for few weeks.
:.

File extensions are good, just that for some reason, the ancient 8.3 style is changed only to x.3. Microsoft thinks that extensions doesn't matter, that's why they are hidden by default; plain stupidity.

I'm pissed of too now... and that was just one reason for that!

Cheers,
Kari

Microsoft isn't stupid, they know file extensions matter, but they also know the average user is stupid. I'm sure there would be plenty of people who would rename a file and then complain about not being able to open it. In the end, it would look like MS's fault. You might not like it, but you can't blame MS. Some stuff on Unix doesn't use extensions at all, but I've always hated how makefiles must be called "makefile" or else you need to explicitly state which file to make.

Also, > 3 letter extensions work fine on Windows anyways, so there's no reason to avoid them at all.

Microsoft thinks that extensions doesn't matter, that's why they are hidden by default; plain stupidity.

That's to stop general idiots changing them and then wondering why something isn't working...

We are getting off-topic, but well...

All recent NEW desicions MS had made, are showing nothing less than more stupidity. I can't believe someone is turning this upside down. Instead of teaching usable ways to understand the importance of filenames, MS is trying to make it idiotproof to use, which is getting opposite effect.

Extensions should have always been left seen. Now MS is hiding or removing all good options, and that is... well... stupidity as well.

I can see both views of point, I am IT-support/administrator/developer/consult, and I know what end user think about these, and what steps does it needs to make them understand and feel comfortable with Windows. But MS is making it harder, more "professional".

Why is all that? To sell new OS version, to keep professionals indispensable... or other suitable word in english.

Cheers,
Kari

mowcius:

Microsoft thinks that extensions doesn't matter, that's why they are hidden by default; plain stupidity.

That's to stop general idiots changing them and then wondering why something isn't working...

Basicly nice thought, but you the saying about hungry people and fishing skills...

Kari

I was curious about the status of the long promised file extension change after I accidentally launched the wrong IDE for about the zillionth time. On the Mac this is only a minor problem but I was curious. I searched the archives and found lots of thoughtful comments and suggestions and one person expressing his personal pique that things did not go his way. His entire sequence of posts in this thread seemed to represent venting and no new information. File extensions have always been problematic. Discussion and statement of opinion is always appropriate when they stay on topic and most posts here were in that vein. One poster's were not and this degraded the quality of the discussion. It didn't seem worthwhile commenting to the moderator because given the sheer volume of his posts on this forum I assumed he was one of them. When I expressed my opinion that personal pique is off topic several other posters replied in a childish and off topic vein mostly mocking my choice of screen name. Ad Hominum? In my experience whether a subject is or is not on topic is itself usually considered on topic. I have been trying to stay on topic. One would hope that others here would also attempt to return to the normal standards of civility for this forum.

There is nothing wrong with trying to make money on an open source project. Read Richard Stallman on that subject. You don't have to buy an "official" Arduino. There are plenty of excellent clones available. That is the beauty of open source.

By the way my apologies to the thread. I intended to make a single post on this subject. At some point beating a dead horse becomes abuse in its own right and I am sure many think I have crossed that line already. However I didn't expect the number of replies and the level of personal attack in the responses. Ironically "Coding Badly" stood out in my view as one of the few replying in a civil way. I will not be replying again on this subject. I think my point has been made.

Right!

Two posts already in the forum, and I don't see how they are connected to the topic subject; Arduino file extension.

Ok, OT it is.
We all have good days and bad days. If you think that person who writes nicely 99,9% of the time, is a saint of a akind, you are so wrong. It's like people who work in a bank, they need to keep the appearance, no matter what the customer says. But wait, that day comes when morning start badly at home, and the first customer don't know who he/she is deeling with... BANG! There you go, you have lost your face forever, have you? No, if the customer is human, yes if the customer is selfish idiot who sees nothing else but his/her own misery.

I think the next generation extension for arduino should be .AIE (Arduino IDE Extension). It's not used, and it sound futuristic!
:stuck_out_tongue:

Cheers,
Kari

. AIE .... and it sound futuristic

It also sounds like getting 240Volts :wink:

robtillaart:
It also sounds like getting 240Volts :wink:

Aha... what does the AIE stands for? It is not known in our region.
:open_mouth:

Cheers,
Kari

more precise "AIE!!!" is the sound I make when I connect with 240Volts with my fingers :slight_smile: