usecli 0.1.37__tar.gz → 0.1.38__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {usecli-0.1.37 → usecli-0.1.38}/PKG-INFO +1 -1
- {usecli-0.1.37 → usecli-0.1.38}/pyproject.toml +1 -1
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/init_command.py +29 -19
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/usecli.config.toml +3 -3
- {usecli-0.1.37 → usecli-0.1.38}/LICENSE +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/README.md +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/README.md +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/custom/README.md +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/custom/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/defaults/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/defaults/base/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/defaults/base/about_command.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/defaults/base/help_command.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/defaults/base/inspire_command.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/defaults/base/internal/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/defaults/base/internal/fzf_command.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/defaults/core/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/defaults/core/utils.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/defaults/make/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/defaults/make/make_command.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/defaults/make/make_theme_command.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/config/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/config/colors.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/base_command.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/error/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/error/handler.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/error/utils.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/exceptions/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/exceptions/base.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/exceptions/config.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/exceptions/usage.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/exceptions/validation.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/skill_generator.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/ui/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/ui/list.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/ui/title.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/validators/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/validators/network.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/validators/numeric.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/validators/path.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/core/validators/string.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/services/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/services/command_service.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/templates/command.py.j2 +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/templates/theme.toml.j2 +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/templates/usecli.config.toml.j2 +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/themes/ayu_dark.toml +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/themes/catppuccin_frappe.toml +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/themes/catppuccin_latte.toml +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/themes/catppuccin_macchiato.toml +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/themes/catppuccin_mocha.toml +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/themes/default.toml +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/themes/dracula.toml +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/themes/gruvbox_dark.toml +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/themes/nord.toml +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/themes/tokyo_night.toml +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/utils/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/utils/interactive/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/utils/interactive/terminal_menu.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/menu.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/params.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/shared/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/shared/config/__init__.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/shared/config/globals.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/shared/config/manager.py +0 -0
- {usecli-0.1.37 → usecli-0.1.38}/src/usecli/ui.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "usecli"
|
|
3
|
-
version = "0.1.
|
|
3
|
+
version = "0.1.38"
|
|
4
4
|
description = "A powerful Python CLI framework for building beautiful, developer-friendly command-line tools."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
authors = [{ name = "Edward Boswell", email = "thememium@gmail.com" }]
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
+
import os
|
|
5
6
|
import re
|
|
6
7
|
import shutil
|
|
7
8
|
import subprocess
|
|
@@ -504,7 +505,11 @@ include = ["{root_package}*"]
|
|
|
504
505
|
cwd = Path.cwd()
|
|
505
506
|
config_manager = ConfigManager(start_dir=cwd)
|
|
506
507
|
project_root = config_manager.get_project_root()
|
|
507
|
-
pyproject_path =
|
|
508
|
+
pyproject_path = (
|
|
509
|
+
config_manager.pyproject_path
|
|
510
|
+
if config_manager.pyproject_path.exists()
|
|
511
|
+
else project_root / "pyproject.toml"
|
|
512
|
+
)
|
|
508
513
|
|
|
509
514
|
console.print()
|
|
510
515
|
existing_command_name = self._get_existing_usecli_script_name(pyproject_path)
|
|
@@ -651,24 +656,6 @@ include = ["{root_package}*"]
|
|
|
651
656
|
f"[{COLOR.WARNING}]Default theme already exists:[/{COLOR.WARNING}] {theme_template_path}"
|
|
652
657
|
)
|
|
653
658
|
|
|
654
|
-
# Load the template
|
|
655
|
-
template_path = (
|
|
656
|
-
Path(__file__).parent.parent / "templates" / "usecli.config.toml.j2"
|
|
657
|
-
)
|
|
658
|
-
template_content = template_path.read_text()
|
|
659
|
-
template = Template(template_content)
|
|
660
|
-
|
|
661
|
-
# Render the config
|
|
662
|
-
config_content = template.render(
|
|
663
|
-
title=title,
|
|
664
|
-
description=description,
|
|
665
|
-
commands_dir=commands_dir,
|
|
666
|
-
templates_dir=templates_dir,
|
|
667
|
-
themes_dir=themes_dir,
|
|
668
|
-
title_font=title_font,
|
|
669
|
-
theme=theme,
|
|
670
|
-
)
|
|
671
|
-
|
|
672
659
|
scripts_status: str | None = None
|
|
673
660
|
usecli_config_status: str | None = None
|
|
674
661
|
|
|
@@ -744,6 +731,29 @@ include = ["{root_package}*"]
|
|
|
744
731
|
if replace_existing:
|
|
745
732
|
config_path = existing_config
|
|
746
733
|
|
|
734
|
+
config_dir = config_path.parent
|
|
735
|
+
config_commands_dir = os.path.relpath(commands_path, start=config_dir)
|
|
736
|
+
config_templates_dir = os.path.relpath(templates_path, start=config_dir)
|
|
737
|
+
config_themes_dir = os.path.relpath(themes_path, start=config_dir)
|
|
738
|
+
|
|
739
|
+
# Load the template
|
|
740
|
+
template_path = (
|
|
741
|
+
Path(__file__).parent.parent / "templates" / "usecli.config.toml.j2"
|
|
742
|
+
)
|
|
743
|
+
template_content = template_path.read_text()
|
|
744
|
+
template = Template(template_content)
|
|
745
|
+
|
|
746
|
+
# Render the config
|
|
747
|
+
config_content = template.render(
|
|
748
|
+
title=title,
|
|
749
|
+
description=description,
|
|
750
|
+
commands_dir=config_commands_dir,
|
|
751
|
+
templates_dir=config_templates_dir,
|
|
752
|
+
themes_dir=config_themes_dir,
|
|
753
|
+
title_font=title_font,
|
|
754
|
+
theme=theme,
|
|
755
|
+
)
|
|
756
|
+
|
|
747
757
|
usecli_config_status = self._write_usecli_config(
|
|
748
758
|
config_path, config_content, force
|
|
749
759
|
)
|
|
@@ -3,9 +3,9 @@ title = "usecli"
|
|
|
3
3
|
title_file = ""
|
|
4
4
|
title_font = "ansi_shadow"
|
|
5
5
|
description = "A custom CLI tool"
|
|
6
|
-
commands_dir = "
|
|
7
|
-
templates_dir = "
|
|
8
|
-
themes_dir = "
|
|
6
|
+
commands_dir = "cli/commands/custom"
|
|
7
|
+
templates_dir = "cli/templates"
|
|
8
|
+
themes_dir = "cli/themes"
|
|
9
9
|
theme = "default"
|
|
10
10
|
hide_init = false
|
|
11
11
|
hide_inspire = false
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{usecli-0.1.37 → usecli-0.1.38}/src/usecli/cli/commands/defaults/base/internal/fzf_command.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|