<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>6339</bug_id>
          
          <creation_ts>2005-03-28 20:36:12 +0400</creation_ts>
          <short_desc>Проблемы с tkinter + setlocale()</short_desc>
          <delta_ts>2008-05-29 01:40:49 +0400</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>python-modules-tkinter</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>WORKSFORME</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eugene Vlasov">eugvv</reporter>
          <assigned_to name="Fr. Br. George">george</assigned_to>
          <cc>cow</cc>
    
    <cc>george</cc>
    
    <cc>glebfm</cc>
    
    <cc>imz</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>22818</commentid>
    <comment_count>0</comment_count>
    <who name="Eugene Vlasov">eugvv</who>
    <bug_when>2005-03-28 20:36:12 +0400</bug_when>
    <thetext>После перехода на python 2.4 заметил следующую неприятную особенность: при
попытке использовать в программах с интерфейсом на базе Tkinter простого
вызова locale.setlocale(locale.LC_ALL, &apos;&apos;) на stderr выдается:

error reading package index file /usr/share/tcl/vfs1.3/pkgIndex.tcl:
syntax error in expression &quot;[package provide Tcl] &lt; 8.4&quot;: extra tokens at
end of expression

Ошибка выдается в момент инициализации Tk (в момент создания первого объекта
Tkinter, будь то Frame или Button или Tk), без setlocale() никакой ошибки не
выдается.
Кроме того, после вызова setlocale() не работает клавиша BackSpace в полях ввода
(например Entry).

Вот простой testcase:

#!/usr/bin/python
# -*- coding: koi8-r -*-

import locale
import time
from Tkinter import *

class fmMain(Frame):
    def createWidgets(self):
        self.txtOne = Entry(self)
        self.txtOne.pack()
        self.txtOne[&quot;width&quot;] = 10
        self.btnOne = Button(self)
        self.btnOne[&quot;text&quot;] = unicode(&quot;Проба&quot;, &quot;KOI8-R&quot;)
        self.btnOne[&quot;command&quot;] = self.GetOne
        self.btnOne.pack()

    def __init__(self, master = None):
        Frame.__init__(self, master)
        self.pack()
        self.createWidgets()

    def GetOne(self):
        print time.strftime(&apos;%A&apos;)

locale.setlocale(locale.LC_ALL, &quot;&quot;)
main = fmMain()
main.mainloop()

Выдает упомянутую ошибку, не работает забой в поле ввода. Если закомментировать
вызов setlocale(), ошибки больше нет, забой работает (и день недели при нажатии
на кнопку разумеется выдается в локали C).

eugene ~/update $ rpm -q python-modules-tkinter
python-modules-tkinter-2.4.0-alt9</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>23089</commentid>
    <comment_count>1</comment_count>
    <who name="Eugene Vlasov">eugvv</who>
    <bug_when>2005-04-07 14:13:26 +0400</bug_when>
    <thetext>2.4.1-alt3 - ошибка уже не выдается, но BackSpace в полях ввода по прежнему не
работает после вызова setlocale()
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>23556</commentid>
    <comment_count>2</comment_count>
    <who name="Andrey Orlov">cray</who>
    <bug_when>2005-04-19 15:59:31 +0400</bug_when>
    <thetext>Мндя. Подтверждаю, буду разбираться.... </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>26017</commentid>
    <comment_count>3</comment_count>
    <who name="Andrey Orlov">cray</who>
    <bug_when>2005-06-19 01:35:49 +0400</bug_when>
    <thetext>Мы с братвой закоммитили это в апстрим :(, бум 
ждать...https://sourceforge.net/tracker/index.php?func=detail&amp;aid=1222721&amp;group_id=5470&amp;atid=105470 </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>65466</commentid>
    <comment_count>4</comment_count>
    <who name="Slava Semushin">php-coder</who>
    <bug_when>2008-03-11 14:49:18 +0300</bug_when>
    <thetext>Reassign to real maintainer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70835</commentid>
    <comment_count>5</comment_count>
    <who name="Fr. Br. George">george</who>
    <bug_when>2008-05-28 22:37:46 +0400</bug_when>
    <thetext>В 2.5.1 вроде само куда-то исправилось</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70858</commentid>
    <comment_count>6</comment_count>
    <who name="Eugene Vlasov">eugvv</who>
    <bug_when>2008-05-29 01:40:48 +0400</bug_when>
    <thetext>Да, уже не воспроизводится.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>