Calvin Rose
da70807292
Make autocompletion more zsh like
...
Also add a few ctrl sequences from readline, and
ignore unknown ctrl sequences.
Address #264
Adds Ctrl-n, Ctrl-p, and Ctrl-w
Ignores unknown ctrl sequences
No alt-* sequences yet.
2020-01-19 10:38:35 -06:00
Calvin Rose
64b9482602
Make history not duplicate itself in getline.
2020-01-18 20:56:35 -06:00
Calvin Rose
65d7c3eed1
Use stderr for getline output instead of stdout.
2020-01-18 14:34:29 -06:00
Calvin Rose
772916593b
Address #262
...
Pressing tab only does one thing at a time.
2020-01-18 09:44:59 -06:00
Calvin Rose
521a29446f
Don't rely on obscure printf features.
...
They may not work on all platforms.
2020-01-18 00:27:40 -06:00
Calvin Rose
a8e4c4bed0
Add special forms and sort completions.
...
Also fix case when no completion is needed.
2020-01-18 00:17:08 -06:00
Calvin Rose
6471b4d100
Add preliminary repl completion via tab.
2020-01-17 23:03:50 -06:00
Calvin Rose
789c5f135a
Add ctrl-a and ctrl-e to control line in repl
...
Emacs to start of line and to end of line key bindings.
2020-01-17 09:33:30 -06:00
Calvin Rose
65be9ae095
Add defer and assert to the core.
2020-01-15 22:39:14 -06:00
Calvin Rose
a68ee7aac6
Update Copyright 2020.
2020-01-12 10:50:37 -06:00
Calvin Rose
f361830cb2
Update feature test macro in line.c
2019-12-30 20:24:40 -05:00
Calvin Rose
bca0392738
First work on threading.
...
Posix only, needs to be disabled on windows. Also
the Makefile needs to be configurable, and meson.build
needs to take pthreads into account.
2019-11-26 23:13:53 -06:00
Jon Staab
134163708a
Fix formatting
2019-11-16 16:07:15 -08:00
Jon Staab
40e6616df0
Add support for delete key in repl
2019-11-16 16:01:52 -08:00
Calvin Rose
280dca3998
Add shell.c to the amalgamation.
...
This allows easy builds of the full interpreter with no
build system.
1. Get janet.c, janet.h, janetconf.h, and shell.c in a directory. Edit
janetconf.h as desired.
2. gcc shell.c janet.c -lm -ldl -O2 -o janet (on GNU-Linux for example)
3. ./janet -h (Yay!)
2019-10-29 19:18:44 -05:00
Calvin Rose
a18a251d16
Address some issues found in lgtm
...
Caught a few potentially issues with overflows, as well as use of
unsafe function localtime.
2019-10-10 22:59:43 -05:00
Calvin Rose
a5e50a0f65
Fix windows getline.
2019-06-18 00:04:29 -04:00
Calvin Rose
802a2d6b71
Add more dynamic bindings for printing.
2019-06-08 15:27:13 -04:00
Calvin Rose
1cfc7b3b0d
Add preliminary debugger to default repl.
...
Also upddate colors, and fix formatting.
2019-05-02 17:11:30 -04:00
Calvin Rose
9d4effc02e
Add make format to format code.
...
A consistent style should help with contributors and
readability. We use astyle as the formatter as can make a pretty
good approximation of the current style and my preferred style.
Astyle can be found at http://astyle.sourceforge.net/astyle.html
2019-02-19 20:51:34 -05:00
Calvin Rose
7ba925c50a
Make getline more useful.
2019-01-31 12:34:22 -05:00
Calvin Rose
6f3bc3d577
Update copyright date, fix types, remove trailing whitespace.
2019-01-06 03:23:03 -05:00
Calvin Rose
338b31f5a2
Add janet_fixarity. Update emscripten source.
2019-01-05 20:45:24 -05:00
Calvin Rose
b60e3e302a
Update C API to use friendlier functions rather than macros.
...
Error handling is implemented with setjmp/longjmp so code
can be more concise. This required a very large but straight forward refactor for all
of the libraries.
2019-01-05 20:09:03 -05:00
Calvin Rose
4c4eff9390
Replace cast with type pun.
2018-11-18 14:17:50 -05:00
Calvin Rose
2a127af1ca
A few fixes to things like macro expand, etc.
2018-11-07 22:27:06 -05:00
Calvin Rose
853a839f6c
Add git commit hash to build to get version.
2018-10-31 16:21:21 -04:00
Calvin Rose
c8ef2a0d88
Rename to janet
2018-09-05 22:18:42 -04:00
Calvin Rose
84f2c84fb5
Fix tabs in repl.
2018-08-25 15:34:27 -04:00
Calvin Rose
a018f9f54a
Major refactor. Move files around, merge compiler into
...
core and other changes, work on inlining many c functions.
2018-07-03 23:07:35 -04:00
Calvin Rose
5e9d1d07b9
Better refresh after coming back from suspend.
2018-06-24 13:20:32 -04:00
Calvin Rose
ceff49a08d
Enable suspending repl with ctrl-z.
2018-06-24 13:18:44 -04:00
Calvin Rose
f295692b50
Update copyright to 2018. Add string methods.
2018-05-17 23:41:20 -04:00
Calvin Rose
6ac59251e9
Fix some very mild memory leaks in line.c and the do_bytes function (not
...
deiniting the parser).
2018-05-15 22:05:47 -04:00
Calvin Rose
dafc121f4d
Change c function macros to be explicitly non functional by
...
capitalizing them.
2018-05-12 20:31:28 -04:00
Calvin Rose
55f0e759d9
Add extra information in repl to show state of parsing.
2018-05-06 23:25:59 -04:00
Calvin Rose
82e5d915f7
Add makefile back.
2018-03-18 09:17:20 -04:00
Calvin Rose
1ec704feb9
Remove pretty printer implemented in C.
2018-03-14 13:38:48 -04:00
Calvin Rose
d5e4496e95
Change repl prompt.
2018-03-14 10:54:32 -04:00
Calvin Rose
7ec2efcf6d
Simple fix for end of file in getline. Some code changes in getline as well.
2018-03-14 10:49:26 -04:00
Calvin Rose
58d81d44f9
Fix windows build
2018-03-13 23:52:27 -04:00
Calvin Rose
c23ea536da
Add getline on unix.
2018-03-13 23:39:49 -04:00