summaryrefslogtreecommitdiffstatshomepage
path: root/py/repl.c
Commit message (Collapse)AuthorAge
* py: Declare constant data as properly constant.Damien George2016-05-20
| | | | | Otherwise some compilers (eg without optimisation) will put this read-only data in RAM instead of ROM.
* py/repl: Fix handling of backslash in quotes when checking continuation.Damien George2016-05-11
|
* py/repl: If there're no better alternatives, try to complete "import".Paul Sokolovsky2016-05-08
| | | | | | Also do that only for the first word in a line. The idea is that when you start up interpreter, high chance that you want to do an import. With this patch, this can be achieved with "i<tab>".
* py: add async/await/async for/async with syntaxpohmelie2016-04-13
| | | | | | | | They are sugar for marking function as generator, "yield from" and pep492 python "semantically equivalents" respectively. @dpgeorge was the original author of this patch, but @pohmelie made changes to implement `async for` and `async with`.
* py/repl: Check for an identifier char after the keyword.Alex March2016-02-17
| | | | | - As described in the #1850. - Add cmdline tests.
* py: Wrap all obj-ptr conversions in MP_OBJ_TO_PTR/MP_OBJ_FROM_PTR.Damien George2015-11-29
| | | | | | | | | This allows the mp_obj_t type to be configured to something other than a pointer-sized primitive type. This patch also includes additional changes to allow the code to compile when sizeof(mp_uint_t) != sizeof(void*), such as using size_t instead of mp_uint_t, and various casts.
* py/repl: Treat escaped quotes correctly in REPL continuation.Alex March2015-09-19
| | | | | | | Escaped quotes are now recognised correctly in REPL when used inside normal quotes. Fixes: #1419
* py/repl: Don't look inside strings for unmatched brackets/quotes.Damien George2015-07-29
| | | | | | | When looking to see if the REPL input needs to be continued on the next line, don't look inside strings for unmatched ()[]{} ''' or """. Addresses issue #1387.
* py/repl: Fix case where shorter names are shadowed by longer names.Damien George2015-07-06
| | | | | | Previous to this patch, if "abcd" and "ab" were possible completions to tab-completing "a", then tab would expand to "abcd" straight away if this identifier appeared first in the dict.
* py/repl.c: Fix shadowing of local variable "i".Damien George2015-04-29
|
* py, readline: Add tab autocompletion for REPL.Damien George2015-04-29
| | | | | | | | Can complete names in the global namespace, as well as a chain of attributes, eg pyb.Pin.board.<tab> will give a list of all board pins. Costs 700 bytes ROM on Thumb2 arch, but greatly increases usability of REPL prompt.
* py: Move to guarded includes, everywhere in py/ core.Damien George2015-01-01
| | | | Addresses issue #1022.
* py: Make functions static where appropriate.Damien George2014-12-10
|
* py: Convert [u]int to mp_[u]int_t where appropriate.Damien George2014-10-03
| | | | Addressing issue #50.
* py: Include mpconfig.h before all other includes.Paul Sokolovsky2014-06-21
| | | | | | It defines types used by all other headers. Fixes #691.
* Tidy up some configuration options.Damien George2014-05-21
| | | | | | | | | | MP_ALLOC_* -> MICROPY_ALLOC_* MICROPY_PATH_MAX -> MICROPY_ALLOC_PATH_MAX MICROPY_ENABLE_REPL_HELPERS -> MICROPY_HELPER_REPL MICROPY_ENABLE_LEXER_UNIX -> MICROPY_HELPER_LEXER_UNIX MICROPY_EXTRA_* -> MICROPY_PORT_* See issue #35.
* Add license header to (almost) all files.Damien George2014-05-03
| | | | | | | Blanket wide to all .c and .h files. Some files originating from ST are difficult to deal with (license wise) so it was left out of those. Also merged modpyb.h, modos.h, modstm.h and modtime.h in stmhal/.
* py: Continue line if last character is backslash.Damien George2014-04-08
|
* Improve REPL detecting when input needs to continue.Damien George2014-04-08
| | | | | | | | Full CPython compatibility with this requires actually parsing the input so far collected, and if it fails parsing due to lack of tokens, then continue collecting input. It's not worth doing it this way. Not having compatibility at this level does not hurt the goals of Micro Python.
* py: Detect unmatched tripple quote in repl helper.Damien George2014-04-07
|
* mp_repl_is_compound_stmt(): Thinko fix s/true/try/.Paul Sokolovsky2014-01-11
|
* Factor and simplify Makefile's and mpconfig.Damien George2014-01-07
|
* Put unicode functions in unicode.c, and tidy their names.Damien George2013-12-30
|
* Change object representation from 1 big union to individual structs.Damien2013-12-21
| | | | | | | | | | A big change. Micro Python objects are allocated as individual structs with the first element being a pointer to the type information (which is itself an object). This scheme follows CPython. Much more flexible, not necessarily slower, uses same heap memory, and can allocate objects statically. Also change name prefix, from py_ to mp_ (mp for Micro Python).
* Improve REPL compount statement detection.Damien2013-10-22