mirror of
https://github.com/dexoron/dcr.git
synced 2026-10-21 14:38:30 +00:00
Переименовал update в flag_update. Добавил utils/text.py для вывода сообщений с цветом. Обновил вывод --help, добавил цвета, добавил флаг --version, что бы показать версию dcr
This commit is contained in:
@@ -4,7 +4,7 @@ from .new import new
|
|||||||
from .run import run
|
from .run import run
|
||||||
from .build import build
|
from .build import build
|
||||||
from .clean import clean
|
from .clean import clean
|
||||||
from .update import update
|
from .flag_update import flag_update
|
||||||
|
|
||||||
|
|
||||||
__all__ = [
|
__all__ = [
|
||||||
@@ -14,5 +14,5 @@ __all__ = [
|
|||||||
"run",
|
"run",
|
||||||
"build",
|
"build",
|
||||||
"clean",
|
"clean",
|
||||||
"update",
|
"flag_update",
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import shutil
|
|||||||
import subprocess
|
import subprocess
|
||||||
|
|
||||||
|
|
||||||
def update(args: list[str] | None = None) -> int:
|
def flag_update(args: list[str] | None = None) -> int:
|
||||||
if args and len(args) > 0:
|
if args and len(args) > 0:
|
||||||
print("Ошибка: команда не поддежривает аргументы")
|
print("Ошибка: команда не поддежривает аргументы")
|
||||||
return 1
|
return 1
|
||||||
@@ -1,3 +1,6 @@
|
|||||||
|
from ..utils.text import colored, BRIGHT_GREEN, BRIGHT_CYAN, BOLD
|
||||||
|
|
||||||
|
|
||||||
def help() -> int:
|
def help() -> int:
|
||||||
print(
|
print(
|
||||||
"\n".join(
|
"\n".join(
|
||||||
@@ -5,29 +8,30 @@ def help() -> int:
|
|||||||
"DCR (Dexoron Cargo Realization)",
|
"DCR (Dexoron Cargo Realization)",
|
||||||
"Менеджер C-проектов, вдохновленный Cargo.",
|
"Менеджер C-проектов, вдохновленный Cargo.",
|
||||||
"",
|
"",
|
||||||
"ИСПОЛЬЗОВАНИЕ:",
|
colored("ИСПОЛЬЗОВАНИЕ:", BRIGHT_GREEN + BOLD),
|
||||||
" dcr <команда> [опции]",
|
colored(" dcr <команда> [опции]", BRIGHT_CYAN + BOLD),
|
||||||
"",
|
"",
|
||||||
"КОМАНДЫ:",
|
colored("КОМАНДЫ:", BRIGHT_GREEN + BOLD),
|
||||||
" new <name> Создать новый проект",
|
" new <name> Создать новый проект",
|
||||||
" init Инициализировать текущую директорию как проект",
|
" init Инициализировать текущую директорию как проект",
|
||||||
" build [--profile] Собрать проект (по умолчанию: --debug)",
|
" build [--profile] Собрать проект (по умолчанию: --debug)",
|
||||||
" run [--profile] Собрать и запустить (по умолчанию: --debug)",
|
" run [--profile] Собрать и запустить (по умолчанию: --debug)",
|
||||||
" clean Удалить директорию target",
|
" clean Удалить директорию target",
|
||||||
"ФЛАГИ:",
|
colored("ФЛАГИ:", BRIGHT_GREEN + BOLD),
|
||||||
" --help Показать справку по команде",
|
" --help Показать справку по команде",
|
||||||
" --update Обновить dcr до актуальной версии",
|
" --update Обновить dcr до актуальной версии",
|
||||||
|
" --version Показать версию dcr",
|
||||||
"",
|
"",
|
||||||
"ОПЦИИ:",
|
colored("ОПЦИИ:", BRIGHT_GREEN + BOLD),
|
||||||
" --debug Сборка с профилем debug",
|
" --debug Сборка с профилем debug",
|
||||||
" --release Сборка с профилем release",
|
" --release Сборка с профилем release",
|
||||||
"",
|
"",
|
||||||
"ПРИМЕРЫ:",
|
colored("ПРИМЕРЫ:", BRIGHT_GREEN + BOLD),
|
||||||
" dcr new hello",
|
colored(" dcr new hello", BRIGHT_CYAN + BOLD),
|
||||||
" dcr build --release",
|
colored(" dcr build --release", BRIGHT_CYAN + BOLD),
|
||||||
" dcr run --debug",
|
colored(" dcr run --debug", BRIGHT_CYAN + BOLD),
|
||||||
"",
|
"",
|
||||||
"ПОДСКАЗКА:",
|
colored("ПОДСКАЗКА:", BRIGHT_GREEN + BOLD),
|
||||||
" Запусти 'dcr <команда> --help' для справки по команде.",
|
" Запусти 'dcr <команда> --help' для справки по команде.",
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -40,3 +40,5 @@ flags: dict[str, list[str]] = {
|
|||||||
"release": ["-O3", "-DNDEBUG", "-march=native"],
|
"release": ["-O3", "-DNDEBUG", "-march=native"],
|
||||||
"debug": ["-O0", "-g", "-Wall", "-Wextra", "-fno-omit-frame-pointer", "-DDEBUG"],
|
"debug": ["-O0", "-g", "-Wall", "-Wextra", "-fno-omit-frame-pointer", "-DDEBUG"],
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VERSION = "v0.1.1"
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
|
from src.dcr.config import VERSION
|
||||||
import dcr.cli as cli
|
import dcr.cli as cli
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
@@ -21,10 +22,12 @@ def main() -> int:
|
|||||||
cli.run(args)
|
cli.run(args)
|
||||||
case "clean":
|
case "clean":
|
||||||
cli.clean(args)
|
cli.clean(args)
|
||||||
|
case "--version":
|
||||||
|
print(f"dcr {VERSION} (GNU/Linux)")
|
||||||
case "--help":
|
case "--help":
|
||||||
cli.help()
|
cli.help()
|
||||||
case "--update":
|
case "--update":
|
||||||
cli.update(args)
|
cli.flag_update(args)
|
||||||
case _:
|
case _:
|
||||||
print("Неизвестная команда или аргумент")
|
print("Неизвестная команда или аргумент")
|
||||||
|
|
||||||
|
|||||||
40
src/dcr/utils/text.py
Normal file
40
src/dcr/utils/text.py
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
# RESET
|
||||||
|
RESET = "\033[0m"
|
||||||
|
|
||||||
|
# TEXT STYLES
|
||||||
|
BOLD = "\033[1m"
|
||||||
|
DIM = "\033[2m"
|
||||||
|
ITALIC = "\033[3m"
|
||||||
|
UNDERLINE = "\033[4m"
|
||||||
|
BLINK = "\033[5m"
|
||||||
|
REVERSE = "\033[7m"
|
||||||
|
HIDDEN = "\033[8m"
|
||||||
|
STRIKETHROUGH = "\033[9m"
|
||||||
|
|
||||||
|
# STANDARD COLORS (Foreground)
|
||||||
|
BLACK = "\033[30m"
|
||||||
|
RED = "\033[31m"
|
||||||
|
GREEN = "\033[32m"
|
||||||
|
YELLOW = "\033[33m"
|
||||||
|
BLUE = "\033[34m"
|
||||||
|
MAGENTA = "\033[35m"
|
||||||
|
CYAN = "\033[36m"
|
||||||
|
WHITE = "\033[37m"
|
||||||
|
|
||||||
|
# BRIGHT COLORS
|
||||||
|
BRIGHT_BLACK = "\033[90m"
|
||||||
|
BRIGHT_RED = "\033[91m"
|
||||||
|
BRIGHT_GREEN = "\033[92m"
|
||||||
|
BRIGHT_YELLOW = "\033[93m"
|
||||||
|
BRIGHT_BLUE = "\033[94m"
|
||||||
|
BRIGHT_MAGENTA = "\033[95m"
|
||||||
|
BRIGHT_CYAN = "\033[96m"
|
||||||
|
BRIGHT_WHITE = "\033[97m"
|
||||||
|
|
||||||
|
|
||||||
|
def colored(msg: str, style: str) -> str:
|
||||||
|
return style + msg + RESET
|
||||||
|
|
||||||
|
|
||||||
|
def printc(msg: str, style: str) -> None:
|
||||||
|
print(style + msg + RESET)
|
||||||
Reference in New Issue
Block a user