Metadata-Version: 2.1
Name: sedeuce
Version: 0.1.1
Summary: A sed clone in Python with both CLI and library interfaces
Home-page: https://github.com/Tails86/sedeuce
Author: James Smith
Author-email: jmsmith86@gmail.com
License: UNKNOWN
Project-URL: Documentation, https://github.com/Tails86/sedeuce
Project-URL: Bug Reports, https://github.com/Tails86/sedeuce/issues
Project-URL: Source Code, https://github.com/Tails86/sedeuce
Keywords: sed,files,regex,replace
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Information Technology
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.5
Description-Content-Type: text/markdown
Provides-Extra: dev
Requires-Dist: check-manifest ; extra == 'dev'

# sedeuce
A sed clone in Python with both CLI and library interfaces

## Current Support

- Can input script string from command line
    - Line range and regex conditions are supported
    - Substitute command is supported (except for special sequence characters in replace string i.e. \l \L \u \U \E)
- Can optionally input file list from command line
    - Read from stdin is supported if no files given
- Option -i, --in-place supported

## Known Differences with sed

- Substitute
    - The Python module re is internally used for all regular expressions. The inputted regular
    expression is modified only when basic regular expressions are used.
    - The m/M modifier will act differently due to how Python re handles multiline mode

## Development Roadmap

- Support for special sequence characters in substitute command
- Support all or most of the SED script commands
- Support all options
- Add custom line identifier option input
- Implement unit tests for all features
- Add CI workflow

## CLI Help

```
usage: sedeuce [-h] [-i [SUFFIX]] [--version] [--verbose] [script]
               [input-file [input-file ...]]

A sed clone in Python with both CLI and library interfaces

positional arguments:
  script                script, only if no other script defined below
  input-file            Input file(s) to parse

optional arguments:
  -h, --help            show this help message and exit
  -i [SUFFIX], --in-place [SUFFIX]
                        edit files in place (makes backup if SUFFIX supplied)
  --version             output version information and exit
  --verbose             show verbose errors

NOTE: Only substitute command is currently available
```

