mirror of
https://github.com/cheat/cheat.git
synced 2024-12-22 04:35:06 +01:00
Minor tweaks on PR #163
- Backed out Windows-related work in `setup.py`, because it is still in-progress - Minor changes to the `README`
This commit is contained in:
parent
ccfe2a9cbd
commit
eda53cccd6
@ -50,11 +50,12 @@ to store notes on your favorite cookie recipes, feel free.
|
||||
Installing
|
||||
----------
|
||||
|
||||
The easy way
|
||||
### Using pip ###
|
||||
|
||||
sudo pip install cheat
|
||||
|
||||
The old way
|
||||
|
||||
### Manually ###
|
||||
|
||||
First install the required python dependencies with:
|
||||
|
||||
|
47
setup.py
47
setup.py
@ -1,48 +1,5 @@
|
||||
from distutils.core import setup
|
||||
import os
|
||||
from os.path import join as pjoin, splitext, split as psplit
|
||||
from distutils.command.install_scripts import install_scripts
|
||||
from distutils import log
|
||||
|
||||
BAT_TEMPLATE = \
|
||||
r"""@echo off
|
||||
REM wrapper to use shebang first line of {FNAME}
|
||||
set mypath=%~dp0
|
||||
set pyscript="%mypath%{FNAME}"
|
||||
set /p line1=<%pyscript%
|
||||
if "%line1:~0,2%" == "#!" (goto :goodstart)
|
||||
echo First line of %pyscript% does not start with "#!"
|
||||
exit /b 1
|
||||
:goodstart
|
||||
set py_exe=%line1:~2%
|
||||
call %py_exe% %pyscript% %*
|
||||
"""
|
||||
|
||||
|
||||
class my_install_scripts(install_scripts):
|
||||
def run(self):
|
||||
install_scripts.run(self)
|
||||
if not os.name == "nt":
|
||||
return
|
||||
for filepath in self.get_outputs():
|
||||
# If we can find an executable name in the #! top line of the script
|
||||
# file, make .bat wrapper for script.
|
||||
with open(filepath, 'rt') as fobj:
|
||||
first_line = fobj.readline()
|
||||
if not (first_line.startswith('#!') and
|
||||
'python' in first_line.lower()):
|
||||
log.info("No #!python executable found, skipping .bat "
|
||||
"wrapper")
|
||||
continue
|
||||
pth, fname = psplit(filepath)
|
||||
froot, ext = splitext(fname)
|
||||
bat_file = pjoin(pth, froot + '.bat')
|
||||
bat_contents = BAT_TEMPLATE.replace('{FNAME}', fname)
|
||||
log.info("Making %s wrapper for %s" % (bat_file, filepath))
|
||||
if self.dry_run:
|
||||
continue
|
||||
with open(bat_file, 'wt') as fobj:
|
||||
fobj.write(bat_contents)
|
||||
|
||||
setup(
|
||||
name = 'cheat',
|
||||
@ -67,7 +24,5 @@ setup(
|
||||
install_requires = [
|
||||
'docopt >= 0.6.1',
|
||||
'pygments >= 1.6.0',
|
||||
],
|
||||
cmdclass = {'install_scripts': my_install_scripts}
|
||||
|
||||
]
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user