Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Python > Is there a way to configure IDLE to use spaces instead of tabs for indenting?

Reply
Thread Tools

Is there a way to configure IDLE to use spaces instead of tabs for indenting?

 
 
Alex
Guest
Posts: n/a
 
      08-24-2012
I'm new to Python and have been using IDLE 3.2.3 to experiment with
code as I learn. Despite being configured to use a 4 space indentation
width, sometimes IDLE's "smart" indentation insists upon using width-8
tabs.

From what I've been able to find on Google, this is due to a
shortcoming in Tk. While it's not that big a deal in the grand scheme
of things, I think it looks like poop, and I'd like to change IDLE to
use 4-space indentation instead of tabs for all indentation levels.

Is there any way for me to achieve what I want in IDLE, or do I have to
start up my full-blown IDE if I want consistent 4-space indentation?

Alex
 
Reply With Quote
 
 
 
 
Terry Reedy
Guest
Posts: n/a
 
      08-25-2012
On 8/24/2012 6:33 PM, Alex wrote:
> I'm new to Python and have been using IDLE 3.2.3 to experiment with
> code as I learn. Despite being configured to use a 4 space indentation


That applies to the editor and works in the editor for me and others. A
tab becomes 4 space characters, and a backspace in the appropriate place
deletes 4 space characters.

> width, sometimes IDLE's "smart" indentation insists upon using width-8
> tabs.


Only for the simulated interpreter. There is a tracker issue about
changing that but no consensus.


--
Terry Jan Reedy

 
Reply With Quote
 
 
 
 
Alex
Guest
Posts: n/a
 
      08-25-2012
Terry Reedy wrote:

> On 8/24/2012 6:33 PM, Alex wrote:
> > Despite being configured to use a 4 space
> > indentation

....
> > sometimes IDLE's "smart" indentation insists upon using
> > width-8 tabs.

>
> [The 4-space indentation setting] applies to the editor and works in
> the editor for me and others.
>
> [The width-8 tabs are inserted] Only for the simulated interpreter.
> There is a tracker issue about changing that but no consensus.


Yes, it works in the editor. I was referring to the simulated
interpreter. I guess I didn't make that clear.

In my search for a solution, I did see some of the traffic regarding
the tracker issue, but the posts were all several years old and I was
hoping maybe there was a fix by now. I guess not. Maybe in Python 4, eh?

Thanks.

Alex

 
Reply With Quote
 
Mark Lawrence
Guest
Posts: n/a
 
      08-25-2012
On 25/08/2012 13:50, Alex wrote:
> Terry Reedy wrote:
>
>> On 8/24/2012 6:33 PM, Alex wrote:
>>> Despite being configured to use a 4 space
>>> indentation

> ...
>>> sometimes IDLE's "smart" indentation insists upon using
>>> width-8 tabs.

>>
>> [The 4-space indentation setting] applies to the editor and works in
>> the editor for me and others.
>>
>> [The width-8 tabs are inserted] Only for the simulated interpreter.
>> There is a tracker issue about changing that but no consensus.

>
> Yes, it works in the editor. I was referring to the simulated
> interpreter. I guess I didn't make that clear.
>
> In my search for a solution, I did see some of the traffic regarding
> the tracker issue, but the posts were all several years old and I was
> hoping maybe there was a fix by now. I guess not. Maybe in Python 4, eh?
>
> Thanks.
>
> Alex
>


For the record issue 7676, yes?

--
Cheers.

Mark Lawrence.

 
Reply With Quote
 
Alex
Guest
Posts: n/a
 
      08-25-2012
Mark Lawrence wrote:

> On 25/08/2012 13:50, Alex wrote:
> > Terry Reedy wrote:
> >
> > > On 8/24/2012 6:33 PM, Alex wrote:
> > > > Despite being configured to use a 4 space
> > > > indentation

> > ...
> > > > sometimes IDLE's "smart" indentation insists upon using
> > > > width-8 tabs.
> > >
> > > [The 4-space indentation setting] applies to the editor and works
> > > in the editor for me and others.
> > >
> > > [The width-8 tabs are inserted] Only for the simulated
> > > interpreter. There is a tracker issue about changing that but no
> > > consensus.

> >
> > Yes, it works in the editor. I was referring to the simulated
> > interpreter. I guess I didn't make that clear.
> >
> > In my search for a solution, I did see some of the traffic regarding
> > the tracker issue, but the posts were all several years old and I
> > was hoping maybe there was a fix by now. I guess not. Maybe in
> > Python 4, eh?
> >
> > Thanks.
> >
> > Alex
> >

>
> For the record issue 7676, yes?


Yes, that appears to be the issue I was talking about and is, in fact,
one of the threads I had looked at before posting here. Of course, I
didn't pay enough attention to the dates. I see the most recent posting
on the issue appears to have been made in January of this year, so I
should have realized it's an ongoing issue.
 
Reply With Quote
 
Terry Reedy
Guest
Posts: n/a
 
      08-25-2012
On 8/25/2012 10:17 AM, Alex wrote:

> Yes, that appears to be the issue I was talking about and is, in fact,
> one of the threads I had looked at before posting here. Of course, I
> didn't pay enough attention to the dates. I see the most recent posting
> on the issue appears to have been made in January of this year, so I
> should have realized it's an ongoing issue.


There have also been a few posts this year on the idle-sig mail list.

There are only a few people working on IDLE and we have concentrated
this calendar year on fixing crashers, not semi-aesthetic issues.

--
Terry Jan Reedy

 
Reply With Quote
 
Ramchandra Apte
Guest
Posts: n/a
 
      09-05-2012
On Saturday, 25 August 2012 04:03:52 UTC+5:30, Alex wrote:
> I'm new to Python and have been using IDLE 3.2.3 to experiment with
>
> code as I learn. Despite being configured to use a 4 space indentation
>
> width, sometimes IDLE's "smart" indentation insists upon using width-8
>
> tabs.
>
>
>
> From what I've been able to find on Google, this is due to a
>
> shortcoming in Tk. While it's not that big a deal in the grand scheme
>
> of things, I think it looks like poop, and I'd like to change IDLE to
>
> use 4-space indentation instead of tabs for all indentation levels.
>
>
>
> Is there any way for me to achieve what I want in IDLE, or do I have to
>
> start up my full-blown IDE if I want consistent 4-space indentation?
>
>
>
> Alex


I think an IDE is better than IDLE. Try NINJA IDE. http://ninja-ide.org
 
Reply With Quote
 
Alex
Guest
Posts: n/a
 
      09-06-2012
Ramchandra Apte wrote:

> On Saturday, 25 August 2012 04:03:52 UTC+5:30, Alex wrote:
> > I'm new to Python and have been using IDLE 3.2.3 to experiment with
> >
> > code as I learn. Despite being configured to use a 4 space
> > indentation
> >
> > width, sometimes IDLE's "smart" indentation insists upon using
> > width-8
> >
> > tabs.
> >
> >
> >
> > From what I've been able to find on Google, this is due to a
> >
> > shortcoming in Tk. While it's not that big a deal in the grand
> > scheme
> >
> > of things, I think it looks like poop, and I'd like to change IDLE
> > to
> >
> > use 4-space indentation instead of tabs for all indentation levels.
> >
> >
> >
> > Is there any way for me to achieve what I want in IDLE, or do I
> > have to
> >
> > start up my full-blown IDE if I want consistent 4-space indentation?
> >
> >
> >
> > Alex

>
> I think an IDE is better than IDLE. Try NINJA IDE.
> http://ninja-ide.org


Agreed. I like PyDev in Eclipse, but sometimes I just want to try out
something quick in the interpreter, to ensure I understand it or do a
quick experiment. Since indentation is syntactically significant in
Python, I think fixing the interpreter to produce good, readable,
cut-and-pasteable, and Pythonic code is more important than a cosmetic
feature, but less important than true bugs.
 
Reply With Quote
 
Ramchandra Apte
Guest
Posts: n/a
 
      09-06-2012
On Thursday, 6 September 2012 19:13:23 UTC+5:30, Alex wrote:
> Ramchandra Apte wrote:
>
>
>
> > On Saturday, 25 August 2012 04:03:52 UTC+5:30, Alex wrote:

>
> > > I'm new to Python and have been using IDLE 3.2.3 to experiment with

>
> > >

>
> > > code as I learn. Despite being configured to use a 4 space

>
> > > indentation

>
> > >

>
> > > width, sometimes IDLE's "smart" indentation insists upon using

>
> > > width-8

>
> > >

>
> > > tabs.

>
> > >

>
> > >

>
> > >

>
> > > From what I've been able to find on Google, this is due to a

>
> > >

>
> > > shortcoming in Tk. While it's not that big a deal in the grand

>
> > > scheme

>
> > >

>
> > > of things, I think it looks like poop, and I'd like to change IDLE

>
> > > to

>
> > >

>
> > > use 4-space indentation instead of tabs for all indentation levels.

>
> > >

>
> > >

>
> > >

>
> > > Is there any way for me to achieve what I want in IDLE, or do I

>
> > > have to

>
> > >

>
> > > start up my full-blown IDE if I want consistent 4-space indentation?

>
> > >

>
> > >

>
> > >

>
> > > Alex

>
> >

>
> > I think an IDE is better than IDLE. Try NINJA IDE.

>
> > http://ninja-ide.org

>
>
>
> Agreed. I like PyDev in Eclipse, but sometimes I just want to try out
>
> something quick in the interpreter, to ensure I understand it or do a
>
> quick experiment. Since indentation is syntactically significant in
>
> Python, I think fixing the interpreter to produce good, readable,
>
> cut-and-pasteable, and Pythonic code is more important than a cosmetic
>
> feature, but less important than true bugs.


Agree.
 
Reply With Quote
 
Terry Reedy
Guest
Posts: n/a
 
      09-06-2012
On 9/6/2012 9:43 AM, Alex wrote:

>> On Saturday, 25 August 2012 04:03:52 UTC+5:30, Alex wrote:
>>> I'm new to Python and have been using IDLE 3.2.3 to experiment with
>>> code as I learn. Despite being configured to use a 4 space
>>> indentation width, sometimes IDLE's "smart" indentation insists
>>> upon using width-8 tabs.


[snip]

> Agreed. I like PyDev in Eclipse, but sometimes I just want to try out
> something quick in the interpreter, to ensure I understand it or do a
> quick experiment.


You have two choices that come with the distribution: the console and
IDLE. I prefer IDLE. IPython and other shells and IDEs are other choices.

> Since indentation is syntactically significant in
> Python, I think fixing the interpreter to produce good, readable,
> cut-and-pasteable, and Pythonic code is more important than a cosmetic
> feature, but less important than true bugs.


IDLE is not the interpreter. As I said before, the IDLE editor *already*
does what you want. The IDLE Shell is intended mainly for single-line
inputs. For compound statements, it does automatic indenting, unlike the
console (at least not on Windows). It uses a tab to guarantee that the
code is visually indented. It does not use secondary prompts because a)
they would not line up anyway with proportional fonts and b) they would
appear in cut and paste copies. This probably count be improved, and has
been discussed, but someone has to volunteer to write a patch that shows
that it can be improved without introducing negative consequences. I
would test one if one appears.

For more than a three-line compound statement, I use the editor with a
scratchpad file where editing is *much* easier. If the compound
statement is a class or function definition, you need more statements
anyway to actually exercise the definition. Hitting F5 to run is as easy
as putting the cursor at the end of the statement and hitting Enter. And
it runs multiple statements at once, not just one.

--
Terry Jan Reedy

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Tabs -vs- Spaces: Tabs should have won. rantingrick Python 95 07-18-2011 11:07 PM
How do you configure IDLE on a Mac, seeing as there's no ConfigureOption... Mensanator Python 12 01-06-2010 02:51 AM
Difficulty with "inconsistent use of tabs and spaces in indentation"in file called <string> ibloom Python 12 02-13-2008 03:46 PM
CSV::Writer... Using tabs instead of commas (or creating excel file using tabs to seperate data) John Kopanas Ruby 2 01-29-2007 06:26 PM
How to use split on spaces AND tabs? nospam Perl 2 07-03-2004 09:23 PM



Advertisments