Unverified Commit 0987328f authored by Heewon Jeon(gogamza)'s avatar Heewon Jeon(gogamza) Committed by GitHub
Browse files

Merge pull request #1 from lqez/add-script

Add a command-line script
parents b9bf960b 5d5e9ab7
Loading
Loading
Loading
Loading

pykospacing/pykos.py

0 → 100644
+37 −0
Original line number Diff line number Diff line
# -*- coding: utf-8 -*-
import sys
import argparse
from pykospacing import spacing


def get_parser():
    parser = argparse.ArgumentParser(description='Python script for automatic Korean word spacing')

    parser.add_argument('infile', type=argparse.FileType('r'),
                        default=sys.stdin)
    parser.add_argument('outfile', type=argparse.FileType('w'), nargs='?',
                        default=sys.stdout)
    parser.add_argument('-o', dest='overwrite', action='store_true', default=False,
                        help='Overwrite the result itself')

    return parser


def main(args=sys.argv[1:]):
    args = get_parser().parse_args(args)

    source = args.infile.read()
    result = '\n'.join([spacing(_) for _ in source.splitlines()])

    if args.overwrite:
        args.infile.close()
        with open(args.infile.name, 'w', encoding=args.infile.encoding) as f:
            f.write(result)
    else:
        args.outfile.write(result)

    return 0 if (source == result) else 1


if __name__ == '__main__':
    sys.exit(main())
+13 −1
Original line number Diff line number Diff line
@@ -13,5 +13,17 @@ setup(name='pykospacing',
      long_description=open('README.md', encoding='utf-8').read(),
      zip_safe=False,
      include_package_data=True,
      install_requires=['tensorflow >= 1.4.0, <= 1.6.0', 'keras >= 2.1.5', 'h5py >= 2.7.1'],

      install_requires=[
          'tensorflow >= 1.4.0, <= 1.6.0',
          'keras >= 2.1.5',
          'h5py >= 2.7.1',
          'argparse >= 1.4.0',
      ],

      entry_points={
          'console_scripts': [
              'pykos = pykospacing.pykos:main',
          ],
      },
      )