##// END OF EJS Templates
disallow no-prefix `ipython foo=bar` argument style....
disallow no-prefix `ipython foo=bar` argument style. This style is in rc1, but will be removed in rc2. Since they don't match any flag pattern, rc1-style arguments will be interpreted by IPython as files to be run. So `ipython gui=foo -i` will exec gui=foo, and pass '-i' to gui=foo. Presumably this file won't exist, so there will be an error: Error in executing file in user namespace: gui=foo Assignments *must* have two leading '-', as in: ipython --foo=bar all flags (non-assignments) can be specified with one or two leading '-', as in: ipython -i --pylab -pdb --pprint script.py or ipython --i -pylab --pdb -pprint script.py but help only reports two-leading, as single-leading options will likely be removed on moving to argparse, where they will be replaced by single-letter aliases. The common remaining invalid option will be: ipython -foo=bar and a suggestion for 'did you mean --foo=bar'? will be presented in these cases.

File last commit:

r4175:eaf7f8cf
r4197:368e365a
Show More
ipython_win_post_install.py
134 lines | 4.4 KiB | text/x-python | PythonLexer
/ scripts / ipython_win_post_install.py
Ville M. Vainio
crlf -> lf
r1032 #!python
"""Windows-specific part of the installation"""
import os, sys, shutil
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 pjoin = os.path.join
Ville M. Vainio
crlf -> lf
r1032
Min RK
wininst post install script updated and requires setuptools...
r4094 # import setuptools if we can
try:
import setuptools
except ImportError:
pass
Ville M. Vainio
crlf -> lf
r1032 def mkshortcut(target,description,link_file,*args,**kw):
"""make a shortcut if it doesn't exist, and register its creation"""
create_shortcut(target, description, link_file,*args,**kw)
file_created(link_file)
def install():
"""Routine to be run by the win32 installer with the -install switch."""
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611
Brian Granger
Fixing a few bugs to get the win32 installer working again.
r2060 from IPython.core.release import version
Ville M. Vainio
crlf -> lf
r1032
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 # Get some system constants
prefix = sys.prefix
python = pjoin(prefix, 'python.exe')
Min RK
wininst post install script updated and requires setuptools...
r4094 pythonw = pjoin(prefix, 'pythonw.exe')
have_setuptools = 'setuptools' in sys.modules
if not have_setuptools:
# This currently doesn't work without setuptools,
# so don't bother making broken links
return
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611
# Lookup path to common startmenu ...
Christoph Gohlke
Windows install fixes...
r4175 ip_start_menu = pjoin(get_special_folder_path('CSIDL_COMMON_PROGRAMS'),
'IPython (Py%i.%i %i bit)' % (sys.version_info[0],
sys.version_info[1],
8*tuple.__itemsize__))
Ville M. Vainio
crlf -> lf
r1032 # Create IPython entry ...
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 if not os.path.isdir(ip_start_menu):
os.mkdir(ip_start_menu)
directory_created(ip_start_menu)
# Create .py and .bat files to make things available from
Brian Granger
Added test in ipcluster.py to see if the platform is win32. If so,...
r1613 # the Windows command line. Thanks to the Twisted project
# for this logic!
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612 programs = [
'ipython',
'iptest',
'ipcontroller',
'ipengine',
'ipcluster',
'irunner'
]
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 scripts = pjoin(prefix,'scripts')
Min RK
wininst post install script updated and requires setuptools...
r4094 if not have_setuptools:
# only create .bat files if we don't have setuptools
for program in programs:
raw = pjoin(scripts, program)
bat = raw + '.bat'
py = raw + '.py'
# Create .py versions of the scripts
shutil.copy(raw, py)
# Create .bat files for each of the scripts
bat_file = file(bat,'w')
bat_file.write("@%s %s %%*" % (python, py))
bat_file.close()
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 # Now move onto setting the Start Menu up
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612 ipybase = pjoin(scripts, 'ipython')
Min RK
wininst post install script updated and requires setuptools...
r4094 if have_setuptools:
Darren Dale
fix windows post-installation routines with setuptools installed
r3228 # let setuptools take care of the scripts:
ipybase = ipybase + '-script.py'
Darren Dale
specify windows working directory...
r3227 workdir = "%HOMEDRIVE%%HOMEPATH%"
Ville M. Vainio
crlf -> lf
r1032
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612 link = pjoin(ip_start_menu, 'IPython.lnk')
cmd = '"%s"' % ipybase
Darren Dale
specify windows working directory...
r3227 mkshortcut(python, 'IPython', link, cmd, workdir)
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612
MinRK
restore interactive/shell doc with warning...
r4148 # Disable pysh Start item until the profile restores functionality
# Most of this code is in IPython/deathrow, and needs to be updated
# to 0.11 APIs
# link = pjoin(ip_start_menu, 'pysh.lnk')
# cmd = '"%s" profile=pysh --init' % ipybase
# mkshortcut(python, 'IPython (command prompt mode)', link, cmd, workdir)
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612
Min RK
wininst post install script updated and requires setuptools...
r4094 link = pjoin(ip_start_menu, 'pylab.lnk')
cmd = '"%s" profile=pylab --init' % ipybase
mkshortcut(python, 'IPython (pylab profile)', link, cmd, workdir)
Fernando Perez
Remove test suite from win32 start menu....
r2114
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612 link = pjoin(ip_start_menu, 'ipcontroller.lnk')
Min RK
wininst post install script updated and requires setuptools...
r4094 cmdbase = pjoin(scripts, 'ipcontroller')
if have_setuptools:
cmdbase += '-script.py'
cmd = '"%s"' % cmdbase
Darren Dale
specify windows working directory...
r3227 mkshortcut(python, 'IPython controller', link, cmd, workdir)
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611
Brian Granger
Completely fixed the ipython_win_post_install.py script. It now ...
r1612 link = pjoin(ip_start_menu, 'ipengine.lnk')
Min RK
wininst post install script updated and requires setuptools...
r4094 cmdbase = pjoin(scripts, 'ipengine')
if have_setuptools:
cmdbase += '-script.py'
cmd = '"%s"' % cmdbase
Darren Dale
specify windows working directory...
r3227 mkshortcut(python, 'IPython engine', link, cmd, workdir)
Min RK
wininst post install script updated and requires setuptools...
r4094
link = pjoin(ip_start_menu, 'ipythonqt.lnk')
cmdbase = pjoin(scripts, 'ipython-qtconsole')
if have_setuptools:
cmdbase += '-script.pyw'
cmd = '"%s"' % cmdbase
mkshortcut(pythonw, 'IPython Qt Console', link, cmd, workdir)
Fernando Perez
Fix problem with windows installer script: html docs were not found.
r1589 # Create documentation shortcuts ...
vivainio2
win postinstall script manual location (start menu shortcut)
r1194 t = prefix + r'\share\doc\ipython\manual\ipython.pdf'
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 f = ip_start_menu + r'\Manual in PDF.lnk'
Ville M. Vainio
crlf -> lf
r1032 mkshortcut(t,r'IPython Manual - PDF-Format',f)
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611
Fernando Perez
Fix problem with windows installer script: html docs were not found.
r1589 t = prefix + r'\share\doc\ipython\manual\html\index.html'
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611 f = ip_start_menu + r'\Manual in HTML.lnk'
Ville M. Vainio
crlf -> lf
r1032 mkshortcut(t,'IPython Manual - HTML-Format',f)
Brian Granger
Tried to fix the windows post install script. It now creates...
r1611
Ville M. Vainio
crlf -> lf
r1032
def remove():
"""Routine to be run by the win32 installer with the -remove switch."""
pass
# main()
if len(sys.argv) > 1:
if sys.argv[1] == '-install':
install()
elif sys.argv[1] == '-remove':
remove()
else:
print "Script was called with option %s" % sys.argv[1]