feat: implement edit-command
Some checks failed
Continuous Integration / Lint, Check & Test (push) Failing after 47s

Signed-off-by: Konstantin Fickel <mail@konstantinfickel.de>
This commit is contained in:
Konstantin Fickel 2026-02-01 10:01:40 +01:00
parent a662077831
commit eaca24b8ae
Signed by: kfickel
GPG key ID: A793722F9933C1A5

View file

@ -2,7 +2,7 @@ import glob
import os
from datetime import datetime
from shutil import move
from typing import Generator
from typing import Annotated, Generator
import click
import typer
@ -54,6 +54,23 @@ def todo() -> None:
)
@app.command()
def edit(number: Annotated[int, typer.Argument()] = 1) -> None:
all_shards = list(all_files(TaskConfiguration))
sorted_shards = sorted(all_shards, key=lambda s: s.moment)
if abs(number) >= len(sorted_shards):
raise ValueError("Argument out of range")
selected_number = number
if selected_number >= 0:
selected_number = len(sorted_shards) - selected_number
else:
selected_number = -selected_number
click.edit(None, filename=sorted_shards[selected_number].location["file"])
@app.command()
def new() -> None:
streamer_directory = Settings().base_folder