coordfmt 1.1.0

CLI and library for geographic coordinates format conversions
Documentation
![](https://gitlab.com/misteffens/coordfmt/-/badges/release.svg)
![](https://gitlab.com/misteffens/coordfmt/badges/main/pipeline.svg)
![](https://gitlab.com/misteffens/coordfmt/badges/main/coverage.svg)

# Geographic coordinates format conversions

![](images/coordfmt.svg)

## Description

Mixed rust crate for converting latitude and longitude representations.

Provides
 - a [command line interface]src/man/coordfmt.1.md,
 - as well as [public types and factories]src/lib.rs for parsing and writing
   formatted coordinates.

## Supported formats

| Format identifier | Example                                            | Used in                                            |
|-------------------|----------------------------------------------------|----------------------------------------------------|
| decimal           | `50.894361, 10.955342`                             | [https://maps.google.com]https://maps.google.com |
| dd                | `50.894361°N 10.955342°E`                          | Decimal degrees                                    |
| ddm               | `50°53.6617'N 10°57.3205'E`                        | Degrees, decimal minutes                           |
| dms               | `50°53'39.70''N 10°57'19.23''E`                    | Degrees, minutes, seconds                          |
| fl95              | `N 50 53.7 E 010 57.3`                             | [https://fl95.de]https://fl95.de                 |
| fpl               | `5054N01057E`                                      | AIS flight plans                                   |
| notam             | `505340N 0105719E`                                 | AIS NOTAMs                                         |

## Features

### man: Generate manual page

Dependency: [pandoc](https://crates.io/crates/pandoc).

Build crate including manual page:

```
cargo build --features man
```

Output is written into `target/man`.

## CLI installation

```
cargo install coordfmt
```

## Generate Debian package

Dependencies: feature [`man`](#generate-manual-page), [cargo-deb](https://crates.io/crates/cargo-deb).

Example:

```
cargo deb
```

## Generate RPM package

Dependencies: feature [`man`](#generate-manual-page), [cargo-generate-rpm](https://crates.io/crates/cargo-generate-rpm).

Example:

```
cargo build --release --features man
cargo generate-rpm
```