toolkit-py 1.5.10
Personal toolkit implemented by Python.
License: MIT license
Requires Python: >=3.9
Keywords: toolkit

# Toolkit-Py

[![License](https://img.shields.io/pypi/l/toolkit-py)](https://github.com/fujiawei-dev/toolkit-py/blob/main/LICENSE)
[![Latest Version](https://img.shields.io/pypi/v/toolkit-py)](https://pypi.org/project/toolkit-py/)
[![Supported Python versions](https://img.shields.io/pypi/pyversions/toolkit-py)](https://pypi.python.org/pypi/toolkit-py)

[![Python Test](https://github.com/fujiawei-dev/toolkit-py/actions/workflows/python-test.yml/badge.svg)](https://github.com/fujiawei-dev/toolkit-py/actions/workflows/python-test.yml)
[![Python Publish](https://github.com/fujiawei-dev/toolkit-py/actions/workflows/python-publish.yml/badge.svg)](https://github.com/fujiawei-dev/toolkit-py/actions/workflows/python-publish.yml)

> Personal toolkit implemented by Python.

## Installation

```shell
pip install -U toolkit-py
```

If you are in China, you can use the following command to install the latest version:

```shell
pip install -U toolkit-py -i https://pypi.douban.com/simple
```

Install it from source code:

```shell
pip install git+https://github.com/fujiawei-dev/toolkit-py.git@main
```

## Usage

```shell
toolkit --help
```

## Thanks

![JetBrains Logo (Main) logo](https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.svg)

## Examples

### Generates HTTP User-Agent header

```shell
gua
```

```
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/15.14986
```

```shell
gua -n chrome
```

```
Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3489.10 Safari/537.36
```

```shell
gua -o android
```

```
Mozilla/5.0 (Linux; Android 8.1; Huawei P20 Lite Build/OPR3.170623.008) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3297.48 Mobile Safari/537.36
```

```shell
gua -n safari -o ios
```

```
Mozilla/5.0 (iPhone; CPU iPhone OS 9_3_3 like Mac OS X) AppleWebKit/602.2.14 (KHTML, like Gecko) Version/9.0 Mobile/13G34 Safari/602.2
```

### Upload pictures to public image hosting server

```shell
upsfortypora "/path/to/file.png"
```

```
Upload Success:
http://dd-static.jd.com/ddimg/jfs/t1/132543/17/21538/145549/61fa87f9E883b9b32/f23efa3a806cab76.jpg
```


# History

v1.5.10 (2022-09-09)

- Updated
    - Improved the directory structure of the notes project.
    - Improve the way note headers are regenerated.
- Added
    - Create a pyinstaller spec file.
    - Generate similar files or directories according to the specified pattern.
    - Soguo image hosting support.
    - Replace online image url to local image path.

v1.5.9 (2022-09-02)

- Added Qt6 QML example template.
- Extract the titles of all articles from the folder as the table of contents.

v1.5.8 (2022-08-31)

- Added
    - cpp example templates
- Fixed
    - do not launch editor if in current directory
    - `test_get_camel_case_styles` test

v1.5.7 (2022-08-29)

- Added `factory_user_input_context_hook` hook.

v1.5.6 (2022-08-24)

- Some improvements
- Launch the editor directly after creating the project

v1.5.5 (2022-08-19)

- Improved Qt5 QML example template.
- Added Qt5 console example template
- Create a note source example at the same time as the note is created.

v1.5.4 (2022-08-15)

- Fixed
    - timeout issue when unzipping a file
- Added
    - example project scaffold

v1.5.3 (2022-08-15)

- Added
    - golang web example templates
    - cpp Qt5 example templates
- Updated
    - ansible templates

v1.5.2 (2022-08-13)

- Improved Qt5 template.
- Improved Python example template.

v1.5.1 (2022-08-12)

- Added
    - more templates
    - improved ansible templates
- Fixed
    - KeyError when deleting `factory` field
    - package typo in Go templates
    - unzip timeout

v1.5.0 (2022-08-10)

- Added
    - generate files from templates for existing project

v1.4.5 (2022-08-09)

- Added
    - use multiple templates at the same time
    - ansible project scaffold
    - golang example and cli project scaffold

v1.4.4 (2022-08-09)

- Fixed
    - missing `python_user_input_context_hook`
    - bad LICENSE reference
- Added
    - serialization module for configuration
    - `enable_click_group` option for python template