diff --git a/.gitignore b/.gitignore index a2a18869..77308910 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ dist/ build/ deploy/ *.spec +*.egg-info # Documentation docs/build/ diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 00000000..f38487d8 --- /dev/null +++ b/MANIFEST.in @@ -0,0 +1,3 @@ +include LICENSE.md +recursive-include nw/graphics * +recursive-include nw/themes * diff --git a/nw/__init__.py b/nw/__init__.py index 809aeb18..dd091a10 100644 --- a/nw/__init__.py +++ b/nw/__init__.py @@ -67,10 +67,13 @@ logger = logging.getLogger(__name__) # Load the main config as a global object CONFIG = Config() -def main(sysArgs): +def main(sysArgs=None): """Parses command line, sets up logging, and launches main GUI. """ + if sysArgs is None: + sysArgs = sys.argv[1:] + # Valid Input Options shortOpt = "hdDqtl:v" longOpt = [ diff --git a/nw/convert/__init__.py b/nw/convert/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/nw/convert/file/__init__.py b/nw/convert/file/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/nw/convert/text/__init__.py b/nw/convert/text/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/nw/gui/__init__.py b/nw/gui/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/nw/gui/dialogs/__init__.py b/nw/gui/dialogs/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/nw/gui/elements/__init__.py b/nw/gui/elements/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/nw/gui/tools/__init__.py b/nw/gui/tools/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/nw/project/__init__.py b/nw/project/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/nw/tools/__init__.py b/nw/tools/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/sample/sampleNovel/nwProject.nwx b/sample/sampleNovel/nwProject.nwx index af138bec..847d7659 100644 --- a/sample/sampleNovel/nwProject.nwx +++ b/sample/sampleNovel/nwProject.nwx @@ -1,5 +1,5 @@ - + Sample Project Sample Project diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 00000000..065ab174 --- /dev/null +++ b/setup.cfg @@ -0,0 +1,5 @@ +[metadata] +license_files = LICENSE.md + +[bdist_wheel] +universal = 0 diff --git a/setup.py b/setup.py index 84b4d17f..9e24b86e 100755 --- a/setup.py +++ b/setup.py @@ -1,7 +1,45 @@ #!/usr/bin/env python3 -from distutils.core import setup -setup( - name="novelwriter", - version="0.3.2", - py_modules=["nw"], +import setuptools + +with open("README.md", "r") as inFile: + long_description = inFile.read() + +setuptools.setup( + name = "novelWriter", + version = "0.3.2", + author = "Veronica Berglyd Olsen", + author_email = "code@vkbo.net", + description = "A markdown-like document editor for writing novels", + long_description = long_description, + long_description_content_type = "text/markdown", + license = "GNU General Public License v3", + url = "https://github.com/vkbo/novelWriter", + entry_points={"console_scripts": ["novelWriter=nw:main"]}, + packages = setuptools.find_packages(exclude=["docs","tests","sample"]), + include_package_data = True, + package_data = {"": ["*.conf"]}, + project_urls = { + "Bug Tracker": "https://github.com/vkbo/novelWriter/issues", + "Documentation": "https://novelwriter.readthedocs.io/", + "Source Code": "https://github.com/vkbo/novelWriter", + }, + classifiers = [ + "Programming Language :: Python :: 3", + "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", + "Development Status :: 3 - Alpha", + "Operating System :: OS Independent", + "Intended Audience :: End Users/Desktop", + "Natural Language :: English", + "Topic :: Text Editors", + ], + python_requires = ">=3.5", + install_requires = [ + "pyqt5", + "appdirs", + "lxml", + "pyenchant", + "pycountry", + "latexcodec", + "pypandoc", + ], )