full2half 0.1.1

Library and CLI for converting full-width characters to half-width characters and vice versa.
Documentation
# Full2Half

A simple project to allow conversion of full-width characters to half-width characters and vice versa, which supplies a library and CLI binary.

## Command-Line Interface

The binary has three main functions.

#### Convert a string directly:

```bash
full2half "Hello World!"
```

#### Do the conversion on a file by overwriting or copying:

This will overwrite the file.

```bash
full2half -f "file_to_convert.txt"
```

This will create a copy with this naming scheme:<br/>
"[File Name] ([Duplicate Counter])[ext]"

```bash
full2half -c -f "file_to_convert.txt"
```

#### Customize Behaviour:

If needed you can also ignore specific characters like so:

```bash
full2half -i "e" "!" -- "Hello World!"
```

Or ignore specific character sets by using the specified flags, get more info by running:

```bash
full2half -h
```

## Installation

To use this library in your Rust project, simply add the following line to your Cargo.toml file:

```toml
[dependencies]
full2half = { version = "0.1.0" }
```

To install the `full2half` binary locally, simply run the following command:

```bash
cargo install full2half
```

The binary will be downloaded from [crates.io](https://crates.io/) and compiled by cargo. After installation you can simply use the `full2half` binary from the command line.

## Usage

Simply import the `CharacterWidth` trait and you are ready to go:

```rust
use full2half::CharacterWidth;

let full_width_string = "Hello World!";
let half_width_string = "Hello World!";

println!("{}", full_width_string.to_half_width());
println!("{}", half_width_string.to_full_width());
```

See more details in the docs.

## Character References

[Wikipedia](https://en.wikipedia.org/wiki/Halfwidth_and_Fullwidth_Forms_(Unicode_block))
<br />
[Unicode](https://www.unicode.org/charts/PDF/UFF00.pdf)

## Contribution

If you find any missing characters, conversion errors, bugs or want to extend functionality feel free to do a merge request.

## License

This library is licensed under the MIT license. See the [LICENSE](./LICENSE) file for details.