File: minimum.md

package info (click to toggle)
cmd2 3.2.0%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 2,664 kB
  • sloc: python: 17,488; makefile: 114; sh: 39; javascript: 7
file content (48 lines) | stat: -rw-r--r-- 1,300 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# Minimum Required Changes

[cmd2.Cmd][] provides all of the same public methods and fields of
[cmd.Cmd](https://docs.python.org/3/library/cmd.html#cmd.Cmd) from the standard library other than
`Cmd.emptyline` (`cmd2` never calls this method). Most apps based on the standard library can be
migrated to `cmd2` in just a couple of minutes.

## Import and Inheritance

You need to change your import from this:

```py
import cmd
```

to this:

```py
import cmd2
```

Then you need to change your class definition from:

```py
class CmdLineApp(cmd.Cmd):
```

to:

```py
class CmdLineApp(cmd2.Cmd):
```

## Exiting

Have a look at the commands you created to exit your application. You probably have one called
`exit` and maybe a similar one called `quit`. You also might have implemented a `do_EOF()` method so
your program exits like many operating system shells. If all these commands do is quit the
application, you may be able to remove them. See [Exiting](../features/misc.md#exiting).

## Distribution

If you are distributing your application, you'll also need to ensure that `cmd2` is properly
installed. You will need to add the following dependency to your `pyproject.toml` or `setup.py`:

    'cmd2>=3,<4'

See [Integrate cmd2 Into Your Project](../overview/integrating.md) for more details.