abay111, я у себя делал это так:
Делал папку security, помечал её в .gitignore, в эту папку клал файлы типа daniela.yml в котором примерно такое содердание:
—-
yandexkey: 132435465657687980
anykey: 089786756453434231
login:name
password:passkey
url:server.com/path
И так далее.
И потом в проге указывал, что открываем этот файл через модуль yaml и берем оттуда значения и раскладываем по переменным;
Таким образом в коде будут видны только сами названия переменных, без значений.
Я сегодня вечером переделаю и покажу, что получилось.
Второй момент:
устройство самого нашего приложения, его внутренняя структура, мне не очень нравится. Править в ней что-то довольно сложно, искать ошибки трудно. Хочется ее причесать. Но это дело не мгновенное, и вот я думаю - то-ли ловить ошибки в этой лапше, то-ли сначала причесать, а потом ловить?
Причесать - это, например, вместо:
if word = 'word1' or word = 'word2' or word = 'word3':
pass
сделать что-то вроде
words = ['word1', 'word2', 'word3']
if word in words:
pass
Но это всё надо по всему коду делать, и там много такого.
Пока я разбирался, что к чему, понял один косяк.
В твоем файле захардкоржены ключи к приложениям yandex и еще что-то. Так быть не должно.
Github ведь всем виден и доступен. Кто-то может взять эти ключи и вставить в свои приложения и что-нибудь через них напортачить, а пострадавшие потом тебе будут предъявлять претензии.
Их надо вынести в отдельный файл, и подтягивать оттуда. Этот файл должен быть в .gitignore, естественно, чтобы не подтягивался на github.
Если хочешь, я переделаю это дело, а ты посмотришь.
abay111, как я понимаю:
я делаю клон проекта у себя, вношу изменения, и эти изменения сначала сохраняю в своей копии, а потом проталкиваю в твой проект. Система показывает тебе изменения, ты их либо отклоняешь (например, пишешь замечания или предложения, или просто отклоняешь), либо принимаешь.
Если конфликтов нет , изменения принимаются и присоединяются к твоему проекту, и становятся его неотъемлемой частью.
А прикольная штука! Конечно, поле непаханое работы. Будем посмотреть.
Надо бы сделать вот что: на гитхабе научиться ставить задачи (типа, как ты написал выше про перевод слов и падение). Чтоб не искать по переписке, чтоб в одном месте задачи лежали и как сделал - отчитался там.
Во-первых, тут не всё очевидно, чтобы попробовать ваш код - не хватает некоторых констант и переменных, чтобы оно заработало.
Во-вторых, в коде используется переменная type, совпадающая по имени со служебным стандартным методом type - так лучше не делать.
В-третьих, лучше код вставлять с тегом "код" (сверху там кноповка "вставить исходный код").
Делал папку security, помечал её в .gitignore, в эту папку клал файлы типа daniela.yml в котором примерно такое содердание:
—-
yandexkey: 132435465657687980
anykey: 089786756453434231
login:name
password:passkey
url:server.com/path
И так далее.
И потом в проге указывал, что открываем этот файл через модуль yaml и берем оттуда значения и раскладываем по переменным;
Таким образом в коде будут видны только сами названия переменных, без значений.
Я сегодня вечером переделаю и покажу, что получилось.