I updated p4.el a few minutes ago and the new code doesn't mess
the global keymap anymore. If you know of other bad things p4.el is
doing, please let me know.
I have two major gripes with p4 mode, both of which are exacerbated by the
fact that we have the largest p4 installation in the world and it can get
quite slow at times.
The first is the version checking code. In order to find out file
information the p4 client has to make a remote call and this is done
everytime a file is loaded or changed. For me at least the version
information is totally useless but the slowdown when I try and load files is
painful - so I would like some way of turning off the status piece of p4
mode. In other words p4 mode only does something with p4 when I hit a key
combination like C-x p e. This would vastly improve my editing experience.
Certainly the version code in CVS, SCCS and RCS modes all just look at a
local file for version information. I know this is not possible in p4, but I
don't think the version information is useful enough (especially in p4 which
is change oriented) to merit the effort in getting this information.
The second problem is related and is the auto-sync mode. I think this may be
implied by the version checking code rather than designed in. In most other
modes if you edit the file outside of emacs (e.g. sync a new version) you
don't find out about it until you actually come to edit the file - at which
point you are prompted to revert. In p4 mode you get prompted endlessly to
revert files once you have sync'ed them externally (unless you have auto
revert on). I believe the default should be as per emacs norms (principle of
least suprise) and this would also mean that you only incur the cost of
reversion when you actually need it.