A user sent a bug-report via the Debian bugreprot system: On 21.04.05, Vincent Bernat wrote: > Package: jed > Version: 0.99.16-5 > Severity: normal > > When writing programs using python-mode, jed mixes tabs and spaces. > Using indent=4, tab=8 is the worse setup : > Here is what Guido recommends : > > Indentation > Use the default of Emacs Python-mode: 4 spaces for one indentation > level. > Tabs or Spaces? > Never mix tabs and spaces. The most popular way of indenting Python is > with spaces only. > See : > <URL:http://www.python.org/doc/essays/styleguide.html> > > This bug is very annoying when opening the code with an editor (like > Emacs) that says that indent=4 and tab=4.
The fast fix would be a line TAB = 4; in python_mode() for a consistent indent-tab behaviour. Until this is fixed, you can define a mode-hook in your .jedrc define python_mode_hook () { TAB = 4; } For the most popular way (only spaces), set USE_TABS = 0; in your .jedrc. However this is global to jed. If you want a fix only for python files, you need to define the python_mode_hook as define python_mode_hook () { TAB = 0; } The problem is how to handle existing files with TABs in them. We can convert them to spaces-only with untab_buffer(), a small helper function in jedmodes.sf.net/mode/bufutils/ however, we have to make sure, the variable TAB is correct, before doing this (as untab replaces a '\t' with TAB spaces. public define untab_buffer() { push_spot(); mark_buffer(); untab(); pop_spot(); } Single lines with TABs are easily reformatted pressing Key_Tab (i.e. with indent-line), but auto-formatting the whole buffer with indent_buffer() fails in most cases (because of the "missing" braces in python). Günter -- G.Milde web.de -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]