Metadata-Version: 2.1
Name: pais-accomplishments-tool
Version: 1.4.0b0
Summary: A small tool for generating and transformation accomplishments from BibTex format files
Home-page: https://github.com/CuberHuber/pais-accomplishments-tool
License: CC-BY-NC-SA-4.0
Author: Roman Lupashko
Author-email: mossy0.civets@icloud.com
Requires-Python: >=3.11,<4.0
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: Science/Research
Classifier: License :: Free for non-commercial use
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Scientific/Engineering :: Information Analysis
Classifier: Topic :: Text Processing :: Markup
Requires-Dist: bibtexparser (==2.0.0b7)
Requires-Dist: pymorphy3 (==2.0.1)
Requires-Dist: pymorphy3-dicts-ru (==2.4.417150.4580142)
Requires-Dist: pyyaml (>=6.0.1,<7.0.0)
Project-URL: Repository, https://github.com/CuberHuber/pais-accomplishments-tool
Description-Content-Type: text/markdown

# PAIS Accomplishments

## About
A small tool for generating and transformation accomplishments from BibTex format files.

## Homepage
PYPI: https://pypi.org/project/pais-accomplishments-tool/

## Quick start

### Table of Contents
- [Install](#install)
- [Simple usage](#simple-usage)
- [Accomplishments format](#accomplishments-format)
- [Config format](#config-file)

### Install

For install package run it.
```shell
pip install pais-accomplishments-tool
```

### Upgrade
For upgrade tools to latest version run it
```shell
pip install pais-accomplishments-tool --upgrade
```

### Add to PATH

#### On Mac + zsh
```shell
nano ~/.zshrc
```
And the following line to the `.zshrc` with the actual path of the [package_name] script
```shell
export PATH="/path/to/package:$PATH"
```
For Python 3.11.5 on MacOS 14
```shell
export PATH="/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pais-accomplishments-tool/paisAccTool.py:$PATH"
```

#### On Mac and Linux + bash
```shell
nano ~/.bash_profile
```
And the following line to the `.bash_profile` with the actual path of the [package_name] script
```shell
export PATH="/path/to/package:$PATH"
```
For Python 3.11.5 on MacOS 14
```shell
export PATH="/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pais-accomplishments-tool/paisAccTool.py:$PATH"
```

### Simple usage
#### Help
For watch help message run [paisAccTool.py](pais-accomplishments-tool/paisAccTool.py):
```shell
python3 paisAccTool.py -h
```

#### Sample
For watch to work run [paisAccTool.py](pais-accomplishments-tool/paisAccTool.py) for [sample accomplishments file](accomplishments_sample.bib) it
```shell
python3 paisAccTool.py accomplishments_sample.bib -c -en
```
Terminal output: 
```shell
Hello everyone!
This is the micro tools for contain and formating accomplishments from BibTex source
 [ ]  misc accomplishment: rand1        done
 [ ]  misc accomplishment: rand2        done
 [ ]  misc accomplishment: rand3        done
 [ ]  misc accomplishment: rand4        done
 [ ]  conf accomplishment: conf1        done
1. Наставник образовательной программы Звездный путь.Зима, разработка системы автоматизированного тестирования : Московского государственного университета : 15.02.2023
2. Наставник образовательной программы Тёмная материя.Весна, Разработка системы машинного обучения : Санкт-петербургского государственного университета : 2023-04-10 00:00:00
3. Победитель образовательной программы Космос.Лето, Разработка системы компьютерного зрения : Новосибирского государственного университета : 2023-06-20 00:00:00
4. Участник олимпиады искусственный интеллект.Осень, Разработка системы естественного языка : Томского государственного университета : 2023-09-15 00:00:00
5. Публикация "Система NLP для марсианского языка" : Екатерина Кузнецова : Студенческая конференция Масла и Камня, Банка Китая : 11.04.2023
```
#### Common usage format
```shell
python3 paisAccTool.py <source .bib file> [-d <destination>, -t "template string", -m "field" "for" "transformation", -c, -en]
```

- `--config` path to config file.
- `-c` mean that each new entry will start with a capital letter;
- `-en` mean that the list of accomplishments will be output with numbering.

```shell
usage: paisAccTool.py [-h] [-d DESTINATION] [--config CONFIG] [-c] [-en] source

The micro tools for contain and formating accomplishments from BibTex source

positional arguments:
  source                Path to source .bib file

options:
  -h, --help            show this help message and exit
  -d DESTINATION, --destination DESTINATION
                        Path to destination .bib file
  --config CONFIG       Path to config.yml file
  -c, --capitalize      Flag
  -en, --enumerate      Flag


```

#### Other usage sample
Command to output the list of accomplishments to a file
```shell
python3 paisAccTool.py accomplishments_sample.bib -c -en -d output.txt
```

Command with its own custom config. You can make a config file along the [sample](#config-file).
```shell
python3 paisAccTool.py accomplishments_sample.bib --config /path/to/config.yml
```

### Accomplishments format

Each accomplishment is stored in a .bib file in bibtex format.

**Below are the fields that are used to store misc achievements.**
```bibtex
@misc{identifier,
	prefix = {Твоя роль на мероприятии},
	title = {Название мероприятия},
	type = {Тип мероприятия},
	author = {ФИО},
	organization = {Организация, которая проводит мероприятие},
	section = {Секция на конференции или номинация на олимпиаде, и тп.},
	location = {Место проведения},
	url = {url подтверждения достижения},
	start = {дата начала},
	end = {дата окончания},
	year = {год},
	month = {месяц},
	certificate = {результат, документ подтверждающий результат или участие (диплом, ...)},
	order = {место в конкурсе или статус на мероприятии}
}
```
**Below are the fields that are used to store conf achievements.**
```bibtex
@conf{conf1,
	prefix = {публикация},
	title = {Студенческая конференция Масла и Камня},
	type = {конференция},
	author = {Екатерина Кузнецова},
	organization = {Банк Китая},
	topic = {Система NLP для марсианского языка},
	section = {},
	location = {Зотеро},
	url = {some url},
	start = {11.04.2023},
	end = {15.04.2023},
	year = {2023},
	month = {4},
	certificate = {сборник},
	order = {}
}
```
If you do not have a field to enter your specific information, you can add such a field:
```bibtex
    <key> = {value}
```
The Accomplishments.bib file can be stored locally on your pc or in a remote git repository, so every commit means a new achievement (very convenient).

### Config file
The Config file represent as a yaml file.
Its format:
```yaml
kinds:
  <entry_type>:
    template: 'template string'
    morphs:
      - <field 1>
      - <field 2>
sort:
  field: <key of field>
  reversed: <boolean>
```
For example, you can look on the default config:
```yaml
kinds:
  misc:
    template: '{prefix} {type} {title}, {section} : {organization} : {start}'
    morphs:
      - type
      - organization
  conf:
    template: '{prefix} "{topic}" : {author} : {title}, {organization} : {start}'
    morphs:
      - organization
```

