##// END OF EJS Templates
add scipy to start menu
vivainio -
Show More
@@ -1,80 +1,84 b''
1 #!python
1 #!python
2 """Windows-specific part of the installation"""
2 """Windows-specific part of the installation"""
3
3
4 import os, sys, shutil
4 import os, sys, shutil
5
5
6 def mkshortcut(target,description,link_file,*args,**kw):
6 def mkshortcut(target,description,link_file,*args,**kw):
7 """make a shortcut if it doesn't exist, and register its creation"""
7 """make a shortcut if it doesn't exist, and register its creation"""
8
8
9 create_shortcut(target, description, link_file,*args,**kw)
9 create_shortcut(target, description, link_file,*args,**kw)
10 file_created(link_file)
10 file_created(link_file)
11
11
12 def install():
12 def install():
13 """Routine to be run by the win32 installer with the -install switch."""
13 """Routine to be run by the win32 installer with the -install switch."""
14
14
15 from IPython.Release import version
15 from IPython.Release import version
16
16
17 # Get some system constants
17 # Get some system constants
18 prefix = sys.prefix
18 prefix = sys.prefix
19 python = prefix + r'\python.exe'
19 python = prefix + r'\python.exe'
20 # Lookup path to common startmenu ...
20 # Lookup path to common startmenu ...
21 ip_dir = get_special_folder_path('CSIDL_COMMON_PROGRAMS') + r'\IPython'
21 ip_dir = get_special_folder_path('CSIDL_COMMON_PROGRAMS') + r'\IPython'
22
22
23 # Some usability warnings at installation time. I don't want them at the
23 # Some usability warnings at installation time. I don't want them at the
24 # top-level, so they don't appear if the user is uninstalling.
24 # top-level, so they don't appear if the user is uninstalling.
25 try:
25 try:
26 import ctypes
26 import ctypes
27 except ImportError:
27 except ImportError:
28 print ('To take full advantage of IPython, you need ctypes from:\n'
28 print ('To take full advantage of IPython, you need ctypes from:\n'
29 'http://sourceforge.net/projects/ctypes')
29 'http://sourceforge.net/projects/ctypes')
30
30
31 try:
31 try:
32 import win32con
32 import win32con
33 except ImportError:
33 except ImportError:
34 print ('To take full advantage of IPython, you need pywin32 from:\n'
34 print ('To take full advantage of IPython, you need pywin32 from:\n'
35 'http://starship.python.net/crew/mhammond/win32/Downloads.html')
35 'http://starship.python.net/crew/mhammond/win32/Downloads.html')
36
36
37 try:
37 try:
38 import readline
38 import readline
39 except ImportError:
39 except ImportError:
40 print ('To take full advantage of IPython, you need readline from:\n'
40 print ('To take full advantage of IPython, you need readline from:\n'
41 'http://sourceforge.net/projects/uncpythontools')
41 'http://sourceforge.net/projects/uncpythontools')
42
42
43 # Create IPython entry ...
43 # Create IPython entry ...
44 if not os.path.isdir(ip_dir):
44 if not os.path.isdir(ip_dir):
45 os.mkdir(ip_dir)
45 os.mkdir(ip_dir)
46 directory_created(ip_dir)
46 directory_created(ip_dir)
47
47
48 # Create program shortcuts ...
48 # Create program shortcuts ...
49 f = ip_dir + r'\IPython.lnk'
49 f = ip_dir + r'\IPython.lnk'
50 a = prefix + r'\scripts\ipython'
50 a = prefix + r'\scripts\ipython'
51 mkshortcut(python,'IPython',f,a)
51 mkshortcut(python,'IPython',f,a)
52
52
53 f = ip_dir + r'\pysh.lnk'
53 f = ip_dir + r'\pysh.lnk'
54 a = prefix + r'\scripts\ipython -p sh'
54 a = prefix + r'\scripts\ipython -p sh'
55 mkshortcut(python,'IPython command prompt mode',f,a)
55 mkshortcut(python,'IPython command prompt mode',f,a)
56
56
57 f = ip_dir + r'\scipy.lnk'
58 a = prefix + r'\scripts\ipython -pylab -p scipy'
59 mkshortcut(python,'IPython scipy profile',f,a)
60
57 # Create documentation shortcuts ...
61 # Create documentation shortcuts ...
58 t = prefix + r'\share\doc\ipython-%s\manual.pdf' % version
62 t = prefix + r'\share\doc\ipython-%s\manual.pdf' % version
59 f = ip_dir + r'\Manual in PDF.lnk'
63 f = ip_dir + r'\Manual in PDF.lnk'
60 mkshortcut(t,r'IPython Manual - PDF-Format',f)
64 mkshortcut(t,r'IPython Manual - PDF-Format',f)
61
65
62 t = prefix + r'\share\doc\ipython-%s\manual\manual.html' % version
66 t = prefix + r'\share\doc\ipython-%s\manual\manual.html' % version
63 f = ip_dir + r'\Manual in HTML.lnk'
67 f = ip_dir + r'\Manual in HTML.lnk'
64 mkshortcut(t,'IPython Manual - HTML-Format',f)
68 mkshortcut(t,'IPython Manual - HTML-Format',f)
65
69
66 # make ipython.py
70 # make ipython.py
67 shutil.copy(prefix + r'\scripts\ipython', prefix + r'\scripts\ipython.py')
71 shutil.copy(prefix + r'\scripts\ipython', prefix + r'\scripts\ipython.py')
68
72
69 def remove():
73 def remove():
70 """Routine to be run by the win32 installer with the -remove switch."""
74 """Routine to be run by the win32 installer with the -remove switch."""
71 pass
75 pass
72
76
73 # main()
77 # main()
74 if len(sys.argv) > 1:
78 if len(sys.argv) > 1:
75 if sys.argv[1] == '-install':
79 if sys.argv[1] == '-install':
76 install()
80 install()
77 elif sys.argv[1] == '-remove':
81 elif sys.argv[1] == '-remove':
78 remove()
82 remove()
79 else:
83 else:
80 print "Script was called with option %s" % sys.argv[1]
84 print "Script was called with option %s" % sys.argv[1]
General Comments 0
You need to be logged in to leave comments. Login now