summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2021-06-01 21:04:24 -0700
committerKaz Kylheku <kaz@kylheku.com>2021-06-01 21:04:24 -0700
commit9823df8c051f71351a8de33d661b70afad7c2fee (patch)
tree3447c7c343ffa5aee7d6a58744fed355998127e2
parent2e09b52431cc988fbb0c6b898f262347252a126d (diff)
downloadtxr-9823df8c051f71351a8de33d661b70afad7c2fee.tar.gz
txr-9823df8c051f71351a8de33d661b70afad7c2fee.tar.bz2
txr-9823df8c051f71351a8de33d661b70afad7c2fee.zip
Version 261txr-261
* RELNOTES: Updated. * configure, txr.1: Bumped version and date. * share/txr/stdlib/ver.tl: Bumped. * txr.vim, tl.vim: Regenerated. * protsym.c: Likewise.
-rw-r--r--RELNOTES34
-rwxr-xr-xconfigure2
-rw-r--r--protsym.c276
-rw-r--r--share/txr/stdlib/ver.tl2
-rw-r--r--tl.vim675
-rw-r--r--txr.119
-rw-r--r--txr.vim675
7 files changed, 892 insertions, 791 deletions
diff --git a/RELNOTES b/RELNOTES
index 613c94e3..7c24af6a 100644
--- a/RELNOTES
+++ b/RELNOTES
@@ -1,3 +1,37 @@
+ TXR 261
+ 2021-06-01
+
+
+ Features
+
+ - JSON support:
+ #J syntax in TXR Lisp
+ - allows quasi-quoting and circular notation.
+ - I/O with JSON objects, with convenience routines like
+ file-put-json, and others.
+ - Vim syntax highlighting support for everything.
+ - parser:
+ - new parse-errors function for retrieving number or
+ parse errors from stream or nil if no errors.
+ - filesystem:
+ - new functions tmpfile, mkdtemp and mkstemp.
+ - lib:
+ - chr-iscntrl now recognizes Unicode C1 control character block,
+ not only the C0 from ASCII.
+
+ Bugs
+
+ - compiler:
+ - invalid move into register T0 generated when compiling catch code,
+ causing assembler to throw error.
+ - search trees:
+ - GC abort caused by tree-delete/tree-delete-node.
+ - parser:
+ - GC bug due to storing lookahead token in parser using
+ a wrong-way assignment.
+
+
+
TXR 260
2021-05-26
diff --git a/configure b/configure
index 666a238d..10027028 100755
--- a/configure
+++ b/configure
@@ -571,7 +571,7 @@ chmod a+x reconfigure
#
-txr_ver=260
+txr_ver=261
#
# The all important banner.
diff --git a/protsym.c b/protsym.c
index 9ed30ffd..3630d1ab 100644
--- a/protsym.c
+++ b/protsym.c
@@ -81,75 +81,75 @@ extern val inc_s, include_s, init_k, ino_k, ino_s;
extern val int16_s, int32_s, int64_s, int8_s, int_s;
extern val integer_s, internal_error_s, into_k, intr_s, inv_div_s;
extern val inv_minus_s, isqrt_s, iter_begin_s, iter_item_s, iter_more_s;
-extern val iter_reset_s, iter_step_s, keyword_package_s, labels_s, lambda_s;
-extern val lambda_set_s, last_s, lbind_s, lcons_s, le_double_s;
-extern val le_float_s, le_int16_s, le_int32_s, le_int64_s, le_s;
-extern val le_uint16_s, le_uint32_s, le_uint64_s, length_s, less_s;
-extern val let_s, let_star_s, lfilt_k, line_s, lines_k;
-extern val list_k, list_s, list_star_s, listener_greedy_eval_s, listener_hist_len_s;
-extern val listener_multi_line_p_s, listener_pprint_s, listener_sel_inclusive_p_s, lists_k, lit_s;
-extern val load_path_s, load_recursive_s, load_s, load_time_lit_s, load_time_s;
-extern val local_s, log10_s, log2_s, log_s, logand_s;
-extern val logcount_s, logior_s, lognot1_s, lognot_s, logtrunc_s;
-extern val logxor_s, long_s, longest_k, lstr_s, lt_s;
-extern val mac_env_param_bind_s, mac_param_bind_s, macro_s, macro_time_s, macrolet_s;
-extern val make_struct_lit_s, mandatory_k, maxgap_k, maxtimes_k, maybe_s;
-extern val mdo_s, memq_s, memql_s, memqual_s, merge_s;
-extern val meth_s, min_s, mingap_k, mintimes_k, minus_s;
-extern val minusp_s, mod_s, mode_k, mode_s, modlast_s;
-extern val month_s, mtime_k, mtime_nsec_s, mtime_s, mul_s;
-extern val name_k, name_s, named_k, neg_s, next_s;
-extern val next_spec_k, nlink_k, nlink_s, none_s, nongreedy_s;
-extern val not_s, nothrow_k, noval_s, null_s, nullify_s;
-extern val number_s, numeq_s, numeric_error_s, oddp_s, oneplus_s;
-extern val op_s, optional_s, or_s, output_s, package_alist_s;
-extern val package_s, panic_s, parser_s, path_exists_s, path_not_found_s;
-extern val path_permission_s, path_s, pkg_s, plus_s, plusp_s;
-extern val postinit_k, pprint_flo_format_s, print_base_s, print_circle_s, print_flo_digits_s;
-extern val print_flo_format_s, print_flo_precision_s, print_s, process_error_s, prof_s;
-extern val prog1_s, prog2_s, progn_s, promise_forced_s, promise_inprogress_s;
-extern val promise_s, ptr_in_d_s, ptr_in_s, ptr_out_d_s, ptr_out_s;
-extern val ptr_out_s_s, ptr_s, put_buf_s, put_byte_s, put_char_s;
-extern val put_string_s, qquote_s, qref_s, quasi_s, quasilist_s;
-extern val query_error_s, quote_s, r_atan2_s, r_ceil_s, r_expt_s;
-extern val r_floor_s, r_lognot_s, r_logtrunc_s, r_mod_s, r_round_s;
-extern val r_trunc_s, random_state_s, random_state_var_s, random_warmup_s, range_error_s;
-extern val range_s, rcons_s, rdev_k, rdev_s, real_time_k;
-extern val rebind_s, rec_source_loc_s, recip_s, reflect_k, regex_s;
-extern val rep_s, repeat_s, repeat_spec_k, require_s, resolve_k;
-extern val rest_s, restart_s, return_from_s, return_s, rfilt_k;
-extern val round1_s, round_s, rplaca_s, rplacd_s, sbit_s;
-extern val sec_s, seek_s, seq_iter_s, sequence_s, set_prop_s;
-extern val set_s, setq_s, setqf_s, short_s, shortest_k;
-extern val sign_extend_s, signum_s, sin_s, single_s, sinh_s;
-extern val size_k, size_s, skip_s, slot_s, some_s;
-extern val space_k, special_s, splice_s, sqrt_s, square_s;
-extern val stat_s, stddebug_s, stderr_s, stdin_s, stdio_stream_s;
-extern val stdnull_s, stdout_s, str_d_s, str_s, stream_s;
-extern val string_k, string_s, struct_lit_s, struct_s, struct_type_s;
-extern val switch_s, sym_s, symacro_k, symacrolet_s, syntax_error_s;
-extern val sys_abscond_from_s, sys_apply_s, sys_blk_s, sys_catch_s, sys_l1_setq_s;
-extern val sys_l1_val_s, sys_lisp1_setq_s, sys_lisp1_value_s, sys_mark_special_s, sys_qquote_s;
-extern val sys_splice_s, sys_unquote_s, system_error_s, system_package_s, tan_s;
-extern val tanh_s, text_s, throw_s, time_local_s, time_parse_s;
-extern val time_s, time_string_s, time_utc_s, timeout_error_s, times_k;
-extern val tlist_k, tnode_s, tobase64_k, tobase64url_k, tofloat_k;
-extern val tohtml_k, tohtml_star_k, toint_k, tonumber_k, topercent_k;
-extern val tourl_k, trailer_s, tree_bind_s, tree_case_s, tree_construct_s;
-extern val tree_fun_whitelist_s, tree_iter_s, tree_lit_s, tree_s, trunc1_s;
-extern val trunc_s, truncate_s, try_s, type_error_s, ubit_s;
-extern val uchar_s, uid_k, uid_s, uint16_s, uint32_s;
-extern val uint64_s, uint8_s, uint_s, ulong_s, unbound_s;
-extern val unget_byte_s, unget_char_s, union_s, unique_s, unquote_s;
-extern val until_s, until_star_s, upcase_k, uref_s, user_package_s;
-extern val userdata_k, ushort_s, usr_var_s, uw_protect_s, val_s;
-extern val var_k, var_s, vars_k, vec_list_s, vec_s;
-extern val vecref_s, vector_lit_s, vm_closure_s, vm_desc_s, void_s;
-extern val warning_s, wchar_s, weak_keys_k, weak_vals_k, when_s;
-extern val while_s, while_star_s, whole_k, width_s, wild_s;
-extern val word_char_k, wrap_k, wstr_d_s, wstr_s, year_s;
-extern val zap_s, zarray_s, zchar_s, zerop_s, zeroplus_s;
-extern val zone_s;
+extern val iter_reset_s, iter_step_s, json_s, keyword_package_s, labels_s;
+extern val lambda_s, lambda_set_s, last_s, lbind_s, lcons_s;
+extern val le_double_s, le_float_s, le_int16_s, le_int32_s, le_int64_s;
+extern val le_s, le_uint16_s, le_uint32_s, le_uint64_s, length_s;
+extern val less_s, let_s, let_star_s, lfilt_k, line_s;
+extern val lines_k, list_k, list_s, list_star_s, listener_greedy_eval_s;
+extern val listener_hist_len_s, listener_multi_line_p_s, listener_pprint_s, listener_sel_inclusive_p_s, lists_k;
+extern val lit_s, load_path_s, load_recursive_s, load_s, load_time_lit_s;
+extern val load_time_s, local_s, log10_s, log2_s, log_s;
+extern val logand_s, logcount_s, logior_s, lognot1_s, lognot_s;
+extern val logtrunc_s, logxor_s, long_s, longest_k, lstr_s;
+extern val lt_s, mac_env_param_bind_s, mac_param_bind_s, macro_s, macro_time_s;
+extern val macrolet_s, make_struct_lit_s, mandatory_k, maxgap_k, maxtimes_k;
+extern val maybe_s, mdo_s, memq_s, memql_s, memqual_s;
+extern val merge_s, meth_s, min_s, mingap_k, mintimes_k;
+extern val minus_s, minusp_s, mod_s, mode_k, mode_s;
+extern val modlast_s, month_s, mtime_k, mtime_nsec_s, mtime_s;
+extern val mul_s, name_k, name_s, named_k, neg_s;
+extern val next_s, next_spec_k, nlink_k, nlink_s, none_s;
+extern val nongreedy_s, not_s, nothrow_k, noval_s, null_s;
+extern val nullify_s, number_s, numeq_s, numeric_error_s, oddp_s;
+extern val oneplus_s, op_s, optional_s, or_s, output_s;
+extern val package_alist_s, package_s, panic_s, parser_s, path_exists_s;
+extern val path_not_found_s, path_permission_s, path_s, pkg_s, plus_s;
+extern val plusp_s, postinit_k, pprint_flo_format_s, print_base_s, print_circle_s;
+extern val print_flo_digits_s, print_flo_format_s, print_flo_precision_s, print_s, process_error_s;
+extern val prof_s, prog1_s, prog2_s, progn_s, promise_forced_s;
+extern val promise_inprogress_s, promise_s, ptr_in_d_s, ptr_in_s, ptr_out_d_s;
+extern val ptr_out_s, ptr_out_s_s, ptr_s, put_buf_s, put_byte_s;
+extern val put_char_s, put_string_s, qquote_s, qref_s, quasi_s;
+extern val quasilist_s, query_error_s, quote_s, r_atan2_s, r_ceil_s;
+extern val r_expt_s, r_floor_s, r_lognot_s, r_logtrunc_s, r_mod_s;
+extern val r_round_s, r_trunc_s, random_state_s, random_state_var_s, random_warmup_s;
+extern val range_error_s, range_s, rcons_s, rdev_k, rdev_s;
+extern val real_time_k, rebind_s, rec_source_loc_s, recip_s, reflect_k;
+extern val regex_s, rep_s, repeat_s, repeat_spec_k, require_s;
+extern val resolve_k, rest_s, restart_s, return_from_s, return_s;
+extern val rfilt_k, round1_s, round_s, rplaca_s, rplacd_s;
+extern val sbit_s, sec_s, seek_s, seq_iter_s, sequence_s;
+extern val set_prop_s, set_s, setq_s, setqf_s, short_s;
+extern val shortest_k, sign_extend_s, signum_s, sin_s, single_s;
+extern val sinh_s, size_k, size_s, skip_s, slot_s;
+extern val some_s, space_k, special_s, splice_s, sqrt_s;
+extern val square_s, stat_s, stddebug_s, stderr_s, stdin_s;
+extern val stdio_stream_s, stdnull_s, stdout_s, str_d_s, str_s;
+extern val stream_s, string_k, string_s, struct_lit_s, struct_s;
+extern val struct_type_s, switch_s, sym_s, symacro_k, symacrolet_s;
+extern val syntax_error_s, sys_abscond_from_s, sys_apply_s, sys_blk_s, sys_catch_s;
+extern val sys_l1_setq_s, sys_l1_val_s, sys_lisp1_setq_s, sys_lisp1_value_s, sys_mark_special_s;
+extern val sys_qquote_s, sys_splice_s, sys_unquote_s, system_error_s, system_package_s;
+extern val tan_s, tanh_s, text_s, throw_s, time_local_s;
+extern val time_parse_s, time_s, time_string_s, time_utc_s, timeout_error_s;
+extern val times_k, tlist_k, tnode_s, tobase64_k, tobase64url_k;
+extern val tofloat_k, tohtml_k, tohtml_star_k, toint_k, tonumber_k;
+extern val topercent_k, tourl_k, trailer_s, tree_bind_s, tree_case_s;
+extern val tree_construct_s, tree_fun_whitelist_s, tree_iter_s, tree_lit_s, tree_s;
+extern val trunc1_s, trunc_s, truncate_s, try_s, type_error_s;
+extern val ubit_s, uchar_s, uid_k, uid_s, uint16_s;
+extern val uint32_s, uint64_s, uint8_s, uint_s, ulong_s;
+extern val unbound_s, unget_byte_s, unget_char_s, union_s, unique_s;
+extern val unquote_s, until_s, until_star_s, upcase_k, uref_s;
+extern val user_package_s, userdata_k, ushort_s, usr_var_s, uw_protect_s;
+extern val val_s, var_k, var_s, vars_k, vec_list_s;
+extern val vec_s, vecref_s, vector_lit_s, vm_closure_s, vm_desc_s;
+extern val void_s, warning_s, wchar_s, weak_keys_k, weak_vals_k;
+extern val when_s, while_s, while_star_s, whole_k, width_s;
+extern val wild_s, word_char_k, wrap_k, wstr_d_s, wstr_s;
+extern val year_s, zap_s, zarray_s, zchar_s, zerop_s;
+extern val zeroplus_s, zone_s;
#if HAVE_DLOPEN
extern val dlhandle_s, dlsym_s;
@@ -232,75 +232,75 @@ val *protected_sym[] = {
&int16_s, &int32_s, &int64_s, &int8_s, &int_s,
&integer_s, &internal_error_s, &into_k, &intr_s, &inv_div_s,
&inv_minus_s, &isqrt_s, &iter_begin_s, &iter_item_s, &iter_more_s,
- &iter_reset_s, &iter_step_s, &keyword_package_s, &labels_s, &lambda_s,
- &lambda_set_s, &last_s, &lbind_s, &lcons_s, &le_double_s,
- &le_float_s, &le_int16_s, &le_int32_s, &le_int64_s, &le_s,
- &le_uint16_s, &le_uint32_s, &le_uint64_s, &length_s, &less_s,
- &let_s, &let_star_s, &lfilt_k, &line_s, &lines_k,
- &list_k, &list_s, &list_star_s, &listener_greedy_eval_s, &listener_hist_len_s,
- &listener_multi_line_p_s, &listener_pprint_s, &listener_sel_inclusive_p_s, &lists_k, &lit_s,
- &load_path_s, &load_recursive_s, &load_s, &load_time_lit_s, &load_time_s,
- &local_s, &log10_s, &log2_s, &log_s, &logand_s,
- &logcount_s, &logior_s, &lognot1_s, &lognot_s, &logtrunc_s,
- &logxor_s, &long_s, &longest_k, &lstr_s, &lt_s,
- &mac_env_param_bind_s, &mac_param_bind_s, &macro_s, &macro_time_s, &macrolet_s,
- &make_struct_lit_s, &mandatory_k, &maxgap_k, &maxtimes_k, &maybe_s,
- &mdo_s, &memq_s, &memql_s, &memqual_s, &merge_s,
- &meth_s, &min_s, &mingap_k, &mintimes_k, &minus_s,
- &minusp_s, &mod_s, &mode_k, &mode_s, &modlast_s,
- &month_s, &mtime_k, &mtime_nsec_s, &mtime_s, &mul_s,
- &name_k, &name_s, &named_k, &neg_s, &next_s,
- &next_spec_k, &nlink_k, &nlink_s, &none_s, &nongreedy_s,
- &not_s, &nothrow_k, &noval_s, &null_s, &nullify_s,
- &number_s, &numeq_s, &numeric_error_s, &oddp_s, &oneplus_s,
- &op_s, &optional_s, &or_s, &output_s, &package_alist_s,
- &package_s, &panic_s, &parser_s, &path_exists_s, &path_not_found_s,
- &path_permission_s, &path_s, &pkg_s, &plus_s, &plusp_s,
- &postinit_k, &pprint_flo_format_s, &print_base_s, &print_circle_s, &print_flo_digits_s,
- &print_flo_format_s, &print_flo_precision_s, &print_s, &process_error_s, &prof_s,
- &prog1_s, &prog2_s, &progn_s, &promise_forced_s, &promise_inprogress_s,
- &promise_s, &ptr_in_d_s, &ptr_in_s, &ptr_out_d_s, &ptr_out_s,
- &ptr_out_s_s, &ptr_s, &put_buf_s, &put_byte_s, &put_char_s,
- &put_string_s, &qquote_s, &qref_s, &quasi_s, &quasilist_s,
- &query_error_s, &quote_s, &r_atan2_s, &r_ceil_s, &r_expt_s,
- &r_floor_s, &r_lognot_s, &r_logtrunc_s, &r_mod_s, &r_round_s,
- &r_trunc_s, &random_state_s, &random_state_var_s, &random_warmup_s, &range_error_s,
- &range_s, &rcons_s, &rdev_k, &rdev_s, &real_time_k,
- &rebind_s, &rec_source_loc_s, &recip_s, &reflect_k, &regex_s,
- &rep_s, &repeat_s, &repeat_spec_k, &require_s, &resolve_k,
- &rest_s, &restart_s, &return_from_s, &return_s, &rfilt_k,
- &round1_s, &round_s, &rplaca_s, &rplacd_s, &sbit_s,
- &sec_s, &seek_s, &seq_iter_s, &sequence_s, &set_prop_s,
- &set_s, &setq_s, &setqf_s, &short_s, &shortest_k,
- &sign_extend_s, &signum_s, &sin_s, &single_s, &sinh_s,
- &size_k, &size_s, &skip_s, &slot_s, &some_s,
- &space_k, &special_s, &splice_s, &sqrt_s, &square_s,
- &stat_s, &stddebug_s, &stderr_s, &stdin_s, &stdio_stream_s,
- &stdnull_s, &stdout_s, &str_d_s, &str_s, &stream_s,
- &string_k, &string_s, &struct_lit_s, &struct_s, &struct_type_s,
- &switch_s, &sym_s, &symacro_k, &symacrolet_s, &syntax_error_s,
- &sys_abscond_from_s, &sys_apply_s, &sys_blk_s, &sys_catch_s, &sys_l1_setq_s,
- &sys_l1_val_s, &sys_lisp1_setq_s, &sys_lisp1_value_s, &sys_mark_special_s, &sys_qquote_s,
- &sys_splice_s, &sys_unquote_s, &system_error_s, &system_package_s, &tan_s,
- &tanh_s, &text_s, &throw_s, &time_local_s, &time_parse_s,
- &time_s, &time_string_s, &time_utc_s, &timeout_error_s, &times_k,
- &tlist_k, &tnode_s, &tobase64_k, &tobase64url_k, &tofloat_k,
- &tohtml_k, &tohtml_star_k, &toint_k, &tonumber_k, &topercent_k,
- &tourl_k, &trailer_s, &tree_bind_s, &tree_case_s, &tree_construct_s,
- &tree_fun_whitelist_s, &tree_iter_s, &tree_lit_s, &tree_s, &trunc1_s,
- &trunc_s, &truncate_s, &try_s, &type_error_s, &ubit_s,
- &uchar_s, &uid_k, &uid_s, &uint16_s, &uint32_s,
- &uint64_s, &uint8_s, &uint_s, &ulong_s, &unbound_s,
- &unget_byte_s, &unget_char_s, &union_s, &unique_s, &unquote_s,
- &until_s, &until_star_s, &upcase_k, &uref_s, &user_package_s,
- &userdata_k, &ushort_s, &usr_var_s, &uw_protect_s, &val_s,
- &var_k, &var_s, &vars_k, &vec_list_s, &vec_s,
- &vecref_s, &vector_lit_s, &vm_closure_s, &vm_desc_s, &void_s,
- &warning_s, &wchar_s, &weak_keys_k, &weak_vals_k, &when_s,
- &while_s, &while_star_s, &whole_k, &width_s, &wild_s,
- &word_char_k, &wrap_k, &wstr_d_s, &wstr_s, &year_s,
- &zap_s, &zarray_s, &zchar_s, &zerop_s, &zeroplus_s,
- &zone_s,
+ &iter_reset_s, &iter_step_s, &json_s, &keyword_package_s, &labels_s,
+ &lambda_s, &lambda_set_s, &last_s, &lbind_s, &lcons_s,
+ &le_double_s, &le_float_s, &le_int16_s, &le_int32_s, &le_int64_s,
+ &le_s, &le_uint16_s, &le_uint32_s, &le_uint64_s, &length_s,
+ &less_s, &let_s, &let_star_s, &lfilt_k, &line_s,
+ &lines_k, &list_k, &list_s, &list_star_s, &listener_greedy_eval_s,
+ &listener_hist_len_s, &listener_multi_line_p_s, &listener_pprint_s, &listener_sel_inclusive_p_s, &lists_k,
+ &lit_s, &load_path_s, &load_recursive_s, &load_s, &load_time_lit_s,
+ &load_time_s, &local_s, &log10_s, &log2_s, &log_s,
+ &logand_s, &logcount_s, &logior_s, &lognot1_s, &lognot_s,
+ &logtrunc_s, &logxor_s, &long_s, &longest_k, &lstr_s,
+ &lt_s, &mac_env_param_bind_s, &mac_param_bind_s, &macro_s, &macro_time_s,
+ &macrolet_s, &make_struct_lit_s, &mandatory_k, &maxgap_k, &maxtimes_k,
+ &maybe_s, &mdo_s, &memq_s, &memql_s, &memqual_s,
+ &merge_s, &meth_s, &min_s, &mingap_k, &mintimes_k,
+ &minus_s, &minusp_s, &mod_s, &mode_k, &mode_s,
+ &modlast_s, &month_s, &mtime_k, &mtime_nsec_s, &mtime_s,
+ &mul_s, &name_k, &name_s, &named_k, &neg_s,
+ &next_s, &next_spec_k, &nlink_k, &nlink_s, &none_s,
+ &nongreedy_s, &not_s, &nothrow_k, &noval_s, &null_s,
+ &nullify_s, &number_s, &numeq_s, &numeric_error_s, &oddp_s,
+ &oneplus_s, &op_s, &optional_s, &or_s, &output_s,
+ &package_alist_s, &package_s, &panic_s, &parser_s, &path_exists_s,
+ &path_not_found_s, &path_permission_s, &path_s, &pkg_s, &plus_s,
+ &plusp_s, &postinit_k, &pprint_flo_format_s, &print_base_s, &print_circle_s,
+ &print_flo_digits_s, &print_flo_format_s, &print_flo_precision_s, &print_s, &process_error_s,
+ &prof_s, &prog1_s, &prog2_s, &progn_s, &promise_forced_s,
+ &promise_inprogress_s, &promise_s, &ptr_in_d_s, &ptr_in_s, &ptr_out_d_s,
+ &ptr_out_s, &ptr_out_s_s, &ptr_s, &put_buf_s, &put_byte_s,
+ &put_char_s, &put_string_s, &qquote_s, &qref_s, &quasi_s,
+ &quasilist_s, &query_error_s, &quote_s, &r_atan2_s, &r_ceil_s,
+ &r_expt_s, &r_floor_s, &r_lognot_s, &r_logtrunc_s, &r_mod_s,
+ &r_round_s, &r_trunc_s, &random_state_s, &random_state_var_s, &random_warmup_s,
+ &range_error_s, &range_s, &rcons_s, &rdev_k, &rdev_s,
+ &real_time_k, &rebind_s, &rec_source_loc_s, &recip_s, &reflect_k,
+ &regex_s, &rep_s, &repeat_s, &repeat_spec_k, &require_s,
+ &resolve_k, &rest_s, &restart_s, &return_from_s, &return_s,
+ &rfilt_k, &round1_s, &round_s, &rplaca_s, &rplacd_s,
+ &sbit_s, &sec_s, &seek_s, &seq_iter_s, &sequence_s,
+ &set_prop_s, &set_s, &setq_s, &setqf_s, &short_s,
+ &shortest_k, &sign_extend_s, &signum_s, &sin_s, &single_s,
+ &sinh_s, &size_k, &size_s, &skip_s, &slot_s,
+ &some_s, &space_k, &special_s, &splice_s, &sqrt_s,
+ &square_s, &stat_s, &stddebug_s, &stderr_s, &stdin_s,
+ &stdio_stream_s, &stdnull_s, &stdout_s, &str_d_s, &str_s,
+ &stream_s, &string_k, &string_s, &struct_lit_s, &struct_s,
+ &struct_type_s, &switch_s, &sym_s, &symacro_k, &symacrolet_s,
+ &syntax_error_s, &sys_abscond_from_s, &sys_apply_s, &sys_blk_s, &sys_catch_s,
+ &sys_l1_setq_s, &sys_l1_val_s, &sys_lisp1_setq_s, &sys_lisp1_value_s, &sys_mark_special_s,
+ &sys_qquote_s, &sys_splice_s, &sys_unquote_s, &system_error_s, &system_package_s,
+ &tan_s, &tanh_s, &text_s, &throw_s, &time_local_s,
+ &time_parse_s, &time_s, &time_string_s, &time_utc_s, &timeout_error_s,
+ &times_k, &tlist_k, &tnode_s, &tobase64_k, &tobase64url_k,
+ &tofloat_k, &tohtml_k, &tohtml_star_k, &toint_k, &tonumber_k,
+ &topercent_k, &tourl_k, &trailer_s, &tree_bind_s, &tree_case_s,
+ &tree_construct_s, &tree_fun_whitelist_s, &tree_iter_s, &tree_lit_s, &tree_s,
+ &trunc1_s, &trunc_s, &truncate_s, &try_s, &type_error_s,
+ &ubit_s, &uchar_s, &uid_k, &uid_s, &uint16_s,
+ &uint32_s, &uint64_s, &uint8_s, &uint_s, &ulong_s,
+ &unbound_s, &unget_byte_s, &unget_char_s, &union_s, &unique_s,
+ &unquote_s, &until_s, &until_star_s, &upcase_k, &uref_s,
+ &user_package_s, &userdata_k, &ushort_s, &usr_var_s, &uw_protect_s,
+ &val_s, &var_k, &var_s, &vars_k, &vec_list_s,
+ &vec_s, &vecref_s, &vector_lit_s, &vm_closure_s, &vm_desc_s,
+ &void_s, &warning_s, &wchar_s, &weak_keys_k, &weak_vals_k,
+ &when_s, &while_s, &while_star_s, &whole_k, &width_s,
+ &wild_s, &word_char_k, &wrap_k, &wstr_d_s, &wstr_s,
+ &year_s, &zap_s, &zarray_s, &zchar_s, &zerop_s,
+ &zeroplus_s, &zone_s,
#if HAVE_DLOPEN
&dlhandle_s, &dlsym_s,
diff --git a/share/txr/stdlib/ver.tl b/share/txr/stdlib/ver.tl
index 8cc6438c..88806986 100644
--- a/share/txr/stdlib/ver.tl
+++ b/share/txr/stdlib/ver.tl
@@ -1,2 +1,2 @@
-(defvarl lib-version 260)
+(defvarl lib-version 261)
(defvarl *lib-version* lib-version)
diff --git a/tl.vim b/tl.vim
index bbffabde..511e7fe2 100644
--- a/tl.vim
+++ b/tl.vim
@@ -150,8 +150,9 @@ syn keyword tl_keyword contained clearhash clocal clock-t clockid-t
syn keyword tl_keyword contained close close-stream closedir closelog
syn keyword tl_keyword contained closure cmp-str cmspar coded-length
syn keyword tl_keyword contained collect-each collect-each* collect-each-prod collect-each-prod*
-syn keyword tl_keyword contained comb command-get command-get-buf command-get-lines
-syn keyword tl_keyword contained command-get-string command-put command-put-buf command-put-lines
+syn keyword tl_keyword contained comb command-get command-get-buf command-get-json
+syn keyword tl_keyword contained command-get-jsons command-get-lines command-get-string command-put
+syn keyword tl_keyword contained command-put-buf command-put-json command-put-jsons command-put-lines
syn keyword tl_keyword contained command-put-string compare-swap compile compile-defr-warning
syn keyword tl_keyword contained compile-error compile-file compile-only compile-toplevel
syn keyword tl_keyword contained compile-update-file compile-warning compl-span-str cond
@@ -233,38 +234,40 @@ syn keyword tl_keyword contained ffi-elemtype ffi-get ffi-in ffi-make-call-desc
syn keyword tl_keyword contained ffi-make-closure ffi-offsetof ffi-out ffi-put
syn keyword tl_keyword contained ffi-put-into ffi-size ffi-type-compile ffi-type-operator-p
syn keyword tl_keyword contained ffi-type-p ffi-typedef fifth file-append
-syn keyword tl_keyword contained file-append-buf file-append-lines file-append-string file-get
-syn keyword tl_keyword contained file-get-buf file-get-lines file-get-string file-place-buf
-syn keyword tl_keyword contained file-put file-put-buf file-put-lines file-put-string
-syn keyword tl_keyword contained fileno fill-buf fill-buf-adjust fill-carray
-syn keyword tl_keyword contained fill-obj filter-equal filter-string-tree finalize
-syn keyword tl_keyword contained find find-frame find-frames find-frames-by-mask
-syn keyword tl_keyword contained find-if find-max find-min find-package
-syn keyword tl_keyword contained find-struct-type find-symbol find-symbol-fb first
-syn keyword tl_keyword contained fixnum-max fixnum-min fixnump flatcar
-syn keyword tl_keyword contained flatcar* flatten flatten* flet
-syn keyword tl_keyword contained flip flipargs flo-dig flo-down
-syn keyword tl_keyword contained flo-epsilon flo-get-round-mode flo-int flo-max
-syn keyword tl_keyword contained flo-max-dig flo-min flo-near flo-set-round-mode
-syn keyword tl_keyword contained flo-str flo-up flo-zero float
-syn keyword tl_keyword contained floatp floor floor-rem flush-stream
-syn keyword tl_keyword contained flusho fmakunbound fmt fnm-casefold
-syn keyword tl_keyword contained fnm-extmatch fnm-leading-dir fnm-noescape fnm-pathname
-syn keyword tl_keyword contained fnm-period fnmatch for for*
-syn keyword tl_keyword contained force force-break fork format
-syn keyword tl_keyword contained fourth fr$ fr^ fr^$
-syn keyword tl_keyword contained from frr fsblkcnt-t fsfilcnt-t
-syn keyword tl_keyword contained fstat ftw ftw-actionretval ftw-chdir
-syn keyword tl_keyword contained ftw-continue ftw-d ftw-depth ftw-dnr
-syn keyword tl_keyword contained ftw-dp ftw-f ftw-mount ftw-ns
-syn keyword tl_keyword contained ftw-phys ftw-skip-siblings ftw-skip-subtree ftw-sl
-syn keyword tl_keyword contained ftw-sln ftw-stop fun fun-fixparam-count
-syn keyword tl_keyword contained fun-optparam-count fun-variadic func-get-env func-get-form
-syn keyword tl_keyword contained func-get-name func-set-env functionp gcd
-syn keyword tl_keyword contained gen gen-hash-seed generate gensym
-syn keyword tl_keyword contained gequal get-buf-from-stream get-byte get-char
-syn keyword tl_keyword contained get-clobber-expander get-delete-expander get-error get-error-str
-syn keyword tl_keyword contained get-frames get-hash-userdata get-indent get-indent-mode
+syn keyword tl_keyword contained file-append-buf file-append-json file-append-jsons file-append-lines
+syn keyword tl_keyword contained file-append-string file-get file-get-buf file-get-json
+syn keyword tl_keyword contained file-get-jsons file-get-lines file-get-string file-place-buf
+syn keyword tl_keyword contained file-put file-put-buf file-put-json file-put-jsons
+syn keyword tl_keyword contained file-put-lines file-put-string fileno fill-buf
+syn keyword tl_keyword contained fill-buf-adjust fill-carray fill-obj filter-equal
+syn keyword tl_keyword contained filter-string-tree finalize find find-frame
+syn keyword tl_keyword contained find-frames find-frames-by-mask find-if find-max
+syn keyword tl_keyword contained find-min find-package find-struct-type find-symbol
+syn keyword tl_keyword contained find-symbol-fb first fixnum-max fixnum-min
+syn keyword tl_keyword contained fixnump flatcar flatcar* flatten
+syn keyword tl_keyword contained flatten* flet flip flipargs
+syn keyword tl_keyword contained flo-dig flo-down flo-epsilon flo-get-round-mode
+syn keyword tl_keyword contained flo-int flo-max flo-max-dig flo-min
+syn keyword tl_keyword contained flo-near flo-set-round-mode flo-str flo-up
+syn keyword tl_keyword contained flo-zero float floatp floor
+syn keyword tl_keyword contained floor-rem flush-stream flusho fmakunbound
+syn keyword tl_keyword contained fmt fnm-casefold fnm-extmatch fnm-leading-dir
+syn keyword tl_keyword contained fnm-noescape fnm-pathname fnm-period fnmatch
+syn keyword tl_keyword contained for for* force force-break
+syn keyword tl_keyword contained fork format fourth fr$
+syn keyword tl_keyword contained fr^ fr^$ from frr
+syn keyword tl_keyword contained fsblkcnt-t fsfilcnt-t fstat ftw
+syn keyword tl_keyword contained ftw-actionretval ftw-chdir ftw-continue ftw-d
+syn keyword tl_keyword contained ftw-depth ftw-dnr ftw-dp ftw-f
+syn keyword tl_keyword contained ftw-mount ftw-ns ftw-phys ftw-skip-siblings
+syn keyword tl_keyword contained ftw-skip-subtree ftw-sl ftw-sln ftw-stop
+syn keyword tl_keyword contained fun fun-fixparam-count fun-optparam-count fun-variadic
+syn keyword tl_keyword contained func-get-env func-get-form func-get-name func-set-env
+syn keyword tl_keyword contained functionp gcd gen gen-hash-seed
+syn keyword tl_keyword contained generate gensym gequal get-buf-from-stream
+syn keyword tl_keyword contained get-byte get-char get-clobber-expander get-delete-expander
+syn keyword tl_keyword contained get-error get-error-str get-frames get-hash-userdata
+syn keyword tl_keyword contained get-indent get-indent-mode get-json get-jsons
syn keyword tl_keyword contained get-line get-line-as-buf get-lines get-list-from-stream
syn keyword tl_keyword contained get-obj get-sig-handler get-string get-string-from-stream
syn keyword tl_keyword contained get-update-expander getaddrinfo getegid getenv
@@ -308,83 +311,84 @@ syn keyword tl_keyword contained isig isqrt istrip iter-begin
syn keyword tl_keyword contained iter-item iter-more iter-reset iter-step
syn keyword tl_keyword contained iterable itimer-prov itimer-real itimer-virtual
syn keyword tl_keyword contained iuclc iutf8 ixany ixoff
-syn keyword tl_keyword contained ixon join join-with juxt
-syn keyword tl_keyword contained keep-if keep-if* keep-match-products keep-matches
-syn keyword tl_keyword contained keepq keepql keepqual key
-syn keyword tl_keyword contained key-t keyword-package keywordp kill
-syn keyword tl_keyword contained labels lambda lambda-match last
-syn keyword tl_keyword contained lazy-str lazy-str-force lazy-str-force-upto lazy-str-get-trailing-list
-syn keyword tl_keyword contained lazy-stream-cons lazy-stringp lchown lcm
-syn keyword tl_keyword contained lcons lcons-car lcons-cdr lcons-fun
-syn keyword tl_keyword contained lconsp ldiff ldo le-double
-syn keyword tl_keyword contained le-float le-int16 le-int32 le-int64
-syn keyword tl_keyword contained le-uint16 le-uint32 le-uint64 left
-syn keyword tl_keyword contained len length length-buf length-carray
-syn keyword tl_keyword contained length-list length-str length-str-< length-str-<=
-syn keyword tl_keyword contained length-str-> length-str->= length-vec lequal
-syn keyword tl_keyword contained less let let* lexical-fun-p
-syn keyword tl_keyword contained lexical-lisp1-binding lexical-var-p lib-version link
-syn keyword tl_keyword contained lisp-parse list list* list-carray
-syn keyword tl_keyword contained list-seq list-str list-vec list-vector
-syn keyword tl_keyword contained listp lnew lnew* load
-syn keyword tl_keyword contained load-for load-time loff-t log
-syn keyword tl_keyword contained log-alert log-auth log-authpriv log-cons
-syn keyword tl_keyword contained log-crit log-daemon log-debug log-emerg
-syn keyword tl_keyword contained log-err log-info log-ndelay log-notice
-syn keyword tl_keyword contained log-nowait log-odelay log-perror log-pid
-syn keyword tl_keyword contained log-user log-warning log10 log2
-syn keyword tl_keyword contained logand logcount logior lognot
-syn keyword tl_keyword contained logtest logtrunc logxor long
-syn keyword tl_keyword contained longlong lop lset lstat
-syn keyword tl_keyword contained lutimes m$ m^ m^$
-syn keyword tl_keyword contained mac-env-param-bind mac-param-bind macro-ancestor macro-form-p
-syn keyword tl_keyword contained macro-time macroexpand macroexpand-1 macroexpand-1-lisp1
-syn keyword tl_keyword contained macroexpand-lisp1 macrolet major make-buf
-syn keyword tl_keyword contained make-buf-stream make-byte-input-stream make-catenated-stream make-env
-syn keyword tl_keyword contained make-hash make-lazy-cons make-lazy-struct make-like
-syn keyword tl_keyword contained make-package make-random-state make-similar-hash make-similar-tree
-syn keyword tl_keyword contained make-string-byte-input-stream make-string-input-stream make-string-output-stream make-strlist-input-stream
-syn keyword tl_keyword contained make-strlist-output-stream make-struct make-struct-delegate-stream make-struct-type
-syn keyword tl_keyword contained make-sym make-time make-time-utc make-trie
-syn keyword tl_keyword contained make-union make-zstruct makedev makunbound
-syn keyword tl_keyword contained mapcar mapcar* mapdo mapf
-syn keyword tl_keyword contained maphash mappend mappend* maprend
-syn keyword tl_keyword contained maprod maprodo mask match-case
-syn keyword tl_keyword contained match-fun match-regex match-regex-right match-regst
-syn keyword tl_keyword contained match-regst-right match-str match-str-tree max
-syn keyword tl_keyword contained mboundp md5 md5-begin md5-end
-syn keyword tl_keyword contained md5-hash md5-stream member member-if
-syn keyword tl_keyword contained memp memq memql memqual
-syn keyword tl_keyword contained meq meql mequal merge
-syn keyword tl_keyword contained merge-delete-package meth method min
-syn keyword tl_keyword contained minor minusp mismatch mkdir
-syn keyword tl_keyword contained mkfifo mknod mkstring mlet
-syn keyword tl_keyword contained mmakunbound mod mode-t multi
-syn keyword tl_keyword contained multi-sort n-choose-k n-perm-k nconc
-syn keyword tl_keyword contained neg neq neql nequal
-syn keyword tl_keyword contained new new* nexpand-left nil
-syn keyword tl_keyword contained nilf ninth nl0 nl1
-syn keyword tl_keyword contained nldly nlink-t noflsh none
-syn keyword tl_keyword contained not notf nreconc nreverse
-syn keyword tl_keyword contained nshuffle nsort nth nthcdr
-syn keyword tl_keyword contained nthlast null nullify num-chr
-syn keyword tl_keyword contained num-str numberp nzerop o-accmode
-syn keyword tl_keyword contained o-append o-async o-cloexec o-creat
-syn keyword tl_keyword contained o-direct o-directory o-noatime o-noctty
-syn keyword tl_keyword contained o-nofollow o-nonblock o-path o-rdonly
-syn keyword tl_keyword contained o-rdwr o-sync o-trunc o-wronly
-syn keyword tl_keyword contained oand obtain obtain* obtain*-block
-syn keyword tl_keyword contained obtain-block ocrnl oddp ofdel
-syn keyword tl_keyword contained off-t offsetof ofill olcuc
-syn keyword tl_keyword contained onlcr onlret onocr op
-syn keyword tl_keyword contained open-command open-directory open-file open-fileno
-syn keyword tl_keyword contained open-files open-files* open-pipe open-process
-syn keyword tl_keyword contained open-socket open-socket-pair open-subprocess open-tail
-syn keyword tl_keyword contained opendir openlog opip opost
-syn keyword tl_keyword contained opt opthelp or orf
-syn keyword tl_keyword contained package-alist package-fallback-list package-foreign-symbols package-local-symbols
-syn keyword tl_keyword contained package-name package-symbols packagep pad
-syn keyword tl_keyword contained parenb parmrk parodd partition
+syn keyword tl_keyword contained ixon join join-with json
+syn keyword tl_keyword contained juxt keep-if keep-if* keep-match-products
+syn keyword tl_keyword contained keep-matches keepq keepql keepqual
+syn keyword tl_keyword contained key key-t keyword-package keywordp
+syn keyword tl_keyword contained kill labels lambda lambda-match
+syn keyword tl_keyword contained last lazy-str lazy-str-force lazy-str-force-upto
+syn keyword tl_keyword contained lazy-str-get-trailing-list lazy-stream-cons lazy-stringp lchown
+syn keyword tl_keyword contained lcm lcons lcons-car lcons-cdr
+syn keyword tl_keyword contained lcons-fun lconsp ldiff ldo
+syn keyword tl_keyword contained le-double le-float le-int16 le-int32
+syn keyword tl_keyword contained le-int64 le-uint16 le-uint32 le-uint64
+syn keyword tl_keyword contained left len length length-buf
+syn keyword tl_keyword contained length-carray length-list length-str length-str-<
+syn keyword tl_keyword contained length-str-<= length-str-> length-str->= length-vec
+syn keyword tl_keyword contained lequal less let let*
+syn keyword tl_keyword contained lexical-fun-p lexical-lisp1-binding lexical-var-p lib-version
+syn keyword tl_keyword contained link lisp-parse list list*
+syn keyword tl_keyword contained list-carray list-seq list-str list-vec
+syn keyword tl_keyword contained list-vector listp lnew lnew*
+syn keyword tl_keyword contained load load-for load-time loff-t
+syn keyword tl_keyword contained log log-alert log-auth log-authpriv
+syn keyword tl_keyword contained log-cons log-crit log-daemon log-debug
+syn keyword tl_keyword contained log-emerg log-err log-info log-ndelay
+syn keyword tl_keyword contained log-notice log-nowait log-odelay log-perror
+syn keyword tl_keyword contained log-pid log-user log-warning log10
+syn keyword tl_keyword contained log2 logand logcount logior
+syn keyword tl_keyword contained lognot logtest logtrunc logxor
+syn keyword tl_keyword contained long longlong lop lset
+syn keyword tl_keyword contained lstat lutimes m$ m^
+syn keyword tl_keyword contained m^$ mac-env-param-bind mac-param-bind macro-ancestor
+syn keyword tl_keyword contained macro-form-p macro-time macroexpand macroexpand-1
+syn keyword tl_keyword contained macroexpand-1-lisp1 macroexpand-lisp1 macrolet major
+syn keyword tl_keyword contained make-buf make-buf-stream make-byte-input-stream make-catenated-stream
+syn keyword tl_keyword contained make-env make-hash make-lazy-cons make-lazy-struct
+syn keyword tl_keyword contained make-like make-package make-random-state make-similar-hash
+syn keyword tl_keyword contained make-similar-tree make-string-byte-input-stream make-string-input-stream make-string-output-stream
+syn keyword tl_keyword contained make-strlist-input-stream make-strlist-output-stream make-struct make-struct-delegate-stream
+syn keyword tl_keyword contained make-struct-type make-sym make-time make-time-utc
+syn keyword tl_keyword contained make-trie make-union make-zstruct makedev
+syn keyword tl_keyword contained makunbound mapcar mapcar* mapdo
+syn keyword tl_keyword contained mapf maphash mappend mappend*
+syn keyword tl_keyword contained maprend maprod maprodo mask
+syn keyword tl_keyword contained match-case match-fun match-regex match-regex-right
+syn keyword tl_keyword contained match-regst match-regst-right match-str match-str-tree
+syn keyword tl_keyword contained max mboundp md5 md5-begin
+syn keyword tl_keyword contained md5-end md5-hash md5-stream member
+syn keyword tl_keyword contained member-if memp memq memql
+syn keyword tl_keyword contained memqual meq meql mequal
+syn keyword tl_keyword contained merge merge-delete-package meth method
+syn keyword tl_keyword contained min minor minusp mismatch
+syn keyword tl_keyword contained mkdir mkdtemp mkfifo mknod
+syn keyword tl_keyword contained mkstemp mkstring mlet mmakunbound
+syn keyword tl_keyword contained mod mode-t multi multi-sort
+syn keyword tl_keyword contained n-choose-k n-perm-k nconc neg
+syn keyword tl_keyword contained neq neql nequal new
+syn keyword tl_keyword contained new* nexpand-left nil nilf
+syn keyword tl_keyword contained ninth nl0 nl1 nldly
+syn keyword tl_keyword contained nlink-t noflsh none not
+syn keyword tl_keyword contained notf nreconc nreverse nshuffle
+syn keyword tl_keyword contained nsort nth nthcdr nthlast
+syn keyword tl_keyword contained null nullify num-chr num-str
+syn keyword tl_keyword contained numberp nzerop o-accmode o-append
+syn keyword tl_keyword contained o-async o-cloexec o-creat o-direct
+syn keyword tl_keyword contained o-directory o-noatime o-noctty o-nofollow
+syn keyword tl_keyword contained o-nonblock o-path o-rdonly o-rdwr
+syn keyword tl_keyword contained o-sync o-trunc o-wronly oand
+syn keyword tl_keyword contained obtain obtain* obtain*-block obtain-block
+syn keyword tl_keyword contained ocrnl oddp ofdel off-t
+syn keyword tl_keyword contained offsetof ofill olcuc onlcr
+syn keyword tl_keyword contained onlret onocr op open-command
+syn keyword tl_keyword contained open-directory open-file open-fileno open-files
+syn keyword tl_keyword contained open-files* open-pipe open-process open-socket
+syn keyword tl_keyword contained open-socket-pair open-subprocess open-tail opendir
+syn keyword tl_keyword contained openlog opip opost opt
+syn keyword tl_keyword contained opthelp or orf package-alist
+syn keyword tl_keyword contained package-fallback-list package-foreign-symbols package-local-symbols package-name
+syn keyword tl_keyword contained package-symbols packagep pad parenb
+syn keyword tl_keyword contained parmrk parodd parse-errors partition
syn keyword tl_keyword contained partition* partition-by path-blkdev-p path-cat
syn keyword tl_keyword contained path-chrdev-p path-dir-empty path-dir-p path-executable-to-me-p
syn keyword tl_keyword contained path-exists-p path-file-p path-mine-p path-my-group-p
@@ -408,158 +412,158 @@ syn keyword tl_keyword contained pset ptr ptr-in ptr-in-d
syn keyword tl_keyword contained ptr-out ptr-out-d ptr-out-s ptrdiff-t
syn keyword tl_keyword contained pub:txr-sym pure-rel-path-p purge-deferred-warning push
syn keyword tl_keyword contained pushhash pushnew put-buf put-byte
-syn keyword tl_keyword contained put-carray put-char put-line put-lines
-syn keyword tl_keyword contained put-obj put-string put-strings pwd
-syn keyword tl_keyword contained qquote qref quip quote
-syn keyword tl_keyword contained r$ r^ r^$ raise
-syn keyword tl_keyword contained rand random random-fixnum random-float
-syn keyword tl_keyword contained random-state-get-vec random-state-p range range*
-syn keyword tl_keyword contained range-regex rangep rassoc rassq
-syn keyword tl_keyword contained rassql rcomb rcons read
-syn keyword tl_keyword contained read-until-match readdir readlink real-time-stream-p
-syn keyword tl_keyword contained realpath record-adapter reduce-left reduce-right
-syn keyword tl_keyword contained ref refset regex-compile regex-from-trie
-syn keyword tl_keyword contained regex-parse regex-prefix-match regex-source regexp
-syn keyword tl_keyword contained register-exception-subtypes register-tentative-def regsub rehome-sym
-syn keyword tl_keyword contained reject rel-path relate release-deferred-warnings
-syn keyword tl_keyword contained remhash remove-if remove-if* remove-path
-syn keyword tl_keyword contained remove-path-rec remq remq* remql
-syn keyword tl_keyword contained remql* remqual remqual* rename-path
-syn keyword tl_keyword contained repeat replace replace-buf replace-list
-syn keyword tl_keyword contained replace-str replace-struct replace-tree-iter replace-vec
-syn keyword tl_keyword contained reset-struct rest ret retf
-syn keyword tl_keyword contained return return* return-from revappend
-syn keyword tl_keyword contained reverse rfind rfind-if right
-syn keyword tl_keyword contained rlcp rlcp-tree rlet rlist
-syn keyword tl_keyword contained rlist* rmdir rmember rmember-if
-syn keyword tl_keyword contained rmemq rmemql rmemqual rmismatch
-syn keyword tl_keyword contained rotate round round-rem rperm
-syn keyword tl_keyword contained rplaca rplacd rpoly rpos
-syn keyword tl_keyword contained rpos-if rposq rposql rposqual
-syn keyword tl_keyword contained rr rra rsearch rslot
-syn keyword tl_keyword contained rtld-deepbind rtld-global rtld-lazy rtld-local
-syn keyword tl_keyword contained rtld-nodelete rtld-noload rtld-now run
-syn keyword tl_keyword contained s-ifblk s-ifchr s-ifdir s-ififo
-syn keyword tl_keyword contained s-iflnk s-ifmt s-ifreg s-ifsock
-syn keyword tl_keyword contained s-irgrp s-iroth s-irusr s-irwxg
-syn keyword tl_keyword contained s-irwxo s-irwxu s-isgid s-isuid
-syn keyword tl_keyword contained s-isvtx s-iwgrp s-iwoth s-iwusr
-syn keyword tl_keyword contained s-ixgrp s-ixoth s-ixusr save-exe
-syn keyword tl_keyword contained sbit scan-until-match search search-regex
-syn keyword tl_keyword contained search-regst search-str search-str-tree second
-syn keyword tl_keyword contained seek-cur seek-end seek-set seek-stream
-syn keyword tl_keyword contained select self-load-path self-path seq-begin
-syn keyword tl_keyword contained seq-next seq-reset seqp set
-syn keyword tl_keyword contained set-diff set-hash-userdata set-indent set-indent-mode
-syn keyword tl_keyword contained set-key set-left set-max-depth set-max-length
-syn keyword tl_keyword contained set-package-fallback-list set-right set-sig-handler setegid
-syn keyword tl_keyword contained setenv seteuid setgid setgrent
-syn keyword tl_keyword contained setgroups sethash setitimer setlogmask
-syn keyword tl_keyword contained setpwent setresgid setresuid setuid
-syn keyword tl_keyword contained seventh sh sha256 sha256-begin
-syn keyword tl_keyword contained sha256-end sha256-hash sha256-stream shift
-syn keyword tl_keyword contained short shuffle shut-rd shut-rdwr
-syn keyword tl_keyword contained shut-wr sig-abrt sig-alrm sig-atomic-t
-syn keyword tl_keyword contained sig-bus sig-check sig-chld sig-cont
-syn keyword tl_keyword contained sig-fpe sig-hup sig-ill sig-int
-syn keyword tl_keyword contained sig-io sig-iot sig-kill sig-pipe
-syn keyword tl_keyword contained sig-poll sig-prof sig-pwr sig-quit
-syn keyword tl_keyword contained sig-segv sig-stkflt sig-stop sig-sys
-syn keyword tl_keyword contained sig-term sig-trap sig-tstp sig-ttin
-syn keyword tl_keyword contained sig-ttou sig-urg sig-usr1 sig-usr2
-syn keyword tl_keyword contained sig-vtalrm sig-winch sig-xcpu sig-xfsz
-syn keyword tl_keyword contained sign-extend signum sin sinh
-syn keyword tl_keyword contained sixth size-t size-vec sizeof
-syn keyword tl_keyword contained slet slot slotp slots
-syn keyword tl_keyword contained slotset sock-accept sock-bind sock-cloexec
-syn keyword tl_keyword contained sock-connect sock-dgram sock-family sock-listen
-syn keyword tl_keyword contained sock-nonblock sock-peer sock-recv-timeout sock-send-timeout
-syn keyword tl_keyword contained sock-set-peer sock-shutdown sock-stream sock-type
-syn keyword tl_keyword contained some sort sort-group source-loc
-syn keyword tl_keyword contained source-loc-str span-str special-operator-p special-var-p
-syn keyword tl_keyword contained spl splice split split*
-syn keyword tl_keyword contained split-str split-str-set sqrt square
-syn keyword tl_keyword contained ssize-t sspl sssucc ssucc
-syn keyword tl_keyword contained starts-with stat static-slot static-slot-ensure
-syn keyword tl_keyword contained static-slot-home static-slot-p static-slot-set stdlib
-syn keyword tl_keyword contained str str-buf str-d str-in6addr
-syn keyword tl_keyword contained str-in6addr-net str-inaddr str-inaddr-net str-seq
-syn keyword tl_keyword contained str< str<= str= str>
-syn keyword tl_keyword contained str>= stream-get-prop stream-set-prop streamp
-syn keyword tl_keyword contained strerror string-extend string-lt stringp
-syn keyword tl_keyword contained strsignal struct struct-from-args struct-from-plist
-syn keyword tl_keyword contained struct-get-initfun struct-get-postinitfun struct-set-initfun struct-set-postinitfun
-syn keyword tl_keyword contained struct-type struct-type-name struct-type-p structp
-syn keyword tl_keyword contained sub sub-buf sub-list sub-str
-syn keyword tl_keyword contained sub-tree sub-vec subtypep succ
-syn keyword tl_keyword contained sum super super-method suspend
-syn keyword tl_keyword contained swap symacrolet symbol-function symbol-macro
-syn keyword tl_keyword contained symbol-name symbol-package symbol-value symbolp
-syn keyword tl_keyword contained symdiff symlink sys:%backpatch-high16% sys:%backpatch-low16%
-syn keyword tl_keyword contained sys:%big-endian% sys:%bin-op% sys:%bin-ops% sys:%block-using-funs%
-syn keyword tl_keyword contained sys:%call-op% sys:%const-foldable% sys:%const-foldable-funs% sys:%dbg-command-env%
-syn keyword tl_keyword contained sys:%effect-free% sys:%effect-free-funs% sys:%file-suff-rx% sys:%functional%
-syn keyword tl_keyword contained sys:%functional-funs% sys:%gcall-op% sys:%lev-bits% sys:%lev-size%
-syn keyword tl_keyword contained sys:%max-lambda-fixed-args% sys:%max-lev% sys:%max-lev-idx% sys:%max-sm-lev%
-syn keyword tl_keyword contained sys:%max-sm-lev-idx% sys:%max-v-lev% sys:%nary-ops% sys:%oc-code%
-syn keyword tl_keyword contained sys:%oc-hash% sys:%oc-list-builder% sys:%package-manip% sys:%param-info%
-syn keyword tl_keyword contained sys:%quip-rand-state% sys:%quips% sys:%shuffled-quips% sys:%sm-lev-bits%
-syn keyword tl_keyword contained sys:%sm-lev-size% sys:%test-funs% sys:%test-funs-neg% sys:%test-funs-ops%
-syn keyword tl_keyword contained sys:%test-funs-pos% sys:%test-inv% sys:%test-opcode% sys:%tlo-ver%
-syn keyword tl_keyword contained sys:*dedup* sys:*emit* sys:*eval* sys:*in-compilation-unit*
-syn keyword tl_keyword contained sys:*load-recursive* sys:*load-time* sys:*match-form* sys:*op-ctx*
-syn keyword tl_keyword contained sys:*pl-env* sys:*pl-form* sys:*trace-hash* sys:*trace-level*
-syn keyword tl_keyword contained sys:*unchecked-calls* sys:abscond* sys:abscond-from sys:analyze-argtypes
-syn keyword tl_keyword contained sys:analyze-params sys:apply sys:asm-error sys:assumed-fun
-syn keyword tl_keyword contained sys:awk%--rng sys:awk%--rng+ sys:awk%--rng- sys:awk%-rng+
-syn keyword tl_keyword contained sys:awk%rng+ sys:awk-code-move-check sys:awk-error sys:awk-expander
-syn keyword tl_keyword contained sys:awk-fun-let sys:awk-fun-shadowing-env sys:awk-mac-let sys:awk-redir
-syn keyword tl_keyword contained sys:awk-test sys:b* sys:b+ sys:b-
-syn keyword tl_keyword contained sys:b/ sys:b< sys:b<= sys:b=
-syn keyword tl_keyword contained sys:b=> sys:b> sys:bad-slot-syntax sys:bind-mac-check
-syn keyword tl_keyword contained sys:bind-mac-error sys:bindable-check sys:bits sys:bits-to-obj
-syn keyword tl_keyword contained sys:blk sys:build-expander sys:build-key-list-expr sys:capture-cont
-syn keyword tl_keyword contained sys:catch sys:check sys:check-end sys:check-slot
-syn keyword tl_keyword contained sys:check-struct sys:check-sym sys:circref sys:compat
-syn keyword tl_keyword contained sys:compile-and-match sys:compile-as-match sys:compile-atom-match sys:compile-cons-structure
-syn keyword tl_keyword contained sys:compile-exprs-match sys:compile-file-conditionally sys:compile-hash-match sys:compile-loop-match
-syn keyword tl_keyword contained sys:compile-match sys:compile-new-var-match sys:compile-not-match sys:compile-or-match
-syn keyword tl_keyword contained sys:compile-predicate-match sys:compile-range-match sys:compile-require-match sys:compile-scan-match
-syn keyword tl_keyword contained sys:compile-struct-match sys:compile-var-match sys:compile-vec-match sys:compile-with-match
-syn keyword tl_keyword contained sys:compiler-emit-warnings sys:conv sys:conv-expand sys:conv-let
-syn keyword tl_keyword contained sys:ctx-form sys:ctx-name sys:dbg-all sys:dbg-backtrace
-syn keyword tl_keyword contained sys:dbg-clear sys:dbg-enable sys:dbg-restore sys:dbg-set
-syn keyword tl_keyword contained sys:dbg-step sys:debugger sys:dedup sys:dedup-labels
-syn keyword tl_keyword contained sys:deffi-cb-expander sys:define-method sys:defset-expander sys:defset-expander-simple
-syn keyword tl_keyword contained sys:dig sys:disassemble-cdf sys:dlib-expr sys:do-conv
-syn keyword tl_keyword contained sys:do-copy-obj sys:do-path-test sys:do-tweak-obj sys:doc-syms
-syn keyword tl_keyword contained sys:dump-to-tlo sys:dvbind sys:dwim-del sys:dwim-set
-syn keyword tl_keyword contained sys:dyn-size sys:each-match-expander sys:each-op sys:early-peephole
-syn keyword tl_keyword contained sys:enc-small-op sys:ensure-op-arg sys:env-to-let sys:eq-comparable
-syn keyword tl_keyword contained sys:eql-comparable sys:eval-err sys:expand-and sys:expand-bind-mac-params
-syn keyword tl_keyword contained sys:expand-defmacro sys:expand-defsymacro sys:expand-defun sys:expand-defvarl
-syn keyword tl_keyword contained sys:expand-dohash sys:expand-doloop sys:expand-each sys:expand-each-prod
-syn keyword tl_keyword contained sys:expand-each-prod* sys:expand-handle sys:expand-lambda-match sys:expand-params
-syn keyword tl_keyword contained sys:expand-quasi sys:expand-quasi-args sys:expand-quasi-match sys:expand-quasi-mods
-syn keyword tl_keyword contained sys:expand-sym-ref sys:expr sys:extract-keys sys:extract-keys-p
-syn keyword tl_keyword contained sys:fbind sys:fixed-point sys:flatten-or sys:fmt-flex
-syn keyword tl_keyword contained sys:fmt-join sys:fmt-simple sys:for-op sys:gc
-syn keyword tl_keyword contained sys:gc-set-delta sys:get-buf-common sys:get-fun-getter-setter sys:get-mb
-syn keyword tl_keyword contained sys:get-param-info sys:get-parser sys:get-place-macro sys:get-var-list
-syn keyword tl_keyword contained sys:get-vars sys:get-vb sys:getopts-error sys:handle-bad-syntax
-syn keyword tl_keyword contained sys:hlet-expand sys:if-to-cond sys:in6addr-condensed-text sys:is-label
-syn keyword tl_keyword contained sys:l1-setq sys:l1-val sys:lambda-apply-transform sys:lambda-short-apply-list
-syn keyword tl_keyword contained sys:lambda-too-few-args sys:lambda-too-many-args sys:lbind sys:lisp1-setq
-syn keyword tl_keyword contained sys:lisp1-value sys:list-builder-flets sys:list-from-vm-desc sys:load-time-lit
-syn keyword tl_keyword contained sys:loc sys:loosen sys:mac-env-flatten sys:make-anon-package
-syn keyword tl_keyword contained sys:make-copy-path-opts sys:make-struct-lit sys:make-struct-type sys:mark-special
-syn keyword tl_keyword contained sys:misleading-ref-check sys:name-str sys:new-expander sys:new-type
-syn keyword tl_keyword contained sys:non-triv-pat-p sys:null-reg sys:obtain-impl sys:op-alpha-rename
-syn keyword tl_keyword contained sys:op-ensure-rec sys:op-expand sys:op-meta-p sys:op-rec-p
-syn keyword tl_keyword contained sys:open-compile-streams sys:open-url sys:operand-to-exp sys:operand-to-sym
-syn keyword tl_keyword contained sys:opip-expand sys:opt-dash sys:opt-err sys:os-symbol
-syn keyword tl_keyword contained sys:param-check sys:parse-compound-operand sys:parse-lambda-match-clause sys:parse-operand
-syn keyword tl_keyword contained sys:parser-eof sys:parser-errors sys:pat-len sys:path-access
+syn keyword tl_keyword contained put-carray put-char put-json put-jsonl
+syn keyword tl_keyword contained put-jsons put-line put-lines put-obj
+syn keyword tl_keyword contained put-string put-strings pwd qquote
+syn keyword tl_keyword contained qref quip quote r$
+syn keyword tl_keyword contained r^ r^$ raise rand
+syn keyword tl_keyword contained random random-fixnum random-float random-state-get-vec
+syn keyword tl_keyword contained random-state-p range range* range-regex
+syn keyword tl_keyword contained rangep rassoc rassq rassql
+syn keyword tl_keyword contained rcomb rcons read read-until-match
+syn keyword tl_keyword contained readdir readlink real-time-stream-p realpath
+syn keyword tl_keyword contained record-adapter reduce-left reduce-right ref
+syn keyword tl_keyword contained refset regex-compile regex-from-trie regex-parse
+syn keyword tl_keyword contained regex-prefix-match regex-source regexp register-exception-subtypes
+syn keyword tl_keyword contained register-tentative-def regsub rehome-sym reject
+syn keyword tl_keyword contained rel-path relate release-deferred-warnings remhash
+syn keyword tl_keyword contained remove-if remove-if* remove-path remove-path-rec
+syn keyword tl_keyword contained remq remq* remql remql*
+syn keyword tl_keyword contained remqual remqual* rename-path repeat
+syn keyword tl_keyword contained replace replace-buf replace-list replace-str
+syn keyword tl_keyword contained replace-struct replace-tree-iter replace-vec reset-struct
+syn keyword tl_keyword contained rest ret retf return
+syn keyword tl_keyword contained return* return-from revappend reverse
+syn keyword tl_keyword contained rfind rfind-if right rlcp
+syn keyword tl_keyword contained rlcp-tree rlet rlist rlist*
+syn keyword tl_keyword contained rmdir rmember rmember-if rmemq
+syn keyword tl_keyword contained rmemql rmemqual rmismatch rotate
+syn keyword tl_keyword contained round round-rem rperm rplaca
+syn keyword tl_keyword contained rplacd rpoly rpos rpos-if
+syn keyword tl_keyword contained rposq rposql rposqual rr
+syn keyword tl_keyword contained rra rsearch rslot rtld-deepbind
+syn keyword tl_keyword contained rtld-global rtld-lazy rtld-local rtld-nodelete
+syn keyword tl_keyword contained rtld-noload rtld-now run s-ifblk
+syn keyword tl_keyword contained s-ifchr s-ifdir s-ififo s-iflnk
+syn keyword tl_keyword contained s-ifmt s-ifreg s-ifsock s-irgrp
+syn keyword tl_keyword contained s-iroth s-irusr s-irwxg s-irwxo
+syn keyword tl_keyword contained s-irwxu s-isgid s-isuid s-isvtx
+syn keyword tl_keyword contained s-iwgrp s-iwoth s-iwusr s-ixgrp
+syn keyword tl_keyword contained s-ixoth s-ixusr save-exe sbit
+syn keyword tl_keyword contained scan-until-match search search-regex search-regst
+syn keyword tl_keyword contained search-str search-str-tree second seek-cur
+syn keyword tl_keyword contained seek-end seek-set seek-stream select
+syn keyword tl_keyword contained self-load-path self-path seq-begin seq-next
+syn keyword tl_keyword contained seq-reset seqp set set-diff
+syn keyword tl_keyword contained set-hash-userdata set-indent set-indent-mode set-key
+syn keyword tl_keyword contained set-left set-max-depth set-max-length set-package-fallback-list
+syn keyword tl_keyword contained set-right set-sig-handler setegid setenv
+syn keyword tl_keyword contained seteuid setgid setgrent setgroups
+syn keyword tl_keyword contained sethash setitimer setlogmask setpwent
+syn keyword tl_keyword contained setresgid setresuid setuid seventh
+syn keyword tl_keyword contained sh sha256 sha256-begin sha256-end
+syn keyword tl_keyword contained sha256-hash sha256-stream shift short
+syn keyword tl_keyword contained shuffle shut-rd shut-rdwr shut-wr
+syn keyword tl_keyword contained sig-abrt sig-alrm sig-atomic-t sig-bus
+syn keyword tl_keyword contained sig-check sig-chld sig-cont sig-fpe
+syn keyword tl_keyword contained sig-hup sig-ill sig-int sig-io
+syn keyword tl_keyword contained sig-iot sig-kill sig-pipe sig-poll
+syn keyword tl_keyword contained sig-prof sig-pwr sig-quit sig-segv
+syn keyword tl_keyword contained sig-stkflt sig-stop sig-sys sig-term
+syn keyword tl_keyword contained sig-trap sig-tstp sig-ttin sig-ttou
+syn keyword tl_keyword contained sig-urg sig-usr1 sig-usr2 sig-vtalrm
+syn keyword tl_keyword contained sig-winch sig-xcpu sig-xfsz sign-extend
+syn keyword tl_keyword contained signum sin sinh sixth
+syn keyword tl_keyword contained size-t size-vec sizeof slet
+syn keyword tl_keyword contained slot slotp slots slotset
+syn keyword tl_keyword contained sock-accept sock-bind sock-cloexec sock-connect
+syn keyword tl_keyword contained sock-dgram sock-family sock-listen sock-nonblock
+syn keyword tl_keyword contained sock-peer sock-recv-timeout sock-send-timeout sock-set-peer
+syn keyword tl_keyword contained sock-shutdown sock-stream sock-type some
+syn keyword tl_keyword contained sort sort-group source-loc source-loc-str
+syn keyword tl_keyword contained span-str special-operator-p special-var-p spl
+syn keyword tl_keyword contained splice split split* split-str
+syn keyword tl_keyword contained split-str-set sqrt square ssize-t
+syn keyword tl_keyword contained sspl sssucc ssucc starts-with
+syn keyword tl_keyword contained stat static-slot static-slot-ensure static-slot-home
+syn keyword tl_keyword contained static-slot-p static-slot-set stdlib str
+syn keyword tl_keyword contained str-buf str-d str-in6addr str-in6addr-net
+syn keyword tl_keyword contained str-inaddr str-inaddr-net str-seq str<
+syn keyword tl_keyword contained str<= str= str> str>=
+syn keyword tl_keyword contained stream-get-prop stream-set-prop streamp strerror
+syn keyword tl_keyword contained string-extend string-lt stringp strsignal
+syn keyword tl_keyword contained struct struct-from-args struct-from-plist struct-get-initfun
+syn keyword tl_keyword contained struct-get-postinitfun struct-set-initfun struct-set-postinitfun struct-type
+syn keyword tl_keyword contained struct-type-name struct-type-p structp sub
+syn keyword tl_keyword contained sub-buf sub-list sub-str sub-tree
+syn keyword tl_keyword contained sub-vec subtypep succ sum
+syn keyword tl_keyword contained super super-method suspend swap
+syn keyword tl_keyword contained symacrolet symbol-function symbol-macro symbol-name
+syn keyword tl_keyword contained symbol-package symbol-value symbolp symdiff
+syn keyword tl_keyword contained symlink sys:%backpatch-high16% sys:%backpatch-low16% sys:%big-endian%
+syn keyword tl_keyword contained sys:%bin-op% sys:%bin-ops% sys:%block-using-funs% sys:%call-op%
+syn keyword tl_keyword contained sys:%const-foldable% sys:%const-foldable-funs% sys:%dbg-command-env% sys:%effect-free%
+syn keyword tl_keyword contained sys:%effect-free-funs% sys:%file-suff-rx% sys:%functional% sys:%functional-funs%
+syn keyword tl_keyword contained sys:%gcall-op% sys:%lev-bits% sys:%lev-size% sys:%max-lambda-fixed-args%
+syn keyword tl_keyword contained sys:%max-lev% sys:%max-lev-idx% sys:%max-sm-lev% sys:%max-sm-lev-idx%
+syn keyword tl_keyword contained sys:%max-v-lev% sys:%nary-ops% sys:%oc-code% sys:%oc-hash%
+syn keyword tl_keyword contained sys:%oc-list-builder% sys:%package-manip% sys:%param-info% sys:%quip-rand-state%
+syn keyword tl_keyword contained sys:%quips% sys:%shuffled-quips% sys:%sm-lev-bits% sys:%sm-lev-size%
+syn keyword tl_keyword contained sys:%test-funs% sys:%test-funs-neg% sys:%test-funs-ops% sys:%test-funs-pos%
+syn keyword tl_keyword contained sys:%test-inv% sys:%test-opcode% sys:%tlo-ver% sys:*dedup*
+syn keyword tl_keyword contained sys:*emit* sys:*eval* sys:*in-compilation-unit* sys:*load-recursive*
+syn keyword tl_keyword contained sys:*load-time* sys:*match-form* sys:*op-ctx* sys:*pl-env*
+syn keyword tl_keyword contained sys:*pl-form* sys:*trace-hash* sys:*trace-level* sys:*unchecked-calls*
+syn keyword tl_keyword contained sys:abscond* sys:abscond-from sys:analyze-argtypes sys:analyze-params
+syn keyword tl_keyword contained sys:apply sys:asm-error sys:assumed-fun sys:awk%--rng
+syn keyword tl_keyword contained sys:awk%--rng+ sys:awk%--rng- sys:awk%-rng+ sys:awk%rng+
+syn keyword tl_keyword contained sys:awk-code-move-check sys:awk-error sys:awk-expander sys:awk-fun-let
+syn keyword tl_keyword contained sys:awk-fun-shadowing-env sys:awk-mac-let sys:awk-redir sys:awk-test
+syn keyword tl_keyword contained sys:b* sys:b+ sys:b- sys:b/
+syn keyword tl_keyword contained sys:b< sys:b<= sys:b= sys:b=>
+syn keyword tl_keyword contained sys:b> sys:bad-slot-syntax sys:bind-mac-check sys:bind-mac-error
+syn keyword tl_keyword contained sys:bindable-check sys:bits sys:bits-to-obj sys:blk
+syn keyword tl_keyword contained sys:build-expander sys:build-key-list-expr sys:capture-cont sys:catch
+syn keyword tl_keyword contained sys:check sys:check-end sys:check-slot sys:check-struct
+syn keyword tl_keyword contained sys:check-sym sys:circref sys:compat sys:compile-and-match
+syn keyword tl_keyword contained sys:compile-as-match sys:compile-atom-match sys:compile-cons-structure sys:compile-exprs-match
+syn keyword tl_keyword contained sys:compile-file-conditionally sys:compile-hash-match sys:compile-loop-match sys:compile-match
+syn keyword tl_keyword contained sys:compile-new-var-match sys:compile-not-match sys:compile-or-match sys:compile-predicate-match
+syn keyword tl_keyword contained sys:compile-range-match sys:compile-require-match sys:compile-scan-match sys:compile-struct-match
+syn keyword tl_keyword contained sys:compile-var-match sys:compile-vec-match sys:compile-with-match sys:compiler-emit-warnings
+syn keyword tl_keyword contained sys:conv sys:conv-expand sys:conv-let sys:ctx-form
+syn keyword tl_keyword contained sys:ctx-name sys:dbg-all sys:dbg-backtrace sys:dbg-clear
+syn keyword tl_keyword contained sys:dbg-enable sys:dbg-restore sys:dbg-set sys:dbg-step
+syn keyword tl_keyword contained sys:debugger sys:dedup sys:dedup-labels sys:deffi-cb-expander
+syn keyword tl_keyword contained sys:define-method sys:defset-expander sys:defset-expander-simple sys:dig
+syn keyword tl_keyword contained sys:disassemble-cdf sys:dlib-expr sys:do-conv sys:do-copy-obj
+syn keyword tl_keyword contained sys:do-path-test sys:do-tweak-obj sys:doc-syms sys:dump-to-tlo
+syn keyword tl_keyword contained sys:dvbind sys:dwim-del sys:dwim-set sys:dyn-size
+syn keyword tl_keyword contained sys:each-match-expander sys:each-op sys:early-peephole sys:enc-small-op
+syn keyword tl_keyword contained sys:ensure-op-arg sys:env-to-let sys:eq-comparable sys:eql-comparable
+syn keyword tl_keyword contained sys:eval-err sys:expand-and sys:expand-bind-mac-params sys:expand-defmacro
+syn keyword tl_keyword contained sys:expand-defsymacro sys:expand-defun sys:expand-defvarl sys:expand-dohash
+syn keyword tl_keyword contained sys:expand-doloop sys:expand-each sys:expand-each-prod sys:expand-each-prod*
+syn keyword tl_keyword contained sys:expand-handle sys:expand-lambda-match sys:expand-params sys:expand-quasi
+syn keyword tl_keyword contained sys:expand-quasi-args sys:expand-quasi-match sys:expand-quasi-mods sys:expand-sym-ref
+syn keyword tl_keyword contained sys:expr sys:extract-keys sys:extract-keys-p sys:fbind
+syn keyword tl_keyword contained sys:fixed-point sys:flatten-or sys:fmt-flex sys:fmt-join
+syn keyword tl_keyword contained sys:fmt-simple sys:for-op sys:gc sys:gc-set-delta
+syn keyword tl_keyword contained sys:get-buf-common sys:get-fun-getter-setter sys:get-mb sys:get-param-info
+syn keyword tl_keyword contained sys:get-place-macro sys:get-var-list sys:get-vars sys:get-vb
+syn keyword tl_keyword contained sys:getopts-error sys:handle-bad-syntax sys:hlet-expand sys:if-to-cond
+syn keyword tl_keyword contained sys:in6addr-condensed-text sys:is-label sys:l1-setq sys:l1-val
+syn keyword tl_keyword contained sys:lambda-apply-transform sys:lambda-short-apply-list sys:lambda-too-few-args sys:lambda-too-many-args
+syn keyword tl_keyword contained sys:lbind sys:lisp1-setq sys:lisp1-value sys:list-builder-flets
+syn keyword tl_keyword contained sys:list-from-vm-desc sys:load-time-lit sys:loc sys:loosen
+syn keyword tl_keyword contained sys:mac-env-flatten sys:make-anon-package sys:make-copy-path-opts sys:make-struct-lit
+syn keyword tl_keyword contained sys:make-struct-type sys:mark-special sys:misleading-ref-check sys:name-str
+syn keyword tl_keyword contained sys:new-expander sys:new-type sys:non-triv-pat-p sys:null-reg
+syn keyword tl_keyword contained sys:obtain-impl sys:op-alpha-rename sys:op-ensure-rec sys:op-expand
+syn keyword tl_keyword contained sys:op-meta-p sys:op-rec-p sys:open-compile-streams sys:open-url
+syn keyword tl_keyword contained sys:operand-to-exp sys:operand-to-sym sys:opip-expand sys:opt-dash
+syn keyword tl_keyword contained sys:opt-err sys:os-symbol sys:param-check sys:parse-compound-operand
+syn keyword tl_keyword contained sys:parse-lambda-match-clause sys:parse-operand sys:pat-len sys:path-access
syn keyword tl_keyword contained sys:path-examine sys:path-test-mode sys:path-test-type sys:pl-expand
syn keyword tl_keyword contained sys:placelet-1 sys:print-backtrace sys:propagate-ancestor sys:propagate-perms
syn keyword tl_keyword contained sys:prune-missing-inits sys:qquote sys:quasi sys:quasilist
@@ -598,58 +602,58 @@ syn keyword tl_keyword contained test-set test-set-indent-mode tf third
syn keyword tl_keyword contained throw throwf time time-fields-local
syn keyword tl_keyword contained time-fields-utc time-nsec time-parse time-parse-local
syn keyword tl_keyword contained time-parse-utc time-string-local time-string-utc time-struct-local
-syn keyword tl_keyword contained time-struct-utc time-t time-usec tnode
-syn keyword tl_keyword contained to tofloat tofloatz toint
-syn keyword tl_keyword contained tointz tok tok-str tok-where
-syn keyword tl_keyword contained tostop tostring tostringp touch
-syn keyword tl_keyword contained tprint trace transpose tree
-syn keyword tl_keyword contained tree-begin tree-bind tree-case tree-clear
-syn keyword tl_keyword contained tree-delete tree-delete-node tree-find tree-insert
-syn keyword tl_keyword contained tree-insert-node tree-lookup tree-lookup-node tree-next
-syn keyword tl_keyword contained tree-peek tree-reset tree-root treep
-syn keyword tl_keyword contained trie-add trie-compress trie-lookup-begin trie-lookup-feed-char
-syn keyword tl_keyword contained trie-value-at trim-left trim-right trim-str
-syn keyword tl_keyword contained true trunc trunc-rem truncate-stream
-syn keyword tl_keyword contained tuples txr-case txr-exe-path txr-if
-syn keyword tl_keyword contained txr-parse txr-path txr-version txr-when
-syn keyword tl_keyword contained typecase typedef typeof typep
-syn keyword tl_keyword contained ubit uchar uid-t uint
-syn keyword tl_keyword contained uint-buf uint-carray uint-ptr-t uint16
-syn keyword tl_keyword contained uint32 uint64 uint8 ulong
-syn keyword tl_keyword contained ulonglong umask umeth umethod
-syn keyword tl_keyword contained uname unget-byte unget-char uni
-syn keyword tl_keyword contained unintern union union-get union-in
-syn keyword tl_keyword contained union-members union-out union-put uniq
-syn keyword tl_keyword contained unique unless unquote unsetenv
-syn keyword tl_keyword contained until until* untrace unuse-package
-syn keyword tl_keyword contained unuse-sym unwind-protect upcase-str upd
-syn keyword tl_keyword contained update uref url-decode url-encode
-syn keyword tl_keyword contained use use-package use-sym user-package
-syn keyword tl_keyword contained ushort usl usleep uslot
-syn keyword tl_keyword contained utimes val vdiscard vec
-syn keyword tl_keyword contained vec-carray vec-list vec-push vec-seq
-syn keyword tl_keyword contained vec-set-length vecref vector vector-list
-syn keyword tl_keyword contained vectorp veof veol veol2
-syn keyword tl_keyword contained verase vintr vkill vlnext
-syn keyword tl_keyword contained vm-fun-p vmin void vquit
-syn keyword tl_keyword contained vreprint vstart vstop vsusp
-syn keyword tl_keyword contained vswtc vt0 vt1 vtdly
-syn keyword tl_keyword contained vtime vwerase w-continued w-coredump
-syn keyword tl_keyword contained w-exitstatus w-ifcontinued w-ifexited w-ifsignaled
-syn keyword tl_keyword contained w-ifstopped w-nohang w-stopsig w-termsig
-syn keyword tl_keyword contained w-untraced wait wchar weave
-syn keyword tl_keyword contained when when-match whena whenlet
-syn keyword tl_keyword contained where while while* whilet
-syn keyword tl_keyword contained width width-check window-map window-mapdo
-syn keyword tl_keyword contained window-mappend wint-t with-clobber-expander with-compilation-unit
-syn keyword tl_keyword contained with-delete-expander with-dyn-lib with-gensyms with-hash-iter
-syn keyword tl_keyword contained with-in-buf-stream with-in-string-byte-stream with-in-string-stream with-objects
-syn keyword tl_keyword contained with-out-buf-stream with-out-string-stream with-out-strlist-stream with-resources
-syn keyword tl_keyword contained with-slots with-stream with-update-expander wrap
-syn keyword tl_keyword contained wrap* wstr wstr-d xcase
-syn keyword tl_keyword contained yield yield-from zap zarray
-syn keyword tl_keyword contained zchar zero-fill zerop zip
-syn keyword tl_keyword contained znew
+syn keyword tl_keyword contained time-struct-utc time-t time-usec tmpfile
+syn keyword tl_keyword contained tnode to tofloat tofloatz
+syn keyword tl_keyword contained toint tointz tojson tok
+syn keyword tl_keyword contained tok-str tok-where tostop tostring
+syn keyword tl_keyword contained tostringp touch tprint trace
+syn keyword tl_keyword contained transpose tree tree-begin tree-bind
+syn keyword tl_keyword contained tree-case tree-clear tree-delete tree-delete-node
+syn keyword tl_keyword contained tree-find tree-insert tree-insert-node tree-lookup
+syn keyword tl_keyword contained tree-lookup-node tree-next tree-peek tree-reset
+syn keyword tl_keyword contained tree-root treep trie-add trie-compress
+syn keyword tl_keyword contained trie-lookup-begin trie-lookup-feed-char trie-value-at trim-left
+syn keyword tl_keyword contained trim-right trim-str true trunc
+syn keyword tl_keyword contained trunc-rem truncate-stream tuples txr-case
+syn keyword tl_keyword contained txr-exe-path txr-if txr-parse txr-path
+syn keyword tl_keyword contained txr-version txr-when typecase typedef
+syn keyword tl_keyword contained typeof typep ubit uchar
+syn keyword tl_keyword contained uid-t uint uint-buf uint-carray
+syn keyword tl_keyword contained uint-ptr-t uint16 uint32 uint64
+syn keyword tl_keyword contained uint8 ulong ulonglong umask
+syn keyword tl_keyword contained umeth umethod uname unget-byte
+syn keyword tl_keyword contained unget-char uni unintern union
+syn keyword tl_keyword contained union-get union-in union-members union-out
+syn keyword tl_keyword contained union-put uniq unique unless
+syn keyword tl_keyword contained unquote unsetenv until until*
+syn keyword tl_keyword contained untrace unuse-package unuse-sym unwind-protect
+syn keyword tl_keyword contained upcase-str upd update uref
+syn keyword tl_keyword contained url-decode url-encode use use-package
+syn keyword tl_keyword contained use-sym user-package ushort usl
+syn keyword tl_keyword contained usleep uslot utimes val
+syn keyword tl_keyword contained vdiscard vec vec-carray vec-list
+syn keyword tl_keyword contained vec-push vec-seq vec-set-length vecref
+syn keyword tl_keyword contained vector vector-list vectorp veof
+syn keyword tl_keyword contained veol veol2 verase vintr
+syn keyword tl_keyword contained vkill vlnext vm-fun-p vmin
+syn keyword tl_keyword contained void vquit vreprint vstart
+syn keyword tl_keyword contained vstop vsusp vswtc vt0
+syn keyword tl_keyword contained vt1 vtdly vtime vwerase
+syn keyword tl_keyword contained w-continued w-coredump w-exitstatus w-ifcontinued
+syn keyword tl_keyword contained w-ifexited w-ifsignaled w-ifstopped w-nohang
+syn keyword tl_keyword contained w-stopsig w-termsig w-untraced wait
+syn keyword tl_keyword contained wchar weave when when-match
+syn keyword tl_keyword contained whena whenlet where while
+syn keyword tl_keyword contained while* whilet width width-check
+syn keyword tl_keyword contained window-map window-mapdo window-mappend wint-t
+syn keyword tl_keyword contained with-clobber-expander with-compilation-unit with-delete-expander with-dyn-lib
+syn keyword tl_keyword contained with-gensyms with-hash-iter with-in-buf-stream with-in-string-byte-stream
+syn keyword tl_keyword contained with-in-string-stream with-objects with-out-buf-stream with-out-string-stream
+syn keyword tl_keyword contained with-out-strlist-stream with-resources with-slots with-stream
+syn keyword tl_keyword contained with-update-expander wrap wrap* wstr
+syn keyword tl_keyword contained wstr-d xcase yield yield-from
+syn keyword tl_keyword contained zap zarray zchar zero-fill
+syn keyword tl_keyword contained zerop zip znew
syn match txr_nested_error "[^\t ]\+" contained
syn match txr_variable "\(@[ \t]*\)[*]\?[ \t]*[A-Za-z_][A-Za-z_0-9]*"
syn match txr_splicevar "@[ \t,*@]*[A-Za-z_][A-Za-z_0-9]*" contained
@@ -693,29 +697,46 @@ syn match txr_quote "'" contained
syn match txr_quote "\^" contained
syn match txr_dotdot "\.\." contained
syn match txr_metaat "@" contained
-syn match txr_circ "#[0-9]\+[#=]"
syn match txr_buf_error "[^']" contained
syn match txr_buf_interior "\([0-9A-Fa-f][\n\t ]*[0-9A-Fa-f]\|[\n\t ]\+\)" contained
syn region txr_bracevar matchgroup=Delimiter start="@[ \t]*[*]\?{" matchgroup=Delimiter end="}" contains=txr_num,txr_pnum,tl_ident,tl_splice,tl_metanum,txr_metaat,txr_circ,txr_braced_ident,txr_dot,txr_dotdot,txr_string,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_regex,txr_quasilit,txr_chr,txr_nested_error
-syn region tl_bracevar contained matchgroup=Delimiter start="@[ \t]*[*]\?{" matchgroup=Delimiter end="}" contains=txr_num,txr_pnum,tl_ident,tl_splice,tl_metanum,txr_metaat,txr_circ,txr_braced_ident,txr_dot,txr_dotdot,txr_string,txr_list,txr_bracket,txr_mlist,txr_mbracket,tl_regex,txr_quasilit,txr_chr,txr_nested_error
-syn region txr_list matchgroup=Delimiter start="\(#[HSRTN]\?\)\?(" matchgroup=Delimiter end=")" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_ncomment,txr_nested_error
-syn region txr_bracket matchgroup=Delimiter start="\[" matchgroup=Delimiter end="\]" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_ncomment,txr_nested_error
-syn region txr_mlist matchgroup=Delimiter start="@[ \t^',]*(" matchgroup=Delimiter end=")" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_ncomment,txr_nested_error
-syn region txr_mbracket matchgroup=Delimiter start="@[ \t^',]*\[" matchgroup=Delimiter end="\]" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_ncomment,txr_nested_error
+syn region tl_bracevar contained matchgroup=Delimiter start="@[ \t]*[*]\?{" matchgroup=Delimiter end="}" contains=txr_num,txr_pnum,tl_ident,tl_splice,tl_metanum,txr_metaat,txr_circ,txr_braced_ident,txr_dot,txr_dotdot,txr_string,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_regex,txr_quasilit,txr_chr,txr_nested_error
+syn region txr_list matchgroup=Delimiter start="\(#[HSRTN]\?\)\?(" matchgroup=Delimiter end=")" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
+syn region txr_bracket matchgroup=Delimiter start="\[" matchgroup=Delimiter end="\]" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
+syn region txr_mlist matchgroup=Delimiter start="@[ \t^',]*(" matchgroup=Delimiter end=")" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
+syn region txr_mbracket matchgroup=Delimiter start="@[ \t^',]*\[" matchgroup=Delimiter end="\]" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
syn region txr_string start=+#\?\*\?"+ end=+["\n]+ contains=txr_stresc,txr_numesc,txr_badesc
syn region txr_quasilit start=+#\?\*\?`+ end=+[`\n]+ contains=txr_splicevar,txr_metanum,tl_bracevar,txr_mlist,txr_mbracket,txr_escat,txr_stresc,txr_numesc,txr_badesc
syn region txr_regex start="/" end="[/\n]" contains=txr_regesc,txr_numesc,txr_badesc
syn region tl_regex start="#/" end="[/\n]" contains=txr_regesc,txr_numesc,txr_badesc
syn region txr_buf matchgroup=txr_buf start="#b'" end="'" contains=txr_buf_interior,txr_buf_error
-syn region txr_ign_tok matchgroup=Comment start="#;" end="[ \(\)\[\]]"me=e contains=txr_string,tl_regex,txr_num,txr_pnum,tl_ident,txr_metanum,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_ncomment
+syn region txr_ign_tok matchgroup=Comment start="#;" end="[ \(\)\[\]]"me=e contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
syn region txr_ign_par matchgroup=Comment start="#;[ \t',]*\(#[HSRTN]\?\)\?(" matchgroup=Comment end=")" contains=txr_ign_par_interior,txr_ign_bkt_interior
syn region txr_ign_bkt matchgroup=Comment start="#;[ \t',]*\(#[HSRTN]\?\)\?\[" matchgroup=Comment end="\]" contains=txr_ign_par_interior,txr_ign_bkt_interior
syn region txr_ign_bkt matchgroup=Comment start="#;[ \t',]*\(#[HSRTN]\?\)\?\[" matchgroup=Comment end="\]" contains=txr_ign_par_interior,txr_ign_bkt_interior
syn region txr_ign_par_interior contained matchgroup=Comment start="(" matchgroup=Comment end=")" contains=txr_ign_par_interior,txr_ign_bkt_interior
syn region txr_ign_bkt_interior contained matchgroup=Comment start="\[" matchgroup=Comment end="\]" contains=txr_ign_par_interior,txr_ign_bkt_interior
+syn match txr_jerr "." contained
+syn match txr_jpunc "[,: \t\n]" contained
+syn match txr_jesc "\\[bfnrt"\\/]" contained
+syn match txr_juesc "\\u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f]" contained
+syn match txr_jnum "-\?\(0\|[1-9][0-9]*\)\([.][0-9]\+\)\?\([Ee][+-]\?[0-9]\+\)\?" contained
+syn match txr_jkeyword "true\|false\|null" contained
+
+syn region txr_jatom matchgroup=Delimiter start="#J\^\?[\t\n ]*"rs=e end="[\t\n ]\|[\])}]"re=e-1 contains=txr_jarray_in,txr_jhash_in,txr_jkeyword,txr_jstring,txr_jnum,txr_jpunc,txr_junqlist,txr_junqbkt,txr_circ,txr_jerr
+syn region txr_junqlist matchgroup=Delimiter start="\~\*\?#\?(" end=")" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
+syn region txr_junqbkt matchgroup=Delimiter start="\~\*\?\[" end="\]" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
+syn region txr_jstring matchgroup=Delimiter start=+"+ end=+["\n]+ contains=txr_jesc,txr_juesc,txr_badesc
+syn region txr_jarray matchgroup=Delimiter start="#J\^\?[\t\n ]*\[" matchgroup=Delimiter end="\]" contains=txr_jarray_in,txr_jhash_in,txr_jkeyword,txr_jstring,txr_jnum,txr_jpunc,txr_junqlist,txr_junqbkt,txr_circ,txr_jerr
+syn region txr_jhash matchgroup=Delimiter start="#J\^\?[\t\n ]*{" matchgroup=Delimiter end="}" contains=txr_jarray_in,txr_jhash_in,txr_jkeyword,txr_jstring,txr_jnum,txr_jpunc,txr_junqlist,txr_junqbkt,txr_circ,txr_jerr
+syn region txr_jarray_in contained matchgroup=Delimiter start="\[" end="\]" contains=txr_jarray_in,txr_jhash_in,txr_jkeyword,txr_jstring,txr_jnum,txr_jpunc,txr_junqlist,txr_junqbkt,txr_circ,txr_jerr
+syn region txr_jhash_in contained matchgroup=Delimiter start="{" end="}" contains=txr_jarray_in,txr_jhash_in,txr_jkeyword,txr_jstring,txr_jnum,txr_jpunc,txr_junqlist,txr_junqbkt,txr_circ,txr_jerr
+
+syn match txr_circ "#[0-9]\+[#=]" contained
+
hi def link txr_at Special
hi def link txr_atstar Special
hi def link txr_atat Special
@@ -767,7 +788,15 @@ hi def link txr_ign_par_interior Comment
hi def link txr_ign_bkt Comment
hi def link txr_ign_tok Comment
+hi def link txr_jkeyword Type
+hi def link txr_jnum Number
+hi def link txr_jstring String
+hi def link txr_jesc Special
+hi def link txr_juesc Special
+hi def link txr_jpunc Special
+hi def link txr_jerr Error
+
let b:current_syntax = "lisp"
-set lispwords=ado,alet,align,alignof,ap,append-each,append-each*,append-each-prod,append-each-prod*,append-match-products,append-matches,aret,array,arraysize,assert,awk,bit,block,block*,bool,buf,buf-d,build,buildn,carray,caseq,caseq*,caseql,caseql*,casequal,casequal*,catch,catch*,catch**,collect-each,collect-each*,collect-each-prod,collect-each-prod*,compare-swap,compile-only,cond,conda,condlet,cptr,dec,defex,deffi,deffi-cb,deffi-cb-unsafe,deffi-sym,deffi-type,deffi-var,define-accessor,define-modify-macro,define-option-struct,define-param-expander,define-place-macro,defmacro,defmatch,defmeth,defpackage,defparm,defparml,defplace,defset,defstruct,defsymacro,defun,defun-match,defvar,defvarl,del,delay,do,dohash,doloop,doloop*,dotimes,each,each*,each-match,each-match-product,each-prod,each-prod*,elemsize,elemtype,enum,enumed,equot,eval-only,ffi,flet,flip,for,for*,fun,gen,go,gun,handle,handle*,handler-bind,hlet,hlet*,ido,if,if-match,ifa,iflet,ignerr,ignwarn,in-package,ip,keep-match-products,keep-matches,labels,lambda,lambda-match,lcons,ldo,let,let*,lnew*,load-for,load-time,lop,lset,mac-env-param-bind,mac-param-bind,macro-time,macrolet,match-case,mlet,new*,obtain,obtain*,obtain*-block,obtain-block,offsetof,op,pdec,pinc,placelet,placelet*,pop,pprof,prof,prog,prog*,prog1,prog2,progn,ptr,ptr-in,ptr-in-d,ptr-out,ptr-out-d,ptr-out-s,push,pushnew,ret,return,return-from,rlet,rslot,sbit,sizeof,slet,splice,struct,suspend,symacrolet,sys:abscond-from,sys:awk-fun-let,sys:awk-mac-let,sys:awk-redir,sys:blk,sys:catch,sys:conv,sys:dlib-expr,sys:dvbind,sys:each-op,sys:expr,sys:fbind,sys:fixed-point,sys:for-op,sys:l1-val,sys:lbind,sys:lisp1-value,sys:load-time-lit,sys:path-examine,sys:placelet-1,sys:rewrite-case,sys:splice,sys:struct-lit,sys:switch,sys:txr-case-impl,sys:unquote,sys:upenv,sys:var,sys:when-exprs-match,tagbody,tb,tc,test-clear,test-dec,test-inc,test-set,trace,tree-bind,tree-case,txr-case,txr-if,txr-when,typecase,typedef,ubit,union,unless,unquote,until,until*,untrace,unwind-protect,upd,uref,when,when-match,whena,whenlet,while,while*,whilet,with-clobber-expander,with-compilation-unit,with-delete-expander,with-dyn-lib,with-gensyms,with-hash-iter,with-in-buf-stream,with-in-string-byte-stream,with-in-string-stream,with-objects,with-out-buf-stream,with-out-string-stream,with-out-strlist-stream,with-resources,with-slots,with-stream,with-update-expander,yield,yield-from,zap,zarray,znew,:method,:function,:init,:postinit,:fini
+set lispwords=ado,alet,align,alignof,ap,append-each,append-each*,append-each-prod,append-each-prod*,append-match-products,append-matches,aret,array,arraysize,assert,awk,bit,block,block*,bool,buf,buf-d,build,buildn,carray,caseq,caseq*,caseql,caseql*,casequal,casequal*,catch,catch*,catch**,collect-each,collect-each*,collect-each-prod,collect-each-prod*,compare-swap,compile-only,cond,conda,condlet,cptr,dec,defex,deffi,deffi-cb,deffi-cb-unsafe,deffi-sym,deffi-type,deffi-var,define-accessor,define-modify-macro,define-option-struct,define-param-expander,define-place-macro,defmacro,defmatch,defmeth,defpackage,defparm,defparml,defplace,defset,defstruct,defsymacro,defun,defun-match,defvar,defvarl,del,delay,do,dohash,doloop,doloop*,dotimes,each,each*,each-match,each-match-product,each-prod,each-prod*,elemsize,elemtype,enum,enumed,equot,eval-only,ffi,flet,flip,for,for*,fun,gen,go,gun,handle,handle*,handler-bind,hlet,hlet*,ido,if,if-match,ifa,iflet,ignerr,ignwarn,in-package,ip,json,keep-match-products,keep-matches,labels,lambda,lambda-match,lcons,ldo,let,let*,lnew*,load-for,load-time,lop,lset,mac-env-param-bind,mac-param-bind,macro-time,macrolet,match-case,mlet,new*,obtain,obtain*,obtain*-block,obtain-block,offsetof,op,pdec,pinc,placelet,placelet*,pop,pprof,prof,prog,prog*,prog1,prog2,progn,ptr,ptr-in,ptr-in-d,ptr-out,ptr-out-d,ptr-out-s,push,pushnew,ret,return,return-from,rlet,rslot,sbit,sizeof,slet,splice,struct,suspend,symacrolet,sys:abscond-from,sys:awk-fun-let,sys:awk-mac-let,sys:awk-redir,sys:blk,sys:catch,sys:conv,sys:dlib-expr,sys:dvbind,sys:each-op,sys:expr,sys:fbind,sys:fixed-point,sys:for-op,sys:l1-val,sys:lbind,sys:lisp1-value,sys:load-time-lit,sys:path-examine,sys:placelet-1,sys:rewrite-case,sys:splice,sys:struct-lit,sys:switch,sys:txr-case-impl,sys:unquote,sys:upenv,sys:var,sys:when-exprs-match,tagbody,tb,tc,test-clear,test-dec,test-inc,test-set,trace,tree-bind,tree-case,txr-case,txr-if,txr-when,typecase,typedef,ubit,union,unless,unquote,until,until*,untrace,unwind-protect,upd,uref,when,when-match,whena,whenlet,while,while*,whilet,with-clobber-expander,with-compilation-unit,with-delete-expander,with-dyn-lib,with-gensyms,with-hash-iter,with-in-buf-stream,with-in-string-byte-stream,with-in-string-stream,with-objects,with-out-buf-stream,with-out-string-stream,with-out-strlist-stream,with-resources,with-slots,with-stream,with-update-expander,yield,yield-from,zap,zarray,znew,:method,:function,:init,:postinit,:fini
set comments=:\;\;\;,:\;\;,:\;
diff --git a/txr.1 b/txr.1
index 4f1849f8..d4dd4317 100644
--- a/txr.1
+++ b/txr.1
@@ -430,9 +430,9 @@
.ds TX \f[B]TXR\f[]
.ds TL \f[B]TXR Lisp\f[]
.\" Start of man page:
-.TH TXR 1 2021-05-25 "Utility Commands" "TXR Programming Language" "Kaz Kylheku"
+.TH TXR 1 2021-06-01 "Utility Commands" "TXR Programming Language" "Kaz Kylheku"
.SH* NAME
-\*(TX \- Programming Language (Version 260)
+\*(TX \- Programming Language (Version 261)
.SH* SYNOPSIS
.mono
@@ -77867,7 +77867,12 @@ little endian.
A given \*(TX version may also be capable of loading files produced by
an older version, or even ones produced by a newer version. Whether this
-is possible depends on the versions involved.
+is possible depends on the versions involved. Furthermore,
+there is a general issue at play: code compiled by newer
+versions of \*(TX may require functions that are not present
+in older versions, preventing that code from running. Newer
+\*(TX may support new syntax not recognized by older \*(TX,
+and that syntax may end up in compiled files.
Compiled files contain a minor and major version number (which is independent
of the \*(TX version). The
@@ -77897,8 +77902,12 @@ version 2, 3, 4 or 5, regardless of minor version.
Versions 252 through 259 produce version 6.0 files and loads only version 6,
regardless of minor version.
-Version 260 produces version 7.0 files and loads version 6 and 7, regardless of
-minor version.
+Versions 260 and 261 produce version 7.0 files and loads
+version 6 and 7, regardless of minor version. Version 261
+introduces JSON
+.code #J
+syntax. Compiled code which contains embedded JSON literals
+is not loadable by \*(TX 260 or older.
.SS* Semantic Differences between Compilation and Interpretation
diff --git a/txr.vim b/txr.vim
index 142fc39f..c3c917ea 100644
--- a/txr.vim
+++ b/txr.vim
@@ -150,8 +150,9 @@ syn keyword tl_keyword contained clearhash clocal clock-t clockid-t
syn keyword tl_keyword contained close close-stream closedir closelog
syn keyword tl_keyword contained closure cmp-str cmspar coded-length
syn keyword tl_keyword contained collect-each collect-each* collect-each-prod collect-each-prod*
-syn keyword tl_keyword contained comb command-get command-get-buf command-get-lines
-syn keyword tl_keyword contained command-get-string command-put command-put-buf command-put-lines
+syn keyword tl_keyword contained comb command-get command-get-buf command-get-json
+syn keyword tl_keyword contained command-get-jsons command-get-lines command-get-string command-put
+syn keyword tl_keyword contained command-put-buf command-put-json command-put-jsons command-put-lines
syn keyword tl_keyword contained command-put-string compare-swap compile compile-defr-warning
syn keyword tl_keyword contained compile-error compile-file compile-only compile-toplevel
syn keyword tl_keyword contained compile-update-file compile-warning compl-span-str cond
@@ -233,38 +234,40 @@ syn keyword tl_keyword contained ffi-elemtype ffi-get ffi-in ffi-make-call-desc
syn keyword tl_keyword contained ffi-make-closure ffi-offsetof ffi-out ffi-put
syn keyword tl_keyword contained ffi-put-into ffi-size ffi-type-compile ffi-type-operator-p
syn keyword tl_keyword contained ffi-type-p ffi-typedef fifth file-append
-syn keyword tl_keyword contained file-append-buf file-append-lines file-append-string file-get
-syn keyword tl_keyword contained file-get-buf file-get-lines file-get-string file-place-buf
-syn keyword tl_keyword contained file-put file-put-buf file-put-lines file-put-string
-syn keyword tl_keyword contained fileno fill-buf fill-buf-adjust fill-carray
-syn keyword tl_keyword contained fill-obj filter-equal filter-string-tree finalize
-syn keyword tl_keyword contained find find-frame find-frames find-frames-by-mask
-syn keyword tl_keyword contained find-if find-max find-min find-package
-syn keyword tl_keyword contained find-struct-type find-symbol find-symbol-fb first
-syn keyword tl_keyword contained fixnum-max fixnum-min fixnump flatcar
-syn keyword tl_keyword contained flatcar* flatten flatten* flet
-syn keyword tl_keyword contained flip flipargs flo-dig flo-down
-syn keyword tl_keyword contained flo-epsilon flo-get-round-mode flo-int flo-max
-syn keyword tl_keyword contained flo-max-dig flo-min flo-near flo-set-round-mode
-syn keyword tl_keyword contained flo-str flo-up flo-zero float
-syn keyword tl_keyword contained floatp floor floor-rem flush-stream
-syn keyword tl_keyword contained flusho fmakunbound fmt fnm-casefold
-syn keyword tl_keyword contained fnm-extmatch fnm-leading-dir fnm-noescape fnm-pathname
-syn keyword tl_keyword contained fnm-period fnmatch for for*
-syn keyword tl_keyword contained force force-break fork format
-syn keyword tl_keyword contained fourth fr$ fr^ fr^$
-syn keyword tl_keyword contained from frr fsblkcnt-t fsfilcnt-t
-syn keyword tl_keyword contained fstat ftw ftw-actionretval ftw-chdir
-syn keyword tl_keyword contained ftw-continue ftw-d ftw-depth ftw-dnr
-syn keyword tl_keyword contained ftw-dp ftw-f ftw-mount ftw-ns
-syn keyword tl_keyword contained ftw-phys ftw-skip-siblings ftw-skip-subtree ftw-sl
-syn keyword tl_keyword contained ftw-sln ftw-stop fun fun-fixparam-count
-syn keyword tl_keyword contained fun-optparam-count fun-variadic func-get-env func-get-form
-syn keyword tl_keyword contained func-get-name func-set-env functionp gcd
-syn keyword tl_keyword contained gen gen-hash-seed generate gensym
-syn keyword tl_keyword contained gequal get-buf-from-stream get-byte get-char
-syn keyword tl_keyword contained get-clobber-expander get-delete-expander get-error get-error-str
-syn keyword tl_keyword contained get-frames get-hash-userdata get-indent get-indent-mode
+syn keyword tl_keyword contained file-append-buf file-append-json file-append-jsons file-append-lines
+syn keyword tl_keyword contained file-append-string file-get file-get-buf file-get-json
+syn keyword tl_keyword contained file-get-jsons file-get-lines file-get-string file-place-buf
+syn keyword tl_keyword contained file-put file-put-buf file-put-json file-put-jsons
+syn keyword tl_keyword contained file-put-lines file-put-string fileno fill-buf
+syn keyword tl_keyword contained fill-buf-adjust fill-carray fill-obj filter-equal
+syn keyword tl_keyword contained filter-string-tree finalize find find-frame
+syn keyword tl_keyword contained find-frames find-frames-by-mask find-if find-max
+syn keyword tl_keyword contained find-min find-package find-struct-type find-symbol
+syn keyword tl_keyword contained find-symbol-fb first fixnum-max fixnum-min
+syn keyword tl_keyword contained fixnump flatcar flatcar* flatten
+syn keyword tl_keyword contained flatten* flet flip flipargs
+syn keyword tl_keyword contained flo-dig flo-down flo-epsilon flo-get-round-mode
+syn keyword tl_keyword contained flo-int flo-max flo-max-dig flo-min
+syn keyword tl_keyword contained flo-near flo-set-round-mode flo-str flo-up
+syn keyword tl_keyword contained flo-zero float floatp floor
+syn keyword tl_keyword contained floor-rem flush-stream flusho fmakunbound
+syn keyword tl_keyword contained fmt fnm-casefold fnm-extmatch fnm-leading-dir
+syn keyword tl_keyword contained fnm-noescape fnm-pathname fnm-period fnmatch
+syn keyword tl_keyword contained for for* force force-break
+syn keyword tl_keyword contained fork format fourth fr$
+syn keyword tl_keyword contained fr^ fr^$ from frr
+syn keyword tl_keyword contained fsblkcnt-t fsfilcnt-t fstat ftw
+syn keyword tl_keyword contained ftw-actionretval ftw-chdir ftw-continue ftw-d
+syn keyword tl_keyword contained ftw-depth ftw-dnr ftw-dp ftw-f
+syn keyword tl_keyword contained ftw-mount ftw-ns ftw-phys ftw-skip-siblings
+syn keyword tl_keyword contained ftw-skip-subtree ftw-sl ftw-sln ftw-stop
+syn keyword tl_keyword contained fun fun-fixparam-count fun-optparam-count fun-variadic
+syn keyword tl_keyword contained func-get-env func-get-form func-get-name func-set-env
+syn keyword tl_keyword contained functionp gcd gen gen-hash-seed
+syn keyword tl_keyword contained generate gensym gequal get-buf-from-stream
+syn keyword tl_keyword contained get-byte get-char get-clobber-expander get-delete-expander
+syn keyword tl_keyword contained get-error get-error-str get-frames get-hash-userdata
+syn keyword tl_keyword contained get-indent get-indent-mode get-json get-jsons
syn keyword tl_keyword contained get-line get-line-as-buf get-lines get-list-from-stream
syn keyword tl_keyword contained get-obj get-sig-handler get-string get-string-from-stream
syn keyword tl_keyword contained get-update-expander getaddrinfo getegid getenv
@@ -308,83 +311,84 @@ syn keyword tl_keyword contained isig isqrt istrip iter-begin
syn keyword tl_keyword contained iter-item iter-more iter-reset iter-step
syn keyword tl_keyword contained iterable itimer-prov itimer-real itimer-virtual
syn keyword tl_keyword contained iuclc iutf8 ixany ixoff
-syn keyword tl_keyword contained ixon join join-with juxt
-syn keyword tl_keyword contained keep-if keep-if* keep-match-products keep-matches
-syn keyword tl_keyword contained keepq keepql keepqual key
-syn keyword tl_keyword contained key-t keyword-package keywordp kill
-syn keyword tl_keyword contained labels lambda lambda-match last
-syn keyword tl_keyword contained lazy-str lazy-str-force lazy-str-force-upto lazy-str-get-trailing-list
-syn keyword tl_keyword contained lazy-stream-cons lazy-stringp lchown lcm
-syn keyword tl_keyword contained lcons lcons-car lcons-cdr lcons-fun
-syn keyword tl_keyword contained lconsp ldiff ldo le-double
-syn keyword tl_keyword contained le-float le-int16 le-int32 le-int64
-syn keyword tl_keyword contained le-uint16 le-uint32 le-uint64 left
-syn keyword tl_keyword contained len length length-buf length-carray
-syn keyword tl_keyword contained length-list length-str length-str-< length-str-<=
-syn keyword tl_keyword contained length-str-> length-str->= length-vec lequal
-syn keyword tl_keyword contained less let let* lexical-fun-p
-syn keyword tl_keyword contained lexical-lisp1-binding lexical-var-p lib-version link
-syn keyword tl_keyword contained lisp-parse list list* list-carray
-syn keyword tl_keyword contained list-seq list-str list-vec list-vector
-syn keyword tl_keyword contained listp lnew lnew* load
-syn keyword tl_keyword contained load-for load-time loff-t log
-syn keyword tl_keyword contained log-alert log-auth log-authpriv log-cons
-syn keyword tl_keyword contained log-crit log-daemon log-debug log-emerg
-syn keyword tl_keyword contained log-err log-info log-ndelay log-notice
-syn keyword tl_keyword contained log-nowait log-odelay log-perror log-pid
-syn keyword tl_keyword contained log-user log-warning log10 log2
-syn keyword tl_keyword contained logand logcount logior lognot
-syn keyword tl_keyword contained logtest logtrunc logxor long
-syn keyword tl_keyword contained longlong lop lset lstat
-syn keyword tl_keyword contained lutimes m$ m^ m^$
-syn keyword tl_keyword contained mac-env-param-bind mac-param-bind macro-ancestor macro-form-p
-syn keyword tl_keyword contained macro-time macroexpand macroexpand-1 macroexpand-1-lisp1
-syn keyword tl_keyword contained macroexpand-lisp1 macrolet major make-buf
-syn keyword tl_keyword contained make-buf-stream make-byte-input-stream make-catenated-stream make-env
-syn keyword tl_keyword contained make-hash make-lazy-cons make-lazy-struct make-like
-syn keyword tl_keyword contained make-package make-random-state make-similar-hash make-similar-tree
-syn keyword tl_keyword contained make-string-byte-input-stream make-string-input-stream make-string-output-stream make-strlist-input-stream
-syn keyword tl_keyword contained make-strlist-output-stream make-struct make-struct-delegate-stream make-struct-type
-syn keyword tl_keyword contained make-sym make-time make-time-utc make-trie
-syn keyword tl_keyword contained make-union make-zstruct makedev makunbound
-syn keyword tl_keyword contained mapcar mapcar* mapdo mapf
-syn keyword tl_keyword contained maphash mappend mappend* maprend
-syn keyword tl_keyword contained maprod maprodo mask match-case
-syn keyword tl_keyword contained match-fun match-regex match-regex-right match-regst
-syn keyword tl_keyword contained match-regst-right match-str match-str-tree max
-syn keyword tl_keyword contained mboundp md5 md5-begin md5-end
-syn keyword tl_keyword contained md5-hash md5-stream member member-if
-syn keyword tl_keyword contained memp memq memql memqual
-syn keyword tl_keyword contained meq meql mequal merge
-syn keyword tl_keyword contained merge-delete-package meth method min
-syn keyword tl_keyword contained minor minusp mismatch mkdir
-syn keyword tl_keyword contained mkfifo mknod mkstring mlet
-syn keyword tl_keyword contained mmakunbound mod mode-t multi
-syn keyword tl_keyword contained multi-sort n-choose-k n-perm-k nconc
-syn keyword tl_keyword contained neg neq neql nequal
-syn keyword tl_keyword contained new new* nexpand-left nil
-syn keyword tl_keyword contained nilf ninth nl0 nl1
-syn keyword tl_keyword contained nldly nlink-t noflsh none
-syn keyword tl_keyword contained not notf nreconc nreverse
-syn keyword tl_keyword contained nshuffle nsort nth nthcdr
-syn keyword tl_keyword contained nthlast null nullify num-chr
-syn keyword tl_keyword contained num-str numberp nzerop o-accmode
-syn keyword tl_keyword contained o-append o-async o-cloexec o-creat
-syn keyword tl_keyword contained o-direct o-directory o-noatime o-noctty
-syn keyword tl_keyword contained o-nofollow o-nonblock o-path o-rdonly
-syn keyword tl_keyword contained o-rdwr o-sync o-trunc o-wronly
-syn keyword tl_keyword contained oand obtain obtain* obtain*-block
-syn keyword tl_keyword contained obtain-block ocrnl oddp ofdel
-syn keyword tl_keyword contained off-t offsetof ofill olcuc
-syn keyword tl_keyword contained onlcr onlret onocr op
-syn keyword tl_keyword contained open-command open-directory open-file open-fileno
-syn keyword tl_keyword contained open-files open-files* open-pipe open-process
-syn keyword tl_keyword contained open-socket open-socket-pair open-subprocess open-tail
-syn keyword tl_keyword contained opendir openlog opip opost
-syn keyword tl_keyword contained opt opthelp or orf
-syn keyword tl_keyword contained package-alist package-fallback-list package-foreign-symbols package-local-symbols
-syn keyword tl_keyword contained package-name package-symbols packagep pad
-syn keyword tl_keyword contained parenb parmrk parodd partition
+syn keyword tl_keyword contained ixon join join-with json
+syn keyword tl_keyword contained juxt keep-if keep-if* keep-match-products
+syn keyword tl_keyword contained keep-matches keepq keepql keepqual
+syn keyword tl_keyword contained key key-t keyword-package keywordp
+syn keyword tl_keyword contained kill labels lambda lambda-match
+syn keyword tl_keyword contained last lazy-str lazy-str-force lazy-str-force-upto
+syn keyword tl_keyword contained lazy-str-get-trailing-list lazy-stream-cons lazy-stringp lchown
+syn keyword tl_keyword contained lcm lcons lcons-car lcons-cdr
+syn keyword tl_keyword contained lcons-fun lconsp ldiff ldo
+syn keyword tl_keyword contained le-double le-float le-int16 le-int32
+syn keyword tl_keyword contained le-int64 le-uint16 le-uint32 le-uint64
+syn keyword tl_keyword contained left len length length-buf
+syn keyword tl_keyword contained length-carray length-list length-str length-str-<
+syn keyword tl_keyword contained length-str-<= length-str-> length-str->= length-vec
+syn keyword tl_keyword contained lequal less let let*
+syn keyword tl_keyword contained lexical-fun-p lexical-lisp1-binding lexical-var-p lib-version
+syn keyword tl_keyword contained link lisp-parse list list*
+syn keyword tl_keyword contained list-carray list-seq list-str list-vec
+syn keyword tl_keyword contained list-vector listp lnew lnew*
+syn keyword tl_keyword contained load load-for load-time loff-t
+syn keyword tl_keyword contained log log-alert log-auth log-authpriv
+syn keyword tl_keyword contained log-cons log-crit log-daemon log-debug
+syn keyword tl_keyword contained log-emerg log-err log-info log-ndelay
+syn keyword tl_keyword contained log-notice log-nowait log-odelay log-perror
+syn keyword tl_keyword contained log-pid log-user log-warning log10
+syn keyword tl_keyword contained log2 logand logcount logior
+syn keyword tl_keyword contained lognot logtest logtrunc logxor
+syn keyword tl_keyword contained long longlong lop lset
+syn keyword tl_keyword contained lstat lutimes m$ m^
+syn keyword tl_keyword contained m^$ mac-env-param-bind mac-param-bind macro-ancestor
+syn keyword tl_keyword contained macro-form-p macro-time macroexpand macroexpand-1
+syn keyword tl_keyword contained macroexpand-1-lisp1 macroexpand-lisp1 macrolet major
+syn keyword tl_keyword contained make-buf make-buf-stream make-byte-input-stream make-catenated-stream
+syn keyword tl_keyword contained make-env make-hash make-lazy-cons make-lazy-struct
+syn keyword tl_keyword contained make-like make-package make-random-state make-similar-hash
+syn keyword tl_keyword contained make-similar-tree make-string-byte-input-stream make-string-input-stream make-string-output-stream
+syn keyword tl_keyword contained make-strlist-input-stream make-strlist-output-stream make-struct make-struct-delegate-stream
+syn keyword tl_keyword contained make-struct-type make-sym make-time make-time-utc
+syn keyword tl_keyword contained make-trie make-union make-zstruct makedev
+syn keyword tl_keyword contained makunbound mapcar mapcar* mapdo
+syn keyword tl_keyword contained mapf maphash mappend mappend*
+syn keyword tl_keyword contained maprend maprod maprodo mask
+syn keyword tl_keyword contained match-case match-fun match-regex match-regex-right
+syn keyword tl_keyword contained match-regst match-regst-right match-str match-str-tree
+syn keyword tl_keyword contained max mboundp md5 md5-begin
+syn keyword tl_keyword contained md5-end md5-hash md5-stream member
+syn keyword tl_keyword contained member-if memp memq memql
+syn keyword tl_keyword contained memqual meq meql mequal
+syn keyword tl_keyword contained merge merge-delete-package meth method
+syn keyword tl_keyword contained min minor minusp mismatch
+syn keyword tl_keyword contained mkdir mkdtemp mkfifo mknod
+syn keyword tl_keyword contained mkstemp mkstring mlet mmakunbound
+syn keyword tl_keyword contained mod mode-t multi multi-sort
+syn keyword tl_keyword contained n-choose-k n-perm-k nconc neg
+syn keyword tl_keyword contained neq neql nequal new
+syn keyword tl_keyword contained new* nexpand-left nil nilf
+syn keyword tl_keyword contained ninth nl0 nl1 nldly
+syn keyword tl_keyword contained nlink-t noflsh none not
+syn keyword tl_keyword contained notf nreconc nreverse nshuffle
+syn keyword tl_keyword contained nsort nth nthcdr nthlast
+syn keyword tl_keyword contained null nullify num-chr num-str
+syn keyword tl_keyword contained numberp nzerop o-accmode o-append
+syn keyword tl_keyword contained o-async o-cloexec o-creat o-direct
+syn keyword tl_keyword contained o-directory o-noatime o-noctty o-nofollow
+syn keyword tl_keyword contained o-nonblock o-path o-rdonly o-rdwr
+syn keyword tl_keyword contained o-sync o-trunc o-wronly oand
+syn keyword tl_keyword contained obtain obtain* obtain*-block obtain-block
+syn keyword tl_keyword contained ocrnl oddp ofdel off-t
+syn keyword tl_keyword contained offsetof ofill olcuc onlcr
+syn keyword tl_keyword contained onlret onocr op open-command
+syn keyword tl_keyword contained open-directory open-file open-fileno open-files
+syn keyword tl_keyword contained open-files* open-pipe open-process open-socket
+syn keyword tl_keyword contained open-socket-pair open-subprocess open-tail opendir
+syn keyword tl_keyword contained openlog opip opost opt
+syn keyword tl_keyword contained opthelp or orf package-alist
+syn keyword tl_keyword contained package-fallback-list package-foreign-symbols package-local-symbols package-name
+syn keyword tl_keyword contained package-symbols packagep pad parenb
+syn keyword tl_keyword contained parmrk parodd parse-errors partition
syn keyword tl_keyword contained partition* partition-by path-blkdev-p path-cat
syn keyword tl_keyword contained path-chrdev-p path-dir-empty path-dir-p path-executable-to-me-p
syn keyword tl_keyword contained path-exists-p path-file-p path-mine-p path-my-group-p
@@ -408,158 +412,158 @@ syn keyword tl_keyword contained pset ptr ptr-in ptr-in-d
syn keyword tl_keyword contained ptr-out ptr-out-d ptr-out-s ptrdiff-t
syn keyword tl_keyword contained pub:txr-sym pure-rel-path-p purge-deferred-warning push
syn keyword tl_keyword contained pushhash pushnew put-buf put-byte
-syn keyword tl_keyword contained put-carray put-char put-line put-lines
-syn keyword tl_keyword contained put-obj put-string put-strings pwd
-syn keyword tl_keyword contained qquote qref quip quote
-syn keyword tl_keyword contained r$ r^ r^$ raise
-syn keyword tl_keyword contained rand random random-fixnum random-float
-syn keyword tl_keyword contained random-state-get-vec random-state-p range range*
-syn keyword tl_keyword contained range-regex rangep rassoc rassq
-syn keyword tl_keyword contained rassql rcomb rcons read
-syn keyword tl_keyword contained read-until-match readdir readlink real-time-stream-p
-syn keyword tl_keyword contained realpath record-adapter reduce-left reduce-right
-syn keyword tl_keyword contained ref refset regex-compile regex-from-trie
-syn keyword tl_keyword contained regex-parse regex-prefix-match regex-source regexp
-syn keyword tl_keyword contained register-exception-subtypes register-tentative-def regsub rehome-sym
-syn keyword tl_keyword contained reject rel-path relate release-deferred-warnings
-syn keyword tl_keyword contained remhash remove-if remove-if* remove-path
-syn keyword tl_keyword contained remove-path-rec remq remq* remql
-syn keyword tl_keyword contained remql* remqual remqual* rename-path
-syn keyword tl_keyword contained repeat replace replace-buf replace-list
-syn keyword tl_keyword contained replace-str replace-struct replace-tree-iter replace-vec
-syn keyword tl_keyword contained reset-struct rest ret retf
-syn keyword tl_keyword contained return return* return-from revappend
-syn keyword tl_keyword contained reverse rfind rfind-if right
-syn keyword tl_keyword contained rlcp rlcp-tree rlet rlist
-syn keyword tl_keyword contained rlist* rmdir rmember rmember-if
-syn keyword tl_keyword contained rmemq rmemql rmemqual rmismatch
-syn keyword tl_keyword contained rotate round round-rem rperm
-syn keyword tl_keyword contained rplaca rplacd rpoly rpos
-syn keyword tl_keyword contained rpos-if rposq rposql rposqual
-syn keyword tl_keyword contained rr rra rsearch rslot
-syn keyword tl_keyword contained rtld-deepbind rtld-global rtld-lazy rtld-local
-syn keyword tl_keyword contained rtld-nodelete rtld-noload rtld-now run
-syn keyword tl_keyword contained s-ifblk s-ifchr s-ifdir s-ififo
-syn keyword tl_keyword contained s-iflnk s-ifmt s-ifreg s-ifsock
-syn keyword tl_keyword contained s-irgrp s-iroth s-irusr s-irwxg
-syn keyword tl_keyword contained s-irwxo s-irwxu s-isgid s-isuid
-syn keyword tl_keyword contained s-isvtx s-iwgrp s-iwoth s-iwusr
-syn keyword tl_keyword contained s-ixgrp s-ixoth s-ixusr save-exe
-syn keyword tl_keyword contained sbit scan-until-match search search-regex
-syn keyword tl_keyword contained search-regst search-str search-str-tree second
-syn keyword tl_keyword contained seek-cur seek-end seek-set seek-stream
-syn keyword tl_keyword contained select self-load-path self-path seq-begin
-syn keyword tl_keyword contained seq-next seq-reset seqp set
-syn keyword tl_keyword contained set-diff set-hash-userdata set-indent set-indent-mode
-syn keyword tl_keyword contained set-key set-left set-max-depth set-max-length
-syn keyword tl_keyword contained set-package-fallback-list set-right set-sig-handler setegid
-syn keyword tl_keyword contained setenv seteuid setgid setgrent
-syn keyword tl_keyword contained setgroups sethash setitimer setlogmask
-syn keyword tl_keyword contained setpwent setresgid setresuid setuid
-syn keyword tl_keyword contained seventh sh sha256 sha256-begin
-syn keyword tl_keyword contained sha256-end sha256-hash sha256-stream shift
-syn keyword tl_keyword contained short shuffle shut-rd shut-rdwr
-syn keyword tl_keyword contained shut-wr sig-abrt sig-alrm sig-atomic-t
-syn keyword tl_keyword contained sig-bus sig-check sig-chld sig-cont
-syn keyword tl_keyword contained sig-fpe sig-hup sig-ill sig-int
-syn keyword tl_keyword contained sig-io sig-iot sig-kill sig-pipe
-syn keyword tl_keyword contained sig-poll sig-prof sig-pwr sig-quit
-syn keyword tl_keyword contained sig-segv sig-stkflt sig-stop sig-sys
-syn keyword tl_keyword contained sig-term sig-trap sig-tstp sig-ttin
-syn keyword tl_keyword contained sig-ttou sig-urg sig-usr1 sig-usr2
-syn keyword tl_keyword contained sig-vtalrm sig-winch sig-xcpu sig-xfsz
-syn keyword tl_keyword contained sign-extend signum sin sinh
-syn keyword tl_keyword contained sixth size-t size-vec sizeof
-syn keyword tl_keyword contained slet slot slotp slots
-syn keyword tl_keyword contained slotset sock-accept sock-bind sock-cloexec
-syn keyword tl_keyword contained sock-connect sock-dgram sock-family sock-listen
-syn keyword tl_keyword contained sock-nonblock sock-peer sock-recv-timeout sock-send-timeout
-syn keyword tl_keyword contained sock-set-peer sock-shutdown sock-stream sock-type
-syn keyword tl_keyword contained some sort sort-group source-loc
-syn keyword tl_keyword contained source-loc-str span-str special-operator-p special-var-p
-syn keyword tl_keyword contained spl splice split split*
-syn keyword tl_keyword contained split-str split-str-set sqrt square
-syn keyword tl_keyword contained ssize-t sspl sssucc ssucc
-syn keyword tl_keyword contained starts-with stat static-slot static-slot-ensure
-syn keyword tl_keyword contained static-slot-home static-slot-p static-slot-set stdlib
-syn keyword tl_keyword contained str str-buf str-d str-in6addr
-syn keyword tl_keyword contained str-in6addr-net str-inaddr str-inaddr-net str-seq
-syn keyword tl_keyword contained str< str<= str= str>
-syn keyword tl_keyword contained str>= stream-get-prop stream-set-prop streamp
-syn keyword tl_keyword contained strerror string-extend string-lt stringp
-syn keyword tl_keyword contained strsignal struct struct-from-args struct-from-plist
-syn keyword tl_keyword contained struct-get-initfun struct-get-postinitfun struct-set-initfun struct-set-postinitfun
-syn keyword tl_keyword contained struct-type struct-type-name struct-type-p structp
-syn keyword tl_keyword contained sub sub-buf sub-list sub-str
-syn keyword tl_keyword contained sub-tree sub-vec subtypep succ
-syn keyword tl_keyword contained sum super super-method suspend
-syn keyword tl_keyword contained swap symacrolet symbol-function symbol-macro
-syn keyword tl_keyword contained symbol-name symbol-package symbol-value symbolp
-syn keyword tl_keyword contained symdiff symlink sys:%backpatch-high16% sys:%backpatch-low16%
-syn keyword tl_keyword contained sys:%big-endian% sys:%bin-op% sys:%bin-ops% sys:%block-using-funs%
-syn keyword tl_keyword contained sys:%call-op% sys:%const-foldable% sys:%const-foldable-funs% sys:%dbg-command-env%
-syn keyword tl_keyword contained sys:%effect-free% sys:%effect-free-funs% sys:%file-suff-rx% sys:%functional%
-syn keyword tl_keyword contained sys:%functional-funs% sys:%gcall-op% sys:%lev-bits% sys:%lev-size%
-syn keyword tl_keyword contained sys:%max-lambda-fixed-args% sys:%max-lev% sys:%max-lev-idx% sys:%max-sm-lev%
-syn keyword tl_keyword contained sys:%max-sm-lev-idx% sys:%max-v-lev% sys:%nary-ops% sys:%oc-code%
-syn keyword tl_keyword contained sys:%oc-hash% sys:%oc-list-builder% sys:%package-manip% sys:%param-info%
-syn keyword tl_keyword contained sys:%quip-rand-state% sys:%quips% sys:%shuffled-quips% sys:%sm-lev-bits%
-syn keyword tl_keyword contained sys:%sm-lev-size% sys:%test-funs% sys:%test-funs-neg% sys:%test-funs-ops%
-syn keyword tl_keyword contained sys:%test-funs-pos% sys:%test-inv% sys:%test-opcode% sys:%tlo-ver%
-syn keyword tl_keyword contained sys:*dedup* sys:*emit* sys:*eval* sys:*in-compilation-unit*
-syn keyword tl_keyword contained sys:*load-recursive* sys:*load-time* sys:*match-form* sys:*op-ctx*
-syn keyword tl_keyword contained sys:*pl-env* sys:*pl-form* sys:*trace-hash* sys:*trace-level*
-syn keyword tl_keyword contained sys:*unchecked-calls* sys:abscond* sys:abscond-from sys:analyze-argtypes
-syn keyword tl_keyword contained sys:analyze-params sys:apply sys:asm-error sys:assumed-fun
-syn keyword tl_keyword contained sys:awk%--rng sys:awk%--rng+ sys:awk%--rng- sys:awk%-rng+
-syn keyword tl_keyword contained sys:awk%rng+ sys:awk-code-move-check sys:awk-error sys:awk-expander
-syn keyword tl_keyword contained sys:awk-fun-let sys:awk-fun-shadowing-env sys:awk-mac-let sys:awk-redir
-syn keyword tl_keyword contained sys:awk-test sys:b* sys:b+ sys:b-
-syn keyword tl_keyword contained sys:b/ sys:b< sys:b<= sys:b=
-syn keyword tl_keyword contained sys:b=> sys:b> sys:bad-slot-syntax sys:bind-mac-check
-syn keyword tl_keyword contained sys:bind-mac-error sys:bindable-check sys:bits sys:bits-to-obj
-syn keyword tl_keyword contained sys:blk sys:build-expander sys:build-key-list-expr sys:capture-cont
-syn keyword tl_keyword contained sys:catch sys:check sys:check-end sys:check-slot
-syn keyword tl_keyword contained sys:check-struct sys:check-sym sys:circref sys:compat
-syn keyword tl_keyword contained sys:compile-and-match sys:compile-as-match sys:compile-atom-match sys:compile-cons-structure
-syn keyword tl_keyword contained sys:compile-exprs-match sys:compile-file-conditionally sys:compile-hash-match sys:compile-loop-match
-syn keyword tl_keyword contained sys:compile-match sys:compile-new-var-match sys:compile-not-match sys:compile-or-match
-syn keyword tl_keyword contained sys:compile-predicate-match sys:compile-range-match sys:compile-require-match sys:compile-scan-match
-syn keyword tl_keyword contained sys:compile-struct-match sys:compile-var-match sys:compile-vec-match sys:compile-with-match
-syn keyword tl_keyword contained sys:compiler-emit-warnings sys:conv sys:conv-expand sys:conv-let
-syn keyword tl_keyword contained sys:ctx-form sys:ctx-name sys:dbg-all sys:dbg-backtrace
-syn keyword tl_keyword contained sys:dbg-clear sys:dbg-enable sys:dbg-restore sys:dbg-set
-syn keyword tl_keyword contained sys:dbg-step sys:debugger sys:dedup sys:dedup-labels
-syn keyword tl_keyword contained sys:deffi-cb-expander sys:define-method sys:defset-expander sys:defset-expander-simple
-syn keyword tl_keyword contained sys:dig sys:disassemble-cdf sys:dlib-expr sys:do-conv
-syn keyword tl_keyword contained sys:do-copy-obj sys:do-path-test sys:do-tweak-obj sys:doc-syms
-syn keyword tl_keyword contained sys:dump-to-tlo sys:dvbind sys:dwim-del sys:dwim-set
-syn keyword tl_keyword contained sys:dyn-size sys:each-match-expander sys:each-op sys:early-peephole
-syn keyword tl_keyword contained sys:enc-small-op sys:ensure-op-arg sys:env-to-let sys:eq-comparable
-syn keyword tl_keyword contained sys:eql-comparable sys:eval-err sys:expand-and sys:expand-bind-mac-params
-syn keyword tl_keyword contained sys:expand-defmacro sys:expand-defsymacro sys:expand-defun sys:expand-defvarl
-syn keyword tl_keyword contained sys:expand-dohash sys:expand-doloop sys:expand-each sys:expand-each-prod
-syn keyword tl_keyword contained sys:expand-each-prod* sys:expand-handle sys:expand-lambda-match sys:expand-params
-syn keyword tl_keyword contained sys:expand-quasi sys:expand-quasi-args sys:expand-quasi-match sys:expand-quasi-mods
-syn keyword tl_keyword contained sys:expand-sym-ref sys:expr sys:extract-keys sys:extract-keys-p
-syn keyword tl_keyword contained sys:fbind sys:fixed-point sys:flatten-or sys:fmt-flex
-syn keyword tl_keyword contained sys:fmt-join sys:fmt-simple sys:for-op sys:gc
-syn keyword tl_keyword contained sys:gc-set-delta sys:get-buf-common sys:get-fun-getter-setter sys:get-mb
-syn keyword tl_keyword contained sys:get-param-info sys:get-parser sys:get-place-macro sys:get-var-list
-syn keyword tl_keyword contained sys:get-vars sys:get-vb sys:getopts-error sys:handle-bad-syntax
-syn keyword tl_keyword contained sys:hlet-expand sys:if-to-cond sys:in6addr-condensed-text sys:is-label
-syn keyword tl_keyword contained sys:l1-setq sys:l1-val sys:lambda-apply-transform sys:lambda-short-apply-list
-syn keyword tl_keyword contained sys:lambda-too-few-args sys:lambda-too-many-args sys:lbind sys:lisp1-setq
-syn keyword tl_keyword contained sys:lisp1-value sys:list-builder-flets sys:list-from-vm-desc sys:load-time-lit
-syn keyword tl_keyword contained sys:loc sys:loosen sys:mac-env-flatten sys:make-anon-package
-syn keyword tl_keyword contained sys:make-copy-path-opts sys:make-struct-lit sys:make-struct-type sys:mark-special
-syn keyword tl_keyword contained sys:misleading-ref-check sys:name-str sys:new-expander sys:new-type
-syn keyword tl_keyword contained sys:non-triv-pat-p sys:null-reg sys:obtain-impl sys:op-alpha-rename
-syn keyword tl_keyword contained sys:op-ensure-rec sys:op-expand sys:op-meta-p sys:op-rec-p
-syn keyword tl_keyword contained sys:open-compile-streams sys:open-url sys:operand-to-exp sys:operand-to-sym
-syn keyword tl_keyword contained sys:opip-expand sys:opt-dash sys:opt-err sys:os-symbol
-syn keyword tl_keyword contained sys:param-check sys:parse-compound-operand sys:parse-lambda-match-clause sys:parse-operand
-syn keyword tl_keyword contained sys:parser-eof sys:parser-errors sys:pat-len sys:path-access
+syn keyword tl_keyword contained put-carray put-char put-json put-jsonl
+syn keyword tl_keyword contained put-jsons put-line put-lines put-obj
+syn keyword tl_keyword contained put-string put-strings pwd qquote
+syn keyword tl_keyword contained qref quip quote r$
+syn keyword tl_keyword contained r^ r^$ raise rand
+syn keyword tl_keyword contained random random-fixnum random-float random-state-get-vec
+syn keyword tl_keyword contained random-state-p range range* range-regex
+syn keyword tl_keyword contained rangep rassoc rassq rassql
+syn keyword tl_keyword contained rcomb rcons read read-until-match
+syn keyword tl_keyword contained readdir readlink real-time-stream-p realpath
+syn keyword tl_keyword contained record-adapter reduce-left reduce-right ref
+syn keyword tl_keyword contained refset regex-compile regex-from-trie regex-parse
+syn keyword tl_keyword contained regex-prefix-match regex-source regexp register-exception-subtypes
+syn keyword tl_keyword contained register-tentative-def regsub rehome-sym reject
+syn keyword tl_keyword contained rel-path relate release-deferred-warnings remhash
+syn keyword tl_keyword contained remove-if remove-if* remove-path remove-path-rec
+syn keyword tl_keyword contained remq remq* remql remql*
+syn keyword tl_keyword contained remqual remqual* rename-path repeat
+syn keyword tl_keyword contained replace replace-buf replace-list replace-str
+syn keyword tl_keyword contained replace-struct replace-tree-iter replace-vec reset-struct
+syn keyword tl_keyword contained rest ret retf return
+syn keyword tl_keyword contained return* return-from revappend reverse
+syn keyword tl_keyword contained rfind rfind-if right rlcp
+syn keyword tl_keyword contained rlcp-tree rlet rlist rlist*
+syn keyword tl_keyword contained rmdir rmember rmember-if rmemq
+syn keyword tl_keyword contained rmemql rmemqual rmismatch rotate
+syn keyword tl_keyword contained round round-rem rperm rplaca
+syn keyword tl_keyword contained rplacd rpoly rpos rpos-if
+syn keyword tl_keyword contained rposq rposql rposqual rr
+syn keyword tl_keyword contained rra rsearch rslot rtld-deepbind
+syn keyword tl_keyword contained rtld-global rtld-lazy rtld-local rtld-nodelete
+syn keyword tl_keyword contained rtld-noload rtld-now run s-ifblk
+syn keyword tl_keyword contained s-ifchr s-ifdir s-ififo s-iflnk
+syn keyword tl_keyword contained s-ifmt s-ifreg s-ifsock s-irgrp
+syn keyword tl_keyword contained s-iroth s-irusr s-irwxg s-irwxo
+syn keyword tl_keyword contained s-irwxu s-isgid s-isuid s-isvtx
+syn keyword tl_keyword contained s-iwgrp s-iwoth s-iwusr s-ixgrp
+syn keyword tl_keyword contained s-ixoth s-ixusr save-exe sbit
+syn keyword tl_keyword contained scan-until-match search search-regex search-regst
+syn keyword tl_keyword contained search-str search-str-tree second seek-cur
+syn keyword tl_keyword contained seek-end seek-set seek-stream select
+syn keyword tl_keyword contained self-load-path self-path seq-begin seq-next
+syn keyword tl_keyword contained seq-reset seqp set set-diff
+syn keyword tl_keyword contained set-hash-userdata set-indent set-indent-mode set-key
+syn keyword tl_keyword contained set-left set-max-depth set-max-length set-package-fallback-list
+syn keyword tl_keyword contained set-right set-sig-handler setegid setenv
+syn keyword tl_keyword contained seteuid setgid setgrent setgroups
+syn keyword tl_keyword contained sethash setitimer setlogmask setpwent
+syn keyword tl_keyword contained setresgid setresuid setuid seventh
+syn keyword tl_keyword contained sh sha256 sha256-begin sha256-end
+syn keyword tl_keyword contained sha256-hash sha256-stream shift short
+syn keyword tl_keyword contained shuffle shut-rd shut-rdwr shut-wr
+syn keyword tl_keyword contained sig-abrt sig-alrm sig-atomic-t sig-bus
+syn keyword tl_keyword contained sig-check sig-chld sig-cont sig-fpe
+syn keyword tl_keyword contained sig-hup sig-ill sig-int sig-io
+syn keyword tl_keyword contained sig-iot sig-kill sig-pipe sig-poll
+syn keyword tl_keyword contained sig-prof sig-pwr sig-quit sig-segv
+syn keyword tl_keyword contained sig-stkflt sig-stop sig-sys sig-term
+syn keyword tl_keyword contained sig-trap sig-tstp sig-ttin sig-ttou
+syn keyword tl_keyword contained sig-urg sig-usr1 sig-usr2 sig-vtalrm
+syn keyword tl_keyword contained sig-winch sig-xcpu sig-xfsz sign-extend
+syn keyword tl_keyword contained signum sin sinh sixth
+syn keyword tl_keyword contained size-t size-vec sizeof slet
+syn keyword tl_keyword contained slot slotp slots slotset
+syn keyword tl_keyword contained sock-accept sock-bind sock-cloexec sock-connect
+syn keyword tl_keyword contained sock-dgram sock-family sock-listen sock-nonblock
+syn keyword tl_keyword contained sock-peer sock-recv-timeout sock-send-timeout sock-set-peer
+syn keyword tl_keyword contained sock-shutdown sock-stream sock-type some
+syn keyword tl_keyword contained sort sort-group source-loc source-loc-str
+syn keyword tl_keyword contained span-str special-operator-p special-var-p spl
+syn keyword tl_keyword contained splice split split* split-str
+syn keyword tl_keyword contained split-str-set sqrt square ssize-t
+syn keyword tl_keyword contained sspl sssucc ssucc starts-with
+syn keyword tl_keyword contained stat static-slot static-slot-ensure static-slot-home
+syn keyword tl_keyword contained static-slot-p static-slot-set stdlib str
+syn keyword tl_keyword contained str-buf str-d str-in6addr str-in6addr-net
+syn keyword tl_keyword contained str-inaddr str-inaddr-net str-seq str<
+syn keyword tl_keyword contained str<= str= str> str>=
+syn keyword tl_keyword contained stream-get-prop stream-set-prop streamp strerror
+syn keyword tl_keyword contained string-extend string-lt stringp strsignal
+syn keyword tl_keyword contained struct struct-from-args struct-from-plist struct-get-initfun
+syn keyword tl_keyword contained struct-get-postinitfun struct-set-initfun struct-set-postinitfun struct-type
+syn keyword tl_keyword contained struct-type-name struct-type-p structp sub
+syn keyword tl_keyword contained sub-buf sub-list sub-str sub-tree
+syn keyword tl_keyword contained sub-vec subtypep succ sum
+syn keyword tl_keyword contained super super-method suspend swap
+syn keyword tl_keyword contained symacrolet symbol-function symbol-macro symbol-name
+syn keyword tl_keyword contained symbol-package symbol-value symbolp symdiff
+syn keyword tl_keyword contained symlink sys:%backpatch-high16% sys:%backpatch-low16% sys:%big-endian%
+syn keyword tl_keyword contained sys:%bin-op% sys:%bin-ops% sys:%block-using-funs% sys:%call-op%
+syn keyword tl_keyword contained sys:%const-foldable% sys:%const-foldable-funs% sys:%dbg-command-env% sys:%effect-free%
+syn keyword tl_keyword contained sys:%effect-free-funs% sys:%file-suff-rx% sys:%functional% sys:%functional-funs%
+syn keyword tl_keyword contained sys:%gcall-op% sys:%lev-bits% sys:%lev-size% sys:%max-lambda-fixed-args%
+syn keyword tl_keyword contained sys:%max-lev% sys:%max-lev-idx% sys:%max-sm-lev% sys:%max-sm-lev-idx%
+syn keyword tl_keyword contained sys:%max-v-lev% sys:%nary-ops% sys:%oc-code% sys:%oc-hash%
+syn keyword tl_keyword contained sys:%oc-list-builder% sys:%package-manip% sys:%param-info% sys:%quip-rand-state%
+syn keyword tl_keyword contained sys:%quips% sys:%shuffled-quips% sys:%sm-lev-bits% sys:%sm-lev-size%
+syn keyword tl_keyword contained sys:%test-funs% sys:%test-funs-neg% sys:%test-funs-ops% sys:%test-funs-pos%
+syn keyword tl_keyword contained sys:%test-inv% sys:%test-opcode% sys:%tlo-ver% sys:*dedup*
+syn keyword tl_keyword contained sys:*emit* sys:*eval* sys:*in-compilation-unit* sys:*load-recursive*
+syn keyword tl_keyword contained sys:*load-time* sys:*match-form* sys:*op-ctx* sys:*pl-env*
+syn keyword tl_keyword contained sys:*pl-form* sys:*trace-hash* sys:*trace-level* sys:*unchecked-calls*
+syn keyword tl_keyword contained sys:abscond* sys:abscond-from sys:analyze-argtypes sys:analyze-params
+syn keyword tl_keyword contained sys:apply sys:asm-error sys:assumed-fun sys:awk%--rng
+syn keyword tl_keyword contained sys:awk%--rng+ sys:awk%--rng- sys:awk%-rng+ sys:awk%rng+
+syn keyword tl_keyword contained sys:awk-code-move-check sys:awk-error sys:awk-expander sys:awk-fun-let
+syn keyword tl_keyword contained sys:awk-fun-shadowing-env sys:awk-mac-let sys:awk-redir sys:awk-test
+syn keyword tl_keyword contained sys:b* sys:b+ sys:b- sys:b/
+syn keyword tl_keyword contained sys:b< sys:b<= sys:b= sys:b=>
+syn keyword tl_keyword contained sys:b> sys:bad-slot-syntax sys:bind-mac-check sys:bind-mac-error
+syn keyword tl_keyword contained sys:bindable-check sys:bits sys:bits-to-obj sys:blk
+syn keyword tl_keyword contained sys:build-expander sys:build-key-list-expr sys:capture-cont sys:catch
+syn keyword tl_keyword contained sys:check sys:check-end sys:check-slot sys:check-struct
+syn keyword tl_keyword contained sys:check-sym sys:circref sys:compat sys:compile-and-match
+syn keyword tl_keyword contained sys:compile-as-match sys:compile-atom-match sys:compile-cons-structure sys:compile-exprs-match
+syn keyword tl_keyword contained sys:compile-file-conditionally sys:compile-hash-match sys:compile-loop-match sys:compile-match
+syn keyword tl_keyword contained sys:compile-new-var-match sys:compile-not-match sys:compile-or-match sys:compile-predicate-match
+syn keyword tl_keyword contained sys:compile-range-match sys:compile-require-match sys:compile-scan-match sys:compile-struct-match
+syn keyword tl_keyword contained sys:compile-var-match sys:compile-vec-match sys:compile-with-match sys:compiler-emit-warnings
+syn keyword tl_keyword contained sys:conv sys:conv-expand sys:conv-let sys:ctx-form
+syn keyword tl_keyword contained sys:ctx-name sys:dbg-all sys:dbg-backtrace sys:dbg-clear
+syn keyword tl_keyword contained sys:dbg-enable sys:dbg-restore sys:dbg-set sys:dbg-step
+syn keyword tl_keyword contained sys:debugger sys:dedup sys:dedup-labels sys:deffi-cb-expander
+syn keyword tl_keyword contained sys:define-method sys:defset-expander sys:defset-expander-simple sys:dig
+syn keyword tl_keyword contained sys:disassemble-cdf sys:dlib-expr sys:do-conv sys:do-copy-obj
+syn keyword tl_keyword contained sys:do-path-test sys:do-tweak-obj sys:doc-syms sys:dump-to-tlo
+syn keyword tl_keyword contained sys:dvbind sys:dwim-del sys:dwim-set sys:dyn-size
+syn keyword tl_keyword contained sys:each-match-expander sys:each-op sys:early-peephole sys:enc-small-op
+syn keyword tl_keyword contained sys:ensure-op-arg sys:env-to-let sys:eq-comparable sys:eql-comparable
+syn keyword tl_keyword contained sys:eval-err sys:expand-and sys:expand-bind-mac-params sys:expand-defmacro
+syn keyword tl_keyword contained sys:expand-defsymacro sys:expand-defun sys:expand-defvarl sys:expand-dohash
+syn keyword tl_keyword contained sys:expand-doloop sys:expand-each sys:expand-each-prod sys:expand-each-prod*
+syn keyword tl_keyword contained sys:expand-handle sys:expand-lambda-match sys:expand-params sys:expand-quasi
+syn keyword tl_keyword contained sys:expand-quasi-args sys:expand-quasi-match sys:expand-quasi-mods sys:expand-sym-ref
+syn keyword tl_keyword contained sys:expr sys:extract-keys sys:extract-keys-p sys:fbind
+syn keyword tl_keyword contained sys:fixed-point sys:flatten-or sys:fmt-flex sys:fmt-join
+syn keyword tl_keyword contained sys:fmt-simple sys:for-op sys:gc sys:gc-set-delta
+syn keyword tl_keyword contained sys:get-buf-common sys:get-fun-getter-setter sys:get-mb sys:get-param-info
+syn keyword tl_keyword contained sys:get-place-macro sys:get-var-list sys:get-vars sys:get-vb
+syn keyword tl_keyword contained sys:getopts-error sys:handle-bad-syntax sys:hlet-expand sys:if-to-cond
+syn keyword tl_keyword contained sys:in6addr-condensed-text sys:is-label sys:l1-setq sys:l1-val
+syn keyword tl_keyword contained sys:lambda-apply-transform sys:lambda-short-apply-list sys:lambda-too-few-args sys:lambda-too-many-args
+syn keyword tl_keyword contained sys:lbind sys:lisp1-setq sys:lisp1-value sys:list-builder-flets
+syn keyword tl_keyword contained sys:list-from-vm-desc sys:load-time-lit sys:loc sys:loosen
+syn keyword tl_keyword contained sys:mac-env-flatten sys:make-anon-package sys:make-copy-path-opts sys:make-struct-lit
+syn keyword tl_keyword contained sys:make-struct-type sys:mark-special sys:misleading-ref-check sys:name-str
+syn keyword tl_keyword contained sys:new-expander sys:new-type sys:non-triv-pat-p sys:null-reg
+syn keyword tl_keyword contained sys:obtain-impl sys:op-alpha-rename sys:op-ensure-rec sys:op-expand
+syn keyword tl_keyword contained sys:op-meta-p sys:op-rec-p sys:open-compile-streams sys:open-url
+syn keyword tl_keyword contained sys:operand-to-exp sys:operand-to-sym sys:opip-expand sys:opt-dash
+syn keyword tl_keyword contained sys:opt-err sys:os-symbol sys:param-check sys:parse-compound-operand
+syn keyword tl_keyword contained sys:parse-lambda-match-clause sys:parse-operand sys:pat-len sys:path-access
syn keyword tl_keyword contained sys:path-examine sys:path-test-mode sys:path-test-type sys:pl-expand
syn keyword tl_keyword contained sys:placelet-1 sys:print-backtrace sys:propagate-ancestor sys:propagate-perms
syn keyword tl_keyword contained sys:prune-missing-inits sys:qquote sys:quasi sys:quasilist
@@ -598,58 +602,58 @@ syn keyword tl_keyword contained test-set test-set-indent-mode tf third
syn keyword tl_keyword contained throw throwf time time-fields-local
syn keyword tl_keyword contained time-fields-utc time-nsec time-parse time-parse-local
syn keyword tl_keyword contained time-parse-utc time-string-local time-string-utc time-struct-local
-syn keyword tl_keyword contained time-struct-utc time-t time-usec tnode
-syn keyword tl_keyword contained to tofloat tofloatz toint
-syn keyword tl_keyword contained tointz tok tok-str tok-where
-syn keyword tl_keyword contained tostop tostring tostringp touch
-syn keyword tl_keyword contained tprint trace transpose tree
-syn keyword tl_keyword contained tree-begin tree-bind tree-case tree-clear
-syn keyword tl_keyword contained tree-delete tree-delete-node tree-find tree-insert
-syn keyword tl_keyword contained tree-insert-node tree-lookup tree-lookup-node tree-next
-syn keyword tl_keyword contained tree-peek tree-reset tree-root treep
-syn keyword tl_keyword contained trie-add trie-compress trie-lookup-begin trie-lookup-feed-char
-syn keyword tl_keyword contained trie-value-at trim-left trim-right trim-str
-syn keyword tl_keyword contained true trunc trunc-rem truncate-stream
-syn keyword tl_keyword contained tuples txr-case txr-exe-path txr-if
-syn keyword tl_keyword contained txr-parse txr-path txr-version txr-when
-syn keyword tl_keyword contained typecase typedef typeof typep
-syn keyword tl_keyword contained ubit uchar uid-t uint
-syn keyword tl_keyword contained uint-buf uint-carray uint-ptr-t uint16
-syn keyword tl_keyword contained uint32 uint64 uint8 ulong
-syn keyword tl_keyword contained ulonglong umask umeth umethod
-syn keyword tl_keyword contained uname unget-byte unget-char uni
-syn keyword tl_keyword contained unintern union union-get union-in
-syn keyword tl_keyword contained union-members union-out union-put uniq
-syn keyword tl_keyword contained unique unless unquote unsetenv
-syn keyword tl_keyword contained until until* untrace unuse-package
-syn keyword tl_keyword contained unuse-sym unwind-protect upcase-str upd
-syn keyword tl_keyword contained update uref url-decode url-encode
-syn keyword tl_keyword contained use use-package use-sym user-package
-syn keyword tl_keyword contained ushort usl usleep uslot
-syn keyword tl_keyword contained utimes val vdiscard vec
-syn keyword tl_keyword contained vec-carray vec-list vec-push vec-seq
-syn keyword tl_keyword contained vec-set-length vecref vector vector-list
-syn keyword tl_keyword contained vectorp veof veol veol2
-syn keyword tl_keyword contained verase vintr vkill vlnext
-syn keyword tl_keyword contained vm-fun-p vmin void vquit
-syn keyword tl_keyword contained vreprint vstart vstop vsusp
-syn keyword tl_keyword contained vswtc vt0 vt1 vtdly
-syn keyword tl_keyword contained vtime vwerase w-continued w-coredump
-syn keyword tl_keyword contained w-exitstatus w-ifcontinued w-ifexited w-ifsignaled
-syn keyword tl_keyword contained w-ifstopped w-nohang w-stopsig w-termsig
-syn keyword tl_keyword contained w-untraced wait wchar weave
-syn keyword tl_keyword contained when when-match whena whenlet
-syn keyword tl_keyword contained where while while* whilet
-syn keyword tl_keyword contained width width-check window-map window-mapdo
-syn keyword tl_keyword contained window-mappend wint-t with-clobber-expander with-compilation-unit
-syn keyword tl_keyword contained with-delete-expander with-dyn-lib with-gensyms with-hash-iter
-syn keyword tl_keyword contained with-in-buf-stream with-in-string-byte-stream with-in-string-stream with-objects
-syn keyword tl_keyword contained with-out-buf-stream with-out-string-stream with-out-strlist-stream with-resources
-syn keyword tl_keyword contained with-slots with-stream with-update-expander wrap
-syn keyword tl_keyword contained wrap* wstr wstr-d xcase
-syn keyword tl_keyword contained yield yield-from zap zarray
-syn keyword tl_keyword contained zchar zero-fill zerop zip
-syn keyword tl_keyword contained znew
+syn keyword tl_keyword contained time-struct-utc time-t time-usec tmpfile
+syn keyword tl_keyword contained tnode to tofloat tofloatz
+syn keyword tl_keyword contained toint tointz tojson tok
+syn keyword tl_keyword contained tok-str tok-where tostop tostring
+syn keyword tl_keyword contained tostringp touch tprint trace
+syn keyword tl_keyword contained transpose tree tree-begin tree-bind
+syn keyword tl_keyword contained tree-case tree-clear tree-delete tree-delete-node
+syn keyword tl_keyword contained tree-find tree-insert tree-insert-node tree-lookup
+syn keyword tl_keyword contained tree-lookup-node tree-next tree-peek tree-reset
+syn keyword tl_keyword contained tree-root treep trie-add trie-compress
+syn keyword tl_keyword contained trie-lookup-begin trie-lookup-feed-char trie-value-at trim-left
+syn keyword tl_keyword contained trim-right trim-str true trunc
+syn keyword tl_keyword contained trunc-rem truncate-stream tuples txr-case
+syn keyword tl_keyword contained txr-exe-path txr-if txr-parse txr-path
+syn keyword tl_keyword contained txr-version txr-when typecase typedef
+syn keyword tl_keyword contained typeof typep ubit uchar
+syn keyword tl_keyword contained uid-t uint uint-buf uint-carray
+syn keyword tl_keyword contained uint-ptr-t uint16 uint32 uint64
+syn keyword tl_keyword contained uint8 ulong ulonglong umask
+syn keyword tl_keyword contained umeth umethod uname unget-byte
+syn keyword tl_keyword contained unget-char uni unintern union
+syn keyword tl_keyword contained union-get union-in union-members union-out
+syn keyword tl_keyword contained union-put uniq unique unless
+syn keyword tl_keyword contained unquote unsetenv until until*
+syn keyword tl_keyword contained untrace unuse-package unuse-sym unwind-protect
+syn keyword tl_keyword contained upcase-str upd update uref
+syn keyword tl_keyword contained url-decode url-encode use use-package
+syn keyword tl_keyword contained use-sym user-package ushort usl
+syn keyword tl_keyword contained usleep uslot utimes val
+syn keyword tl_keyword contained vdiscard vec vec-carray vec-list
+syn keyword tl_keyword contained vec-push vec-seq vec-set-length vecref
+syn keyword tl_keyword contained vector vector-list vectorp veof
+syn keyword tl_keyword contained veol veol2 verase vintr
+syn keyword tl_keyword contained vkill vlnext vm-fun-p vmin
+syn keyword tl_keyword contained void vquit vreprint vstart
+syn keyword tl_keyword contained vstop vsusp vswtc vt0
+syn keyword tl_keyword contained vt1 vtdly vtime vwerase
+syn keyword tl_keyword contained w-continued w-coredump w-exitstatus w-ifcontinued
+syn keyword tl_keyword contained w-ifexited w-ifsignaled w-ifstopped w-nohang
+syn keyword tl_keyword contained w-stopsig w-termsig w-untraced wait
+syn keyword tl_keyword contained wchar weave when when-match
+syn keyword tl_keyword contained whena whenlet where while
+syn keyword tl_keyword contained while* whilet width width-check
+syn keyword tl_keyword contained window-map window-mapdo window-mappend wint-t
+syn keyword tl_keyword contained with-clobber-expander with-compilation-unit with-delete-expander with-dyn-lib
+syn keyword tl_keyword contained with-gensyms with-hash-iter with-in-buf-stream with-in-string-byte-stream
+syn keyword tl_keyword contained with-in-string-stream with-objects with-out-buf-stream with-out-string-stream
+syn keyword tl_keyword contained with-out-strlist-stream with-resources with-slots with-stream
+syn keyword tl_keyword contained with-update-expander wrap wrap* wstr
+syn keyword tl_keyword contained wstr-d xcase yield yield-from
+syn keyword tl_keyword contained zap zarray zchar zero-fill
+syn keyword tl_keyword contained zerop zip znew
syn keyword txr_keyword contained accept all and assert
syn keyword txr_keyword contained bind block call cases
@@ -719,30 +723,47 @@ syn match txr_quote "'" contained
syn match txr_quote "\^" contained
syn match txr_dotdot "\.\." contained
syn match txr_metaat "@" contained
-syn match txr_circ "#[0-9]\+[#=]"
syn match txr_buf_error "[^']" contained
syn match txr_buf_interior "\([0-9A-Fa-f][\n\t ]*[0-9A-Fa-f]\|[\n\t ]\+\)" contained
syn region txr_bracevar matchgroup=Delimiter start="@[ \t]*[*]\?{" matchgroup=Delimiter end="}" contains=txr_num,txr_pnum,tl_ident,tl_splice,tl_metanum,txr_metaat,txr_circ,txr_braced_ident,txr_dot,txr_dotdot,txr_string,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_regex,txr_quasilit,txr_chr,txr_nested_error
-syn region tl_bracevar contained matchgroup=Delimiter start="@[ \t]*[*]\?{" matchgroup=Delimiter end="}" contains=txr_num,txr_pnum,tl_ident,tl_splice,tl_metanum,txr_metaat,txr_circ,txr_braced_ident,txr_dot,txr_dotdot,txr_string,txr_list,txr_bracket,txr_mlist,txr_mbracket,tl_regex,txr_quasilit,txr_chr,txr_nested_error
+syn region tl_bracevar contained matchgroup=Delimiter start="@[ \t]*[*]\?{" matchgroup=Delimiter end="}" contains=txr_num,txr_pnum,tl_ident,tl_splice,tl_metanum,txr_metaat,txr_circ,txr_braced_ident,txr_dot,txr_dotdot,txr_string,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_regex,txr_quasilit,txr_chr,txr_nested_error
syn region txr_directive matchgroup=Delimiter start="@[ \t]*(" matchgroup=Delimiter end=")" contains=txr_keyword,txr_string,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_num,txr_pnum,txr_badnum,tl_ident,tl_regex,txr_string,txr_chr,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_ncomment,txr_nested_error
-syn region txr_list contained matchgroup=Delimiter start="\(#[HSRTN]\?\)\?(" matchgroup=Delimiter end=")" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_ncomment,txr_nested_error
-syn region txr_bracket contained matchgroup=Delimiter start="\[" matchgroup=Delimiter end="\]" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_ncomment,txr_nested_error
-syn region txr_mlist contained matchgroup=Delimiter start="@[ \t^',]*(" matchgroup=Delimiter end=")" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_ncomment,txr_nested_error
-syn region txr_mbracket matchgroup=Delimiter start="@[ \t^',]*\[" matchgroup=Delimiter end="\]" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_ncomment,txr_nested_error
+syn region txr_list contained matchgroup=Delimiter start="\(#[HSRTN]\?\)\?(" matchgroup=Delimiter end=")" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
+syn region txr_bracket contained matchgroup=Delimiter start="\[" matchgroup=Delimiter end="\]" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
+syn region txr_mlist contained matchgroup=Delimiter start="@[ \t^',]*(" matchgroup=Delimiter end=")" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
+syn region txr_mbracket matchgroup=Delimiter start="@[ \t^',]*\[" matchgroup=Delimiter end="\]" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
syn region txr_string contained start=+#\?\*\?"+ end=+["\n]+ contains=txr_stresc,txr_numesc,txr_badesc
syn region txr_quasilit contained start=+#\?\*\?`+ end=+[`\n]+ contains=txr_splicevar,txr_metanum,tl_bracevar,txr_mlist,txr_mbracket,txr_escat,txr_stresc,txr_numesc,txr_badesc
syn region txr_regex contained start="/" end="[/\n]" contains=txr_regesc,txr_numesc,txr_badesc
syn region tl_regex contained start="#/" end="[/\n]" contains=txr_regesc,txr_numesc,txr_badesc
syn region txr_buf contained matchgroup=txr_buf start="#b'" end="'" contains=txr_buf_interior,txr_buf_error
-syn region txr_ign_tok contained matchgroup=Comment start="#;" end="[ \(\)\[\]]"me=e contains=txr_string,tl_regex,txr_num,txr_pnum,tl_ident,txr_metanum,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_ncomment
+syn region txr_ign_tok contained matchgroup=Comment start="#;" end="[ \(\)\[\]]"me=e contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
syn region txr_ign_par contained matchgroup=Comment start="#;[ \t',]*\(#[HSRTN]\?\)\?(" matchgroup=Comment end=")" contains=txr_ign_par_interior,txr_ign_bkt_interior
syn region txr_ign_bkt contained matchgroup=Comment start="#;[ \t',]*\(#[HSRTN]\?\)\?\[" matchgroup=Comment end="\]" contains=txr_ign_par_interior,txr_ign_bkt_interior
syn region txr_ign_bkt contained matchgroup=Comment start="#;[ \t',]*\(#[HSRTN]\?\)\?\[" matchgroup=Comment end="\]" contains=txr_ign_par_interior,txr_ign_bkt_interior
syn region txr_ign_par_interior contained matchgroup=Comment start="(" matchgroup=Comment end=")" contains=txr_ign_par_interior,txr_ign_bkt_interior
syn region txr_ign_bkt_interior contained matchgroup=Comment start="\[" matchgroup=Comment end="\]" contains=txr_ign_par_interior,txr_ign_bkt_interior
+syn match txr_jerr "." contained
+syn match txr_jpunc "[,: \t\n]" contained
+syn match txr_jesc "\\[bfnrt"\\/]" contained
+syn match txr_juesc "\\u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f]" contained
+syn match txr_jnum "-\?\(0\|[1-9][0-9]*\)\([.][0-9]\+\)\?\([Ee][+-]\?[0-9]\+\)\?" contained
+syn match txr_jkeyword "true\|false\|null" contained
+
+syn region txr_jatom contained matchgroup=Delimiter start="#J\^\?[\t\n ]*"rs=e end="[\t\n ]\|[\])}]"re=e-1 contains=txr_jarray_in,txr_jhash_in,txr_jkeyword,txr_jstring,txr_jnum,txr_jpunc,txr_junqlist,txr_junqbkt,txr_circ,txr_jerr
+syn region txr_junqlist contained matchgroup=Delimiter start="\~\*\?#\?(" end=")" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
+syn region txr_junqbkt contained matchgroup=Delimiter start="\~\*\?\[" end="\]" contains=tl_keyword,txr_string,tl_regex,txr_num,txr_pnum,txr_badnum,tl_ident,txr_metanum,txr_ign_par,txr_ign_bkt,txr_ign_tok,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_buf,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_circ,txr_jhash,txr_jarray,txr_jatom,txr_ncomment,txr_nested_error
+syn region txr_jstring contained matchgroup=Delimiter start=+"+ end=+["\n]+ contains=txr_jesc,txr_juesc,txr_badesc
+syn region txr_jarray contained matchgroup=Delimiter start="#J\^\?[\t\n ]*\[" matchgroup=Delimiter end="\]" contains=txr_jarray_in,txr_jhash_in,txr_jkeyword,txr_jstring,txr_jnum,txr_jpunc,txr_junqlist,txr_junqbkt,txr_circ,txr_jerr
+syn region txr_jhash contained matchgroup=Delimiter start="#J\^\?[\t\n ]*{" matchgroup=Delimiter end="}" contains=txr_jarray_in,txr_jhash_in,txr_jkeyword,txr_jstring,txr_jnum,txr_jpunc,txr_junqlist,txr_junqbkt,txr_circ,txr_jerr
+syn region txr_jarray_in contained matchgroup=Delimiter start="\[" end="\]" contains=txr_jarray_in,txr_jhash_in,txr_jkeyword,txr_jstring,txr_jnum,txr_jpunc,txr_junqlist,txr_junqbkt,txr_circ,txr_jerr
+syn region txr_jhash_in contained matchgroup=Delimiter start="{" end="}" contains=txr_jarray_in,txr_jhash_in,txr_jkeyword,txr_jstring,txr_jnum,txr_jpunc,txr_junqlist,txr_junqbkt,txr_circ,txr_jerr
+
+syn match txr_circ "#[0-9]\+[#=]" contained
+
hi def link txr_at Special
hi def link txr_atstar Special
hi def link txr_atat Special
@@ -795,7 +816,15 @@ hi def link txr_ign_par_interior Comment
hi def link txr_ign_bkt Comment
hi def link txr_ign_tok Comment
+hi def link txr_jkeyword Type
+hi def link txr_jnum Number
+hi def link txr_jstring String
+hi def link txr_jesc Special
+hi def link txr_juesc Special
+hi def link txr_jpunc Special
+hi def link txr_jerr Error
+
let b:current_syntax = "lisp"
-set lispwords=ado,alet,align,alignof,ap,append-each,append-each*,append-each-prod,append-each-prod*,append-match-products,append-matches,aret,array,arraysize,assert,awk,bit,block,block*,bool,buf,buf-d,build,buildn,carray,caseq,caseq*,caseql,caseql*,casequal,casequal*,catch,catch*,catch**,collect-each,collect-each*,collect-each-prod,collect-each-prod*,compare-swap,compile-only,cond,conda,condlet,cptr,dec,defex,deffi,deffi-cb,deffi-cb-unsafe,deffi-sym,deffi-type,deffi-var,define-accessor,define-modify-macro,define-option-struct,define-param-expander,define-place-macro,defmacro,defmatch,defmeth,defpackage,defparm,defparml,defplace,defset,defstruct,defsymacro,defun,defun-match,defvar,defvarl,del,delay,do,dohash,doloop,doloop*,dotimes,each,each*,each-match,each-match-product,each-prod,each-prod*,elemsize,elemtype,enum,enumed,equot,eval-only,ffi,flet,flip,for,for*,fun,gen,go,gun,handle,handle*,handler-bind,hlet,hlet*,ido,if,if-match,ifa,iflet,ignerr,ignwarn,in-package,ip,keep-match-products,keep-matches,labels,lambda,lambda-match,lcons,ldo,let,let*,lnew*,load-for,load-time,lop,lset,mac-env-param-bind,mac-param-bind,macro-time,macrolet,match-case,mlet,new*,obtain,obtain*,obtain*-block,obtain-block,offsetof,op,pdec,pinc,placelet,placelet*,pop,pprof,prof,prog,prog*,prog1,prog2,progn,ptr,ptr-in,ptr-in-d,ptr-out,ptr-out-d,ptr-out-s,push,pushnew,ret,return,return-from,rlet,rslot,sbit,sizeof,slet,splice,struct,suspend,symacrolet,sys:abscond-from,sys:awk-fun-let,sys:awk-mac-let,sys:awk-redir,sys:blk,sys:catch,sys:conv,sys:dlib-expr,sys:dvbind,sys:each-op,sys:expr,sys:fbind,sys:fixed-point,sys:for-op,sys:l1-val,sys:lbind,sys:lisp1-value,sys:load-time-lit,sys:path-examine,sys:placelet-1,sys:rewrite-case,sys:splice,sys:struct-lit,sys:switch,sys:txr-case-impl,sys:unquote,sys:upenv,sys:var,sys:when-exprs-match,tagbody,tb,tc,test-clear,test-dec,test-inc,test-set,trace,tree-bind,tree-case,txr-case,txr-if,txr-when,typecase,typedef,ubit,union,unless,unquote,until,until*,untrace,unwind-protect,upd,uref,when,when-match,whena,whenlet,while,while*,whilet,with-clobber-expander,with-compilation-unit,with-delete-expander,with-dyn-lib,with-gensyms,with-hash-iter,with-in-buf-stream,with-in-string-byte-stream,with-in-string-stream,with-objects,with-out-buf-stream,with-out-string-stream,with-out-strlist-stream,with-resources,with-slots,with-stream,with-update-expander,yield,yield-from,zap,zarray,znew,:method,:function,:init,:postinit,:fini
+set lispwords=ado,alet,align,alignof,ap,append-each,append-each*,append-each-prod,append-each-prod*,append-match-products,append-matches,aret,array,arraysize,assert,awk,bit,block,block*,bool,buf,buf-d,build,buildn,carray,caseq,caseq*,caseql,caseql*,casequal,casequal*,catch,catch*,catch**,collect-each,collect-each*,collect-each-prod,collect-each-prod*,compare-swap,compile-only,cond,conda,condlet,cptr,dec,defex,deffi,deffi-cb,deffi-cb-unsafe,deffi-sym,deffi-type,deffi-var,define-accessor,define-modify-macro,define-option-struct,define-param-expander,define-place-macro,defmacro,defmatch,defmeth,defpackage,defparm,defparml,defplace,defset,defstruct,defsymacro,defun,defun-match,defvar,defvarl,del,delay,do,dohash,doloop,doloop*,dotimes,each,each*,each-match,each-match-product,each-prod,each-prod*,elemsize,elemtype,enum,enumed,equot,eval-only,ffi,flet,flip,for,for*,fun,gen,go,gun,handle,handle*,handler-bind,hlet,hlet*,ido,if,if-match,ifa,iflet,ignerr,ignwarn,in-package,ip,json,keep-match-products,keep-matches,labels,lambda,lambda-match,lcons,ldo,let,let*,lnew*,load-for,load-time,lop,lset,mac-env-param-bind,mac-param-bind,macro-time,macrolet,match-case,mlet,new*,obtain,obtain*,obtain*-block,obtain-block,offsetof,op,pdec,pinc,placelet,placelet*,pop,pprof,prof,prog,prog*,prog1,prog2,progn,ptr,ptr-in,ptr-in-d,ptr-out,ptr-out-d,ptr-out-s,push,pushnew,ret,return,return-from,rlet,rslot,sbit,sizeof,slet,splice,struct,suspend,symacrolet,sys:abscond-from,sys:awk-fun-let,sys:awk-mac-let,sys:awk-redir,sys:blk,sys:catch,sys:conv,sys:dlib-expr,sys:dvbind,sys:each-op,sys:expr,sys:fbind,sys:fixed-point,sys:for-op,sys:l1-val,sys:lbind,sys:lisp1-value,sys:load-time-lit,sys:path-examine,sys:placelet-1,sys:rewrite-case,sys:splice,sys:struct-lit,sys:switch,sys:txr-case-impl,sys:unquote,sys:upenv,sys:var,sys:when-exprs-match,tagbody,tb,tc,test-clear,test-dec,test-inc,test-set,trace,tree-bind,tree-case,txr-case,txr-if,txr-when,typecase,typedef,ubit,union,unless,unquote,until,until*,untrace,unwind-protect,upd,uref,when,when-match,whena,whenlet,while,while*,whilet,with-clobber-expander,with-compilation-unit,with-delete-expander,with-dyn-lib,with-gensyms,with-hash-iter,with-in-buf-stream,with-in-string-byte-stream,with-in-string-stream,with-objects,with-out-buf-stream,with-out-string-stream,with-out-strlist-stream,with-resources,with-slots,with-stream,with-update-expander,yield,yield-from,zap,zarray,znew,:method,:function,:init,:postinit,:fini
set comments=:@\;\;\;,:@\;\;,:@\;