semvec/pypi-packages huggingface dataset:
py-penguin 0.1.0
A mini penguin framework
Requires Python: >=3.9

# Penguin
![Senior Penguin Developer](https://i.pinimg.com/originals/9d/c3/bb/9dc3bb15118fe79653c571e76b323b47.jpg)
Welcome to the wonderful frozen world of Penguin, a Python framework as secure as an ice rink in a figure skating competition! 🐧 Developed with the philosophy of "fun above all," Penguin is a deep dive into the realm of asynchronicity and multithreading, where security is a strange word that only appears in more serious tutorials.

Picture a world where threads dance on the ice, async is the soundtrack, and the only commitment is to ensure that the fun never stops. Penguin is your VIP pass to this spectacle, where bugs are just unexpected dance steps, and the only rule is not to take yourself too seriously.

This framework was created for competitions, but don't expect to find firewalls or encryption here - after all, the focus is on unleashing your imagination, not protecting confidential data. So, if you're ready for a frosty adventure and code filled with humor, welcome Penguin to your project and let the fun begin! 🎉❄️

_Note: Penguin is still under construction, so get ready for even more icy excitement in the updates to come!_ ❄️🔨
win-roboco-py 0.5.0
A wrapper for Window's Robocopy utility.
Requires Python: >=3.7
Keywords: copy,move,filesystem,windows

# win-roboco-py
A thin python wrapper around Window's [Robocopy](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/robocopy) utility.

This package is not intended to cover 100% of Robocopy's functionality.
Instead, the focus of the package is allow you to easily take advantage of Robocopy's robustness for the most common operations.

# Contributions
Pull requests or issue tickets are very welcome and appreciated.

# Quick Usage

```python
import win_roboco_py as robo

# Copies the file to the destination, with the same filename.
robo.copy_file(Path('./src/file.txt'), Path('./dst'))

# Copies the file to the destination, then deletes the source file.
robo.move_file(Path('./src/file.txt'), Path('./dst'))

# Copies all files to the destination.
robo.copy_directory(Path('./src'), Path('./dst'), recursive=True)

# Copies all files to the destination, then deletes the sources.
robo.move_directory(Path('./src'), Path('./dst'), recursive=False)

# Copies all files to the destination, and deletes extra files.
robo.mirror_directory(Path('./src'), Path('./dst'))
```
printbuddies 2.1.3
Various printing utilities and helpers/extenders for the `rich` package.
Requires Python: >=3.10
Keywords: print,printing,progressbar,terminal

# printbuddies

Various printing utilities and helpers/extenders for the `rich` package. <br>
Install with:
<pre>pip install printbuddies</pre>


### print_in_place

'print_in_place' erases the current line in the terminal and then writes the value of 
the 'string' param to the terminal.<br>
<pre>
from printbuddies import print_in_place
import time
#This will print numbers 0-99 to the terminal with each digit overwriting the last.
for i in range(100):
    print_in_place(i)
    time.sleep(0.1)
</pre>

### Tag

The `Tag` class is essentially a wrapper to shorten using `rich` tags.  
When a `Tag` is casted to a string it is formatted with surrounding square brackets 
and the `o` or `off` properties can be accessed to return the matching closing tag.  

<pre>
from printbuddies import Tag
p = Tag("pale_turquoise4")
c = Tag("cornflower_blue")
s = f"{p}This{p.o} {c}is{c.o} {p}a{p.o} {c}string"
</pre>

is equivalent to

<pre>
s = "[pale_turquoise4]This[/pale_turquoise4] [cornflower_blue]is[/cornflower_blue] [pale_turquoise4]a[/pale_turquoise4] [cornflower_blue]string"
</pre>

---
The `ColorMap` class contains two `Tag` properties for each 
[named color](https://rich.readthedocs.io/en/latest/appendix/colors.html) 
(except shades of grey, those only have a full name property):
one that's the full name of the color and one that's an abbreviated name, for convenience.  

This is useful for seeing color options using autocomplete:
![](imgs/autocomplete.png)

The class also supports iterating over the tags as well as selecting random colors:
![](imgs/iteration.png)

---
The `Gradient` class inherits from `list` and can be used to easily apply an arbitrary number of color sweeps across text:
![](imgs/gradient.png)

The `Progress`, `BarColumn`, and `TaskProgressColumn` classes, as well as the `track` function are the same as the `rich` versions, just with different default colors, default columns, and additonal keyword arguments.  
`TimerColumn` is a subclass of `rich.progress.TimeRemainingColumn` that displays `{time_elapsed}<->{time_remaining}` with a color gradient.  

Default columns and colors of this version:
![](imgs/progress.gif)

The `Grid` class is a customized implementation of a `rich` Table.  
It can minimally be used by passing a list of dictionaries to the constructor and then passing the instance
to `rich.print` or `rich.console.Console().print`.  
(All dictionaries should have the same set of keys)
<pre>
from printbuddies import Grid
from rich import print
print(Grid(list_of_dicts))
</pre>
Being used to display a database schema:
![](imgs/grid.png)
x2cdict 0.1.48
translate X language into Chinese
Requires Python: >=3.8,<4.0
Keywords: language,dictionary,Chinese

# Installation

```
pip3 install --verbose x2cdict 
```

# Usage
### Environment setting

* `DICT_DB_HOST` is `127.0.0.1` by default
* `DICT_DB_USER` is `dict` by default
* `DICT_DB_PASS` is `turingmachine` by default
* `DEEPL_AUTH_KEY` has to be set by yourself


The dictionary db IS NOT BUILT in this project, you HAVE TO install the DB by yourself, refer to [BaJiu Dictionary Installation](https://github.com/bajiu-dict/deploy_dict_mongo).

### Binary Usage

* Search vocabs with PoS assgined
```
x2cdict_vocab --fromlang en --tolang cn --pos ADJ --word happy --external False
x2cdict_vocab --help
```

* Search vocabs without PoS
```
x2cdict_vocab_without_pos --fromlang en --tolang cn --word happy --external False
x2cdict_vocab_without_pos --help
```

* Search phrase
```
x2cdict_phrase --fromlang en --tolang cn --phrase "overcome the problem"
x2cdict_phrase --help
```

### Issues

* PATH issue:
  * The folder where the exectuable is installed may not be in your `PATH`. For Linux, check the `$HOME/.local/bin` to see whether the executable `x2cdict_*` is installed.
  * Add `export PATH="$HOME/.local/bin:$PATH"` in `$HOME/.bashrc`

* hpack issue:
  ```
  pip3 uninstall hpack
  pip3 install hpack==3.0.0
  ```

### Package Usage
```
from x2cdict import VocabDict, PhraseDict
def search_vocab(word, pos, fromlang, tolang, external):
  vd = VocabDict(fromlang, tolang)
  r = vd.search(word, pos, external)
  print(r)

def search_vocab_without_pos(word, fromlang, tolang, external):
  vd = VocabDict(fromlang, tolang)
  r = vd.search_without_pos(word, external)
  print(r)

def search_phrase(phrase, fromlang, tolang):
  vd = PhraseDict(fromlang, tolang)
  r = vd.search(phrase)
  print(r)
```

From above, `external` is a boolean variable to switch whether using external translation, default is `True`.

# Development

### Clone the project
```
git clone https://github.com/qishe-nlp/x2cdict.git
```

### Install [poetry](https://python-poetry.org/docs/)

### Install dependencies
```
poetry update
```

### Test
```
poetry run pytest -rP
```
which run tests under `tests/*`

### Execute
```
poetry run x2cdict_vocab --help
poetry run x2cdict_vocab_without_pos --help
poetry run xc2dict_phrase --help
```

### Build
* Change `version` in
  * `pyproject.toml`
  * `x2cdict/__init__.py`
  * `tests/test_x2cdict.py`
* Build python package by `poetry build`

### Publish from local dev env
* Set pypi test environment variables in poetry, refer to [poetry doc](https://python-poetry.org/docs/repositories/)
* Publish to pypi test by `poetry publish -r test`

### Publish through CI 

* Github action build and publish package to [test pypi repo](https://test.pypi.org/)

```
git tag [x.x.x]
git push origin master
```

* Manually publish to [pypi repo](https://pypi.org/) through [github action](https://github.com/qishe-nlp/x2cdict/actions/workflows/pypi.yml)