Skip to content
/ Klever Public

Проект по программированию, ВШЭ ФиКЛ23

Notifications You must be signed in to change notification settings

AjnoEO/Klever

Repository files navigation

Klever

Умный словарь для кильдинского саамского языка

Авторы: Артём Бойко (БКЛ231), Виктория Жукова (БКЛ232), Александр Мокеев (БКЛ233)

О проекте:

Данное приложение фактически является усовершенствованным поисковиком по трём саамско-русским словарям: Куруч Р. Д., Антоновой А. А. и Керта Г. М. (все они находятся в открытом доступе).

Основное назначение словаря -- по услышанному слову определять его орфографическую запись. Для поиска введите услышанное слово в строку поиска и нажмите на кнопку "Искать" или на клавишу Enter. После этого поисковик предложит возможные варианты, основываясь на том, трудности с различением каких кильдинских саамских звуков возникают у носителей русского языка. Результаты отображаются в порядке от наиболее вероятного к наимение вероятному.

Загрузка и запуск:

Приложение работает на языке Python. ВАЖНО: Python должен быть версии 3.11 или выше! Для установки приложения достаточно загрузить репозиторий себе на компьютер. Это можно сделать через Git Bash:

  • Выберите папку
  • Откройте в ней Git Bash
  • Склонируйте репозиторий
git clone https://github.com/AjnoEO/Klever
  • В вашей папке создастся папка Klever, в которой и содержится наш проект

Перед запуском следует установить все зависимости.

  • Откройте терминал, в котором вы привыкли работать, в папке Klever
  • Установите зависимости
pip install -r requirements.txt
  • Если команда выше не сработала, можно попробовать:
python -m pip install -r requirements.txt

Для начала работы запустите файл main.py в корне папки Klever.

Структура репозитория:

dictionaries: папка с тремя размеченными словарями в файлах формата dsl

example_saami_words: папка с записями нескольких саамских слов; их можно послушать и попробовать на слух найти в нашем словаре, проверив его работоспособность.

mix_ups: папка с двумя файлами; в groups.json описаны фонемы и их признаки, а в mix_ups.csv -- возможные структуры путаниц (путаница -- пара звуков, которые можно в определённой позиции перепутать друг с другом)

.gitignore: технический файл; хранит информацию о том, какие файлы с локальных комьютеров не надо загружать в git при его обновлении

README.md: файл, который вы сейчас читаете :) Содержит информацию о проекте, его структуре.

convert_dict.py: конфертирует словари из формата dsl в json

customtkinter_ext.py: расширяет возможности CustomTkinter по обработке текста: создаёт функцию для удобного и красивого вывода словарной статьи

customtkinter_formatting_manager.py: создаёт классы для форматирования статей

info_about_dict.txt: содержит информацию о работе проекта, которая выводится внутри самого приложения

main.py: содержит основной интерфейс программы. Если мы так и не сделаем установочный файл, для начала работы приложения придётся запускать этот

markup_parser.py: обрабатывает файл словаря json

mix_ups_parser.py: обрабатывает путаницы

requirements.txt: содержит требования и список модулей для работы проекта

style.json: содержит оформление интерфейса

utils.py: вспомогательную функцию, которая уменьшает количество аргументов у подаваемой в неё функции

Источники

Для создания приложения использовалась библиотека CustomTkinter. При написании кода использовалась документация CustomTkinter и документация Tkinter

За помощью мы обращались также к обсуждениям CustomTkinter на GitHub и сайту StackOverflow

Словари взяты в формате DSL с сайта саамские словари

Для парсинга разметки DSL использовался справочник по DSL

About

Проект по программированию, ВШЭ ФиКЛ23

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •