##// END OF EJS Templates
Merge pull request #1762 from minrk/locate...
Fernando Perez -
r7397:0d0d2088 merge
parent child Browse files
Show More
@@ -85,6 +85,8 b' ipython profile create foo --parallel # also stage parallel config files'
85 85 _main_examples = """
86 86 ipython profile create -h # show the help string for the create subcommand
87 87 ipython profile list -h # show the help string for the list subcommand
88
89 ipython locate profile foo # print the path to the directory for profile 'foo'
88 90 """
89 91
90 92 #-----------------------------------------------------------------------------
@@ -115,6 +117,18 b' def list_bundled_profiles():'
115 117 return profiles
116 118
117 119
120 class ProfileLocate(BaseIPythonApplication):
121 description = """print the path an IPython profile dir"""
122
123 def parse_command_line(self, argv=None):
124 super(ProfileLocate, self).parse_command_line(argv)
125 if self.extra_args:
126 self.profile = self.extra_args[0]
127
128 def start(self):
129 print self.profile_dir.location
130
131
118 132 class ProfileList(Application):
119 133 name = u'ipython-profile'
120 134 description = list_help
@@ -277,8 +291,8 b' class ProfileApp(Application):'
277 291 examples = _main_examples
278 292
279 293 subcommands = Dict(dict(
280 create = (ProfileCreate, "Create a new profile dir with default config files"),
281 list = (ProfileList, "List existing profiles")
294 create = (ProfileCreate, ProfileCreate.description.splitlines()[0]),
295 list = (ProfileList, ProfileList.description.splitlines()[0]),
282 296 ))
283 297
284 298 def start(self):
@@ -78,6 +78,9 b' ipython help notebook # show the help for the notebook subcmd'
78 78
79 79 ipython profile create foo # create profile foo w/ default config files
80 80 ipython help profile # show the help for the profile subcmd
81
82 ipython locate # print the path to the IPython directory
83 ipython locate profile foo # print the path to the directory for profile `foo`
81 84 """
82 85
83 86 #-----------------------------------------------------------------------------
@@ -180,6 +183,21 b' aliases.update(shell_aliases)'
180 183 # Main classes and functions
181 184 #-----------------------------------------------------------------------------
182 185
186
187 class LocateIPythonApp(BaseIPythonApplication):
188 description = """print the path to the IPython dir"""
189 subcommands = Dict(dict(
190 profile=('IPython.core.profileapp.ProfileLocate',
191 "print the path to an IPython profile directory",
192 ),
193 ))
194 def start(self):
195 if self.subapp is not None:
196 return self.subapp.start()
197 else:
198 print self.ipython_dir
199
200
183 201 class TerminalIPythonApp(BaseIPythonApplication, InteractiveShellApp):
184 202 name = u'ipython'
185 203 description = usage.cl_usage
@@ -219,6 +237,9 b' class TerminalIPythonApp(BaseIPythonApplication, InteractiveShellApp):'
219 237 console=('IPython.frontend.terminal.console.app.ZMQTerminalIPythonApp',
220 238 """Launch the IPython terminal-based Console."""
221 239 ),
240 locate=('IPython.frontend.terminal.ipapp.LocateIPythonApp',
241 LocateIPythonApp.description
242 ),
222 243 ))
223 244
224 245 # *do* autocreate requested profile, but don't create the config file.
@@ -281,7 +281,7 b' configuration, and by default, all profiles will be stored in the so called'
281 281 "IPython directory". The location of this directory is determined by the
282 282 following algorithm:
283 283
284 * If the ``ipython_dir`` command line flag is given, its value is used.
284 * If the ``ipython-dir`` command line flag is given, its value is used.
285 285
286 286 * If not, the value returned by :func:`IPython.utils.path.get_ipython_dir`
287 287 is used. This function will first look at the :envvar:`IPYTHONDIR`
@@ -324,6 +324,25 b' under :file:`profile_default`. If you want the default config files for the'
324 324 :mod:`IPython.parallel` applications, add ``--parallel`` to the end of the
325 325 command-line args.
326 326
327
328 Locating these files
329 --------------------
330
331 From the command-line, you can quickly locate the IPYTHONDIR or a specific
332 profile with:
333
334 .. sourcecode:: bash
335
336 $> ipython locate
337 /home/you/.ipython
338
339 $> ipython locate profile foo
340 /home/you/.ipython/profile_foo
341
342 These map to the utility functions: :func:`IPython.utils.path.get_ipython_dir`
343 and :func:`IPython.utils.path.locate_profile` respectively.
344
345
327 346 .. _Profiles:
328 347
329 348 Profiles
General Comments 0
You need to be logged in to leave comments. Login now