Jim Meyering wrote: > > 2) For the user who needs to fix a compilation problem, or do minor > > developments in a package. > > > > In this case I _do_ want to change the Makefile or config.h, to see > > the results. Because if I change Makefile.am or *.m4, I will have to > > wait 5 minutes until aclocal, automake, autoheader, configure have > > completed their business. Or even worse, I will get errors because > > I don't have the "right" automake and autoconf versions installed. > > > > When I modify a Makefile and, when trying to save it, am told > > that I cannot save it, it's a major annoyance. > > If it's really a major annoyance
Yes. In "vi" I don't know how to make a buffer read-write when it is read-only. And since it's read-only, I also cannot remove the line that makes it read-only. Similarly in emacs: I know where to find the read-only/ read-write toggle in the menus. But in console mode ("emacs -nw"), I don't know how to access the menus. In summary, it's a major annoyance for people who are not wizards of their particular editor. > you should switch to > an editor that lets you circumvent such things more easily. > In Emacs, C-xC-q is the typical binding to toggle read-only. > For Vi, to save a file owned by you, in spite of its read-only > setting, just use :w! It's you who should do something about your environment, not me. The issue comes down to different personal preferences: On one hand we have the people who want to have complete control of their editing actions. On the other hand, we have you who want some guidance from the editor about your actions. It's like a command-line tool user and a GUI user. These expectations are incompatible. It's impossible to satisfy both without considering some personal files such as ~/.emacs, ~/.vimrc. So my proposal is that we add the string DO NOT EDIT! GENERATED AUTOMATICALLY! at the top of each generated file, and that you program the 'find-file-hooks' of your Emacs so that it scans the first few lines of the buffer and sets the buffer read-only if it finds this string. Bruno