https://github.com/stepainpy/newick-converter
simple converter
https://github.com/stepainpy/newick-converter
converter cpp newick newick-format simple terminal terminal-app
Last synced: about 1 month ago
JSON representation
simple converter
- Host: GitHub
- URL: https://github.com/stepainpy/newick-converter
- Owner: Stepainpy
- Created: 2023-11-09T11:47:10.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-11-09T13:33:52.000Z (over 1 year ago)
- Last Synced: 2025-02-14T22:31:49.472Z (3 months ago)
- Topics: converter, cpp, newick, newick-format, simple, terminal, terminal-app
- Language: C++
- Homepage:
- Size: 4.88 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Newick converter
Простой конвертер в Newick формат## Сборка
Основное:
* в коде подразумевается, что exe-файл называется convert
* при сборке использовался стандарт C++20## Использование
### Представление дерева
Для представления дерева используется такой синтаксис
```
Aa (a - ...)
Bb (b - ...)
Cc (c - ...)
Dd (d - ...)
```
`Aa` - имя клады
`(a - ...)` - дополнительная информация
В newick попадает только имя клады### Время появления
Можно использовать длину ветви для отображения времени появления клады. Для описания используется такое представление (дерево из предыдушего пример):
```
5
Aa 10
Bb 20
Cc 25
Dd 15
```
получится
```
((Bb:10,Cc:15)Aa:5,Dd:10);
```
значение длины равно разнице возраста дочерней и родительской клады.
т.е.: `Bb - Aa = 20 - 10 = 5` и `Dd - 5 = 15 - 5 = 10`## Флаги
Сейчас есть такие флаги:
|короткий|длинный|описание|
|:---:|:---|:---|
|`-h`|`--help`|вывод краткой сводки|
|`-l`|`--leafs`|удаление не листовых имен|
|`-a`|`--add-length`|для именованых клад добавляет значение длины ветви равной 1|
|`-A`|`--all-length`|дополнение к `-a`, добавляет длину в 0.5 для неименованых клад|
|`-c`|`--clipboard`|копирование результата сразу в буфер обмена|
|`-t`|`--timeline`|устанавливает путь до файла с временем появления, синтаксис `-t `|### Шаблон ввода
```
convert [flags] [[-t | --timeline] ]
```
`tree-file` и `timeline-file` - txt файлы