Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Script_for_sclon #2131

Open
wants to merge 8 commits into
base: devel
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
197 changes: 197 additions & 0 deletions dev/sclon/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,197 @@
▎Описание

Этот скрипт позволяет пользователю вводить слова, которые затем обрабатываются с помощью внешнего Python-скрипта `sklonlxkand.py`. Результаты обработки записываются в файл `lx.js`. Если слово уже было обработано, оно не будет добавлено в файл повторно.

▎Требования

• Установленный Node.js (версия 12 или выше).

• Установленный Python (версия 3.5 или выше).
• Установить пакет на Python `pymorphy2`

```bash
#через pip
pip install pymorphy2
#через yay
yay -S python-pymorphy2
```

• Рекомендуется установить пакет на Python `pymorphy2-dicts-ru` и переодически обновлять

```bash
#через pip
pip install pymorphy2-dicts-ru
pip install -U pymorphy2-dicts-ru
#через yay
yay -S python-pymorphy2-dicts-ru
```

• Доступ к файлу `sklonlxkand.py`, который должен находиться в той же директории, что и этот скрипт.

• Файл `lx.js` будет создан автоматически, если его нет.

▎Запуск

Перейдите к папку, содержащую `sklonlxkand.js`

```bash
node sklonlxkand.js
```


▎Использование

1. После запуска скрипта в терминале появится сообщение:

```bash
Введите слово для обработки (или "exit" для выхода):
```

2. Введите слово, которое вы хотите обработать, и нажмите Enter.

```bash
Введите слово для обработки (или "exit" для выхода): кись
```

3. Скрипт вызовет Python-скрипт `sklonlxkand.py`, который обработает введенное слово и вернет результат.

4. Результат будет выведен в терминал и записан в файл lx.js.

```bash
Результат: {
ie: 'мир',
re: 'мира',
de: 'миру',
ve: 'мир',
te: 'миром',
pe: 'мире',
im: 'миры',
rm: 'миров',
dm: 'мирам',
vm: 'миры',
tm: 'мирами',
pm: 'мирах',
rod: 0,
odu: 0
}
Данные для слова "мир" записаны в файл lx.js
```

Если слово уже существует в файле, вы получите сообщение:
```bash
Слово "ваше_слово" уже существует в файле lx.js.
```

5. Чтобы завершить работу скрипта, введите exit и нажмите Enter.

▎Пример использования
```bash
Введите слово для обработки (или "exit" для выхода): водяной
Результат: {
ie: 'водяной',
re: 'водяного',
de: 'водяному',
ve: 'водяного',
te: 'водяным',
pe: 'водяном',
im: 'водяные',
rm: 'водяных',
dm: 'водяным',
vm: 'водяных',
tm: 'водяными',
pm: 'водяных',
rod: 0,
odu: 1
}
Данные для слова "водяной" записаны в файл lx.js
Введите слово для обработки (или "exit" для выхода): шерсть
Результат: {
ie: 'шерсть',
re: 'шерсти',
de: 'шерсти',
ve: 'шерсть',
te: 'шерстью',
pe: 'шерсти',
im: 'шерсти',
rm: 'шерстей',
dm: 'шерстям',
vm: 'шерсти',
tm: 'шерстями',
pm: 'шерстях',
rod: 1,
odu: 0
}
Данные для слова "шерсть" записаны в файл lx.js
Введите слово для обработки (или "exit" для выхода): ковёр-самолёт
Результат: {
ie: 'ковёр-самолёт',
re: 'ковра-самолёта',
de: 'ковру-самолёту',
ve: 'ковёр-самолёт',
te: 'ковром-самолётом',
pe: 'ковре-самолёте',
im: 'ковры-самолёты',
rm: 'ковров-самолётов',
dm: 'коврам-самолётам',
vm: 'ковры-самолёты',
tm: 'коврами-самолётами',
pm: 'коврах-самолётах',
rod: 0,
odu: 0
}
Данные для слова "ковёр-самолёт" записаны в файл lx.js
Введите слово для обработки (или "exit" для выхода): тать
Результат: {
ie: 'тать',
re: 'татя',
de: 'татю',
ve: 'татя',
te: 'татем',
pe: 'тате',
im: 'тати',
rm: 'татей',
dm: 'татям',
vm: 'татей',
tm: 'татями',
pm: 'татях',
rod: 0,
odu: 1
}
Данные для слова "тать" записаны в файл lx.js
Введите слово для обработки (или "exit" для выхода): грация
Результат: {
ie: 'грация',
re: 'грации',
de: 'грации',
ve: 'грацию',
te: 'грацией',
pe: 'грации',
im: 'грации',
rm: 'граций',
dm: 'грациям',
vm: 'грации',
tm: 'грациями',
pm: 'грациях',
rod: 1,
odu: 0
}
Данные для слова "грация" записаны в файл lx.js
Введите слово для обработки (или "exit" для выхода): кольцо
Результат: {
ie: 'кольцо',
re: 'кольца',
de: 'кольцу',
ve: 'кольцо',
te: 'кольцом',
pe: 'кольце',
im: 'кольца',
rm: 'колец',
dm: 'кольцам',
vm: 'кольца',
tm: 'кольцами',
pm: 'кольцах',
rod: 2,
odu: 0
}
Данные для слова "кольцо" записаны в файл lx.js
```
119 changes: 119 additions & 0 deletions dev/sclon/lx.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@

lx['водяной']={
ie:"водяной",
re:"водяного",
de:"водяному",
ve:"водяного",
te:"водяным",
pe:"водяном",
im:"водяные",
rm:"водяных",
dm:"водяным",
vm:"водяных",
tm:"водяными",
pm:"водяных",
rod:0,
odu:1
};

lx['шерсть']={
ie:"шерсть",
re:"шерсти",
de:"шерсти",
ve:"шерсть",
te:"шерстью",
pe:"шерсти",
im:"шерсти",
rm:"шерстей",
dm:"шерстям",
vm:"шерсти",
tm:"шерстями",
pm:"шерстях",
rod:1,
odu:0
};

lx['ковёр-самолёт']={
ie:"ковёр-самолёт",
re:"ковра-самолёта",
de:"ковру-самолёту",
ve:"ковёр-самолёт",
te:"ковром-самолётом",
pe:"ковре-самолёте",
im:"ковры-самолёты",
rm:"ковров-самолётов",
dm:"коврам-самолётам",
vm:"ковры-самолёты",
tm:"коврами-самолётами",
pm:"коврах-самолётах",
rod:0,
odu:0
};

lx['тать']={
ie:"тать",
re:"татя",
de:"татю",
ve:"татя",
te:"татем",
pe:"тате",
im:"тати",
rm:"татей",
dm:"татям",
vm:"татей",
tm:"татями",
pm:"татях",
rod:0,
odu:1
};

lx['грация']={
ie:"грация",
re:"грации",
de:"грации",
ve:"грацию",
te:"грацией",
pe:"грации",
im:"грации",
rm:"граций",
dm:"грациям",
vm:"грации",
tm:"грациями",
pm:"грациях",
rod:1,
odu:0
};

lx['кольцо']={
ie:"кольцо",
re:"кольца",
de:"кольцу",
ve:"кольцо",
te:"кольцом",
pe:"кольце",
im:"кольца",
rm:"колец",
dm:"кольцам",
vm:"кольца",
tm:"кольцами",
pm:"кольцах",
rod:2,
odu:0
};

lx['мир']={
ie:"мир",
re:"мира",
de:"миру",
ve:"мир",
te:"миром",
pe:"мире",
im:"миры",
rm:"миров",
dm:"мирам",
vm:"миры",
tm:"мирами",
pm:"мирах",
rod:0,
odu:0
};
Loading