Дано:
Этот туториал. На английском работает без придирок, на русском — нет. :\ Не будь глупенькой, загуглила и нашла
решение.
И ведь в теории неплохое: вручную прочитать файл в нужной кодировке. Но не тут-то было. У всех работает, у меня — нет (как всегда). :D
Предупреждая предложение по самому последнему предложенному решению в ветке — прописывать в .ру-файле нужный текст, а затем на него ссылаться в .kv. Оно даже не рассматривается, потому что данный пример нужен был для понимания, кто такой этот ваш kv. Поняла. А дальше весь интерфейс должен быть на русском (написала бы на английском, но комиссия на защите диплома едва поймёт данный выпад. :D).
Код:
spoiler#main.py
# -*- coding: utf-8 -*-
import kivy
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.gridlayout import GridLayout
from kivy.uix.textinput import TextInput
from kivy.uix.button import Button
from kivy.lang import Builder
from kivy.uix.widget import Widget
class MyGrid(Widget):
pass
with open("my.kv", encoding='utf8') as f:
my = Builder.load_string(f.read())
class MyApp(App):
def build(self):
return my
if __name__ == "__main__":
MyApp().run()
#my.kv
#encoding: utf-8
<MyGrid>:
GridLayout:
cols:1
size: root.width, root.height
GridLayout:
cols:2
Label:
text: "Имя: "
TextInput:
multinline:False
Label:
text: "Е-майл: "
TextInput:
multiline:False
Button:
text:"Submit"
Собственно, как именно ругается:
Вопрос: Как заставить его читать всё правильно и вывести наконец-то кириллицу, потому что английский он выводит без проблем? :(
(Если это важно (а это практически всегда важно, как показывает опыт), у меня Mac, и я пока к нему притираюсь и абсолютно не понимаю, что и как в нём менять, поэтому буду очень признательна, если дадите ссылку/инструкцию, если это вдруг будет необходимо.)
spoiler(Можете пошутить, мол, поменяй на нормальный комп и, желательно, на Linux, но я играю на опережение и шучу за вас :D)
UPD. К решению обязательно дочитайте комментарии, иначе не работает.