Anthony DiGirolamo | 26ed98a | 2021-06-11 14:50:29 -0700 | [diff] [blame] | 1 | .. _module-pw_console: |
| 2 | |
| 3 | ---------- |
| 4 | pw_console |
| 5 | ---------- |
| 6 | |
| 7 | The Pigweed Console provides a Python repl (read eval print loop) using |
Anthony DiGirolamo | 8a49880 | 2021-06-14 23:52:42 -0700 | [diff] [blame] | 8 | `ptpython`_ and a log message viewer in a single-window terminal based |
| 9 | interface. It is designed to be a replacement for `IPython's embed()`_ function. |
| 10 | |
Anthony DiGirolamo | 4644099 | 2021-07-19 16:07:47 -0700 | [diff] [blame] | 11 | Features |
Anthony DiGirolamo | 546619f | 2021-07-22 17:44:04 -0700 | [diff] [blame] | 12 | ======== |
Anthony DiGirolamo | 4644099 | 2021-07-19 16:07:47 -0700 | [diff] [blame] | 13 | |
Anthony DiGirolamo | 546619f | 2021-07-22 17:44:04 -0700 | [diff] [blame] | 14 | ``pw_console`` aims to be a complete solution for interacting with hardware |
| 15 | devices using :ref:`module-pw_rpc` over a :ref:`module-pw_hdlc` transport. |
| 16 | |
| 17 | - Interactive Python repl and log viewer in a single terminal window. This |
| 18 | provides interactive RPC sending while the log viewer provides immediate |
| 19 | feedback on device status. |
Anthony DiGirolamo | 8a49880 | 2021-06-14 23:52:42 -0700 | [diff] [blame] | 20 | |
| 21 | - Easily embeddable within a project's own custom console. This should allow |
| 22 | users to define their own transport layer. |
| 23 | |
Anthony DiGirolamo | 8a49880 | 2021-06-14 23:52:42 -0700 | [diff] [blame] | 24 | - Log viewer with searching and filtering. |
| 25 | |
Anthony DiGirolamo | 4644099 | 2021-07-19 16:07:47 -0700 | [diff] [blame] | 26 | Contributing |
| 27 | ============ |
Anthony DiGirolamo | 8a49880 | 2021-06-14 23:52:42 -0700 | [diff] [blame] | 28 | |
Anthony DiGirolamo | 4644099 | 2021-07-19 16:07:47 -0700 | [diff] [blame] | 29 | - All code submissions to ``pw_console`` require running the |
| 30 | :ref:`module-pw_console-testing`. |
Anthony DiGirolamo | 26ed98a | 2021-06-11 14:50:29 -0700 | [diff] [blame] | 31 | |
Anthony DiGirolamo | 4644099 | 2021-07-19 16:07:47 -0700 | [diff] [blame] | 32 | - Commit messages should include a ``Testing:`` line with the steps that were |
| 33 | manually run. |
Anthony DiGirolamo | 26ed98a | 2021-06-11 14:50:29 -0700 | [diff] [blame] | 34 | |
Anthony DiGirolamo | 4644099 | 2021-07-19 16:07:47 -0700 | [diff] [blame] | 35 | Guides |
| 36 | ====== |
Anthony DiGirolamo | 26ed98a | 2021-06-11 14:50:29 -0700 | [diff] [blame] | 37 | |
Anthony DiGirolamo | 4644099 | 2021-07-19 16:07:47 -0700 | [diff] [blame] | 38 | .. toctree:: |
| 39 | :maxdepth: 1 |
Anthony DiGirolamo | f53188a | 2021-06-29 09:57:07 -0700 | [diff] [blame] | 40 | |
Anthony DiGirolamo | 546619f | 2021-07-22 17:44:04 -0700 | [diff] [blame] | 41 | py/pw_console/docs/user_guide |
Anthony DiGirolamo | 4644099 | 2021-07-19 16:07:47 -0700 | [diff] [blame] | 42 | embedding |
| 43 | testing |
| 44 | internals |
Anthony DiGirolamo | f53188a | 2021-06-29 09:57:07 -0700 | [diff] [blame] | 45 | |
Anthony DiGirolamo | 8a49880 | 2021-06-14 23:52:42 -0700 | [diff] [blame] | 46 | |
| 47 | .. _IPython's embed(): https://ipython.readthedocs.io/en/stable/interactive/reference.html#embedding |
| 48 | .. _IPython: https://ipython.readthedocs.io/ |
Anthony DiGirolamo | 8a49880 | 2021-06-14 23:52:42 -0700 | [diff] [blame] | 49 | .. _prompt_toolkit: https://python-prompt-toolkit.readthedocs.io/ |
| 50 | .. _ptpython: https://github.com/prompt-toolkit/ptpython/ |
Anthony DiGirolamo | 4644099 | 2021-07-19 16:07:47 -0700 | [diff] [blame] | 51 | |