diff --git a/paredit_compiled.js b/paredit_compiled.js index f2d6d28..3ba800f 100644 --- a/paredit_compiled.js +++ b/paredit_compiled.js @@ -15,7 +15,7 @@ lt.plugins.paredit.opposites = new cljs.core.PersistentArrayMap(null, 6, [")","( lt.plugins.paredit.dir_swap = new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"left","left",1017222009),new cljs.core.Keyword(null,"right","right",1122416014),new cljs.core.Keyword(null,"right","right",1122416014),new cljs.core.Keyword(null,"left","left",1017222009)], null); lt.plugins.paredit.form_start = /[\{\(\[]/; lt.plugins.paredit.form_end = /[\}\)\]]/; -lt.plugins.paredit.end_loc = (function end_loc(ed){var last_line = lt.objs.editor.last_line.call(null,ed);return new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"line","line",1017226086),last_line,new cljs.core.Keyword(null,"ch","ch",1013907415),(function (){var x__7051__auto__ = 0;var y__7052__auto__ = (lt.objs.editor.line_length.call(null,ed,last_line) - 1);return ((x__7051__auto__ > y__7052__auto__) ? x__7051__auto__ : y__7052__auto__); +lt.plugins.paredit.end_loc = (function end_loc(ed){var last_line = lt.objs.editor.last_line.call(null,ed);return new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"line","line",1017226086),last_line,new cljs.core.Keyword(null,"ch","ch",1013907415),(function (){var x__8118__auto__ = 0;var y__8119__auto__ = (lt.objs.editor.line_length.call(null,ed,last_line) - 1);return ((x__8118__auto__ > y__8119__auto__) ? x__8118__auto__ : y__8119__auto__); })()], null); }); lt.plugins.paredit.loc_GT_loc = (function loc_GT_loc(l1,l2){if((new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(l1) > new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(l2))) @@ -44,7 +44,7 @@ lt.plugins.paredit.move_loc_line = (function move_loc_line(ed,loc,dir){if(cljs.c {return null; } else {if(new cljs.core.Keyword(null,"else","else",1017020587)) -{return cljs.core.assoc.call(null,neue,new cljs.core.Keyword(null,"ch","ch",1013907415),((cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"up","up",1013907981)))?(function (){var x__7051__auto__ = (lt.objs.editor.line_length.call(null,ed,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(neue)) - 1);var y__7052__auto__ = 0;return ((x__7051__auto__ > y__7052__auto__) ? x__7051__auto__ : y__7052__auto__); +{return cljs.core.assoc.call(null,neue,new cljs.core.Keyword(null,"ch","ch",1013907415),((cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"up","up",1013907981)))?(function (){var x__8118__auto__ = (lt.objs.editor.line_length.call(null,ed,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(neue)) - 1);var y__8119__auto__ = 0;return ((x__8118__auto__ > y__8119__auto__) ? x__8118__auto__ : y__8119__auto__); })():0)); } else {return null; @@ -73,25 +73,25 @@ lt.plugins.paredit.move_loc = (function move_loc(ed,loc,dir){if(cljs.core.truth_ {return null; } }); -lt.plugins.paredit.within_range = (function within_range(p__8173,cur){var vec__8175 = p__8173;var start = cljs.core.nth.call(null,vec__8175,0,null);var end = cljs.core.nth.call(null,vec__8175,1,null);return ((end >= new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(cur))) && ((new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(cur) >= start)); +lt.plugins.paredit.within_range = (function within_range(p__9147,cur){var vec__9149 = p__9147;var start = cljs.core.nth.call(null,vec__9149,0,null);var end = cljs.core.nth.call(null,vec__9149,1,null);return ((end >= new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(cur))) && ((new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(cur) >= start)); }); -lt.plugins.paredit.scan = (function scan(p__8176){var map__8178 = p__8176;var map__8178__$1 = ((cljs.core.seq_QMARK_.call(null,map__8178))?cljs.core.apply.call(null,cljs.core.hash_map,map__8178):map__8178);var opts = map__8178__$1;var regex = cljs.core.get.call(null,map__8178__$1,new cljs.core.Keyword(null,"regex","regex",1122296761));var loc = cljs.core.get.call(null,map__8178__$1,new cljs.core.Keyword(null,"loc","loc",1014011570));var ed = cljs.core.get.call(null,map__8178__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var dir = cljs.core.get.call(null,map__8178__$1,new cljs.core.Keyword(null,"dir","dir",1014003711));var search_range = new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(loc) - 100),(new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(loc) + 100)], null);var cur = loc;var line = lt.objs.editor.line.call(null,ed,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(loc));while(true){ +lt.plugins.paredit.scan = (function scan(p__9150){var map__9152 = p__9150;var map__9152__$1 = ((cljs.core.seq_QMARK_.call(null,map__9152))?cljs.core.apply.call(null,cljs.core.hash_map,map__9152):map__9152);var opts = map__9152__$1;var regex = cljs.core.get.call(null,map__9152__$1,new cljs.core.Keyword(null,"regex","regex",1122296761));var loc = cljs.core.get.call(null,map__9152__$1,new cljs.core.Keyword(null,"loc","loc",1014011570));var ed = cljs.core.get.call(null,map__9152__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var dir = cljs.core.get.call(null,map__9152__$1,new cljs.core.Keyword(null,"dir","dir",1014003711));var search_range = new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(loc) - 100),(new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(loc) + 100)], null);var cur = loc;var line = lt.objs.editor.line.call(null,ed,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(loc));while(true){ if((cljs.core.not.call(null,cur)) || (cljs.core.not.call(null,line)) || (!(lt.plugins.paredit.within_range.call(null,search_range,cur)))) {return null; } else -{var ch = cljs.core.get.call(null,line,new cljs.core.Keyword(null,"ch","ch",1013907415).cljs$core$IFn$_invoke$arity$1(cur));var next_loc = lt.plugins.paredit.move_loc.call(null,ed,cur,dir);var next_line = ((cljs.core.not_EQ_.call(null,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(cur),new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(next_loc)))?lt.objs.editor.line.call(null,ed,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(next_loc)):line);if(cljs.core.truth_((function (){var and__6732__auto__ = ch;if(cljs.core.truth_(and__6732__auto__)) +{var ch = cljs.core.get.call(null,line,new cljs.core.Keyword(null,"ch","ch",1013907415).cljs$core$IFn$_invoke$arity$1(cur));var next_loc = lt.plugins.paredit.move_loc.call(null,ed,cur,dir);var next_line = ((cljs.core.not_EQ_.call(null,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(cur),new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(next_loc)))?lt.objs.editor.line.call(null,ed,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(next_loc)):line);if(cljs.core.truth_((function (){var and__7799__auto__ = ch;if(cljs.core.truth_(and__7799__auto__)) {return cljs.core.re_seq.call(null,regex,ch); } else -{return and__6732__auto__; +{return and__7799__auto__; } })())) {return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [ch,cur], null); } else {{ -var G__8239 = next_loc; -var G__8240 = next_line; -cur = G__8239; -line = G__8240; +var G__9238 = next_loc; +var G__9239 = next_line; +cur = G__9238; +line = G__9239; continue; } } @@ -125,14 +125,14 @@ lt.plugins.paredit.string_BAR_comment_QMARK_ = (function string_BAR_comment_QMAR {return null; } }); -lt.plugins.paredit.paired_scan = (function paired_scan(p__8179){var map__8182 = p__8179;var map__8182__$1 = ((cljs.core.seq_QMARK_.call(null,map__8182))?cljs.core.apply.call(null,cljs.core.hash_map,map__8182):map__8182);var opts = map__8182__$1;var only_for_QMARK_ = cljs.core.get.call(null,map__8182__$1,new cljs.core.Keyword(null,"only-for?","only-for?",1260514697));var allow_strings_QMARK_ = cljs.core.get.call(null,map__8182__$1,new cljs.core.Keyword(null,"allow-strings?","allow-strings?",1208165235));var allow_end_QMARK_ = cljs.core.get.call(null,map__8182__$1,new cljs.core.Keyword(null,"allow-end?","allow-end?",3920538170));var negation = cljs.core.get.call(null,map__8182__$1,new cljs.core.Keyword(null,"negation","negation",1935015639));var for$ = cljs.core.get.call(null,map__8182__$1,new cljs.core.Keyword(null,"for","for",1014005819));var loc = cljs.core.get.call(null,map__8182__$1,new cljs.core.Keyword(null,"loc","loc",1014011570));var ed = cljs.core.get.call(null,map__8182__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var dir = cljs.core.get.call(null,map__8182__$1,new cljs.core.Keyword(null,"dir","dir",1014003711));var vec__8183 = ((cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009)))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [lt.plugins.paredit.form_end,lt.plugins.paredit.form_start], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [lt.plugins.paredit.form_start,lt.plugins.paredit.form_end], null));var stack_chars = cljs.core.nth.call(null,vec__8183,0,null);var stack_ends = cljs.core.nth.call(null,vec__8183,1,null);var final_loc = lt.plugins.paredit.end_loc.call(null,ed);var search_range = new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(loc) - 100),(new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(loc) + 100)], null);var cur = loc;var line = lt.objs.editor.line.call(null,ed,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(loc));var stack = cljs.core.PersistentVector.EMPTY;while(true){ +lt.plugins.paredit.paired_scan = (function paired_scan(p__9153){var map__9156 = p__9153;var map__9156__$1 = ((cljs.core.seq_QMARK_.call(null,map__9156))?cljs.core.apply.call(null,cljs.core.hash_map,map__9156):map__9156);var opts = map__9156__$1;var only_for_QMARK_ = cljs.core.get.call(null,map__9156__$1,new cljs.core.Keyword(null,"only-for?","only-for?",1260514697));var allow_strings_QMARK_ = cljs.core.get.call(null,map__9156__$1,new cljs.core.Keyword(null,"allow-strings?","allow-strings?",1208165235));var allow_end_QMARK_ = cljs.core.get.call(null,map__9156__$1,new cljs.core.Keyword(null,"allow-end?","allow-end?",3920538170));var negation = cljs.core.get.call(null,map__9156__$1,new cljs.core.Keyword(null,"negation","negation",1935015639));var for$ = cljs.core.get.call(null,map__9156__$1,new cljs.core.Keyword(null,"for","for",1014005819));var loc = cljs.core.get.call(null,map__9156__$1,new cljs.core.Keyword(null,"loc","loc",1014011570));var ed = cljs.core.get.call(null,map__9156__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var dir = cljs.core.get.call(null,map__9156__$1,new cljs.core.Keyword(null,"dir","dir",1014003711));var vec__9157 = ((cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009)))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [lt.plugins.paredit.form_end,lt.plugins.paredit.form_start], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [lt.plugins.paredit.form_start,lt.plugins.paredit.form_end], null));var stack_chars = cljs.core.nth.call(null,vec__9157,0,null);var stack_ends = cljs.core.nth.call(null,vec__9157,1,null);var final_loc = lt.plugins.paredit.end_loc.call(null,ed);var search_range = new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(loc) - 100),(new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(loc) + 100)], null);var cur = loc;var line = lt.objs.editor.line.call(null,ed,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(loc));var stack = cljs.core.PersistentVector.EMPTY;while(true){ if((cljs.core.not.call(null,cur)) || (cljs.core.not.call(null,line)) || (!(lt.plugins.paredit.within_range.call(null,search_range,cur)))) {return null; } else -{var ch = cljs.core.get.call(null,line,new cljs.core.Keyword(null,"ch","ch",1013907415).cljs$core$IFn$_invoke$arity$1(cur));var next_loc = lt.plugins.paredit.move_loc.call(null,ed,cur,dir);var next_line = ((cljs.core.not_EQ_.call(null,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(cur),new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(next_loc)))?lt.objs.editor.line.call(null,ed,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(next_loc)):line);var valid_QMARK_ = cljs.core.not.call(null,lt.plugins.paredit.string_BAR_comment_QMARK_.call(null,ed,cur,allow_strings_QMARK_));var stackable_QMARK_ = cljs.core.not.call(null,lt.plugins.paredit.string_BAR_comment_QMARK_.call(null,ed,cur));if(cljs.core.truth_((function (){var and__6732__auto__ = allow_end_QMARK_;if(cljs.core.truth_(and__6732__auto__)) +{var ch = cljs.core.get.call(null,line,new cljs.core.Keyword(null,"ch","ch",1013907415).cljs$core$IFn$_invoke$arity$1(cur));var next_loc = lt.plugins.paredit.move_loc.call(null,ed,cur,dir);var next_line = ((cljs.core.not_EQ_.call(null,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(cur),new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(next_loc)))?lt.objs.editor.line.call(null,ed,new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(next_loc)):line);var valid_QMARK_ = cljs.core.not.call(null,lt.plugins.paredit.string_BAR_comment_QMARK_.call(null,ed,cur,allow_strings_QMARK_));var stackable_QMARK_ = cljs.core.not.call(null,lt.plugins.paredit.string_BAR_comment_QMARK_.call(null,ed,cur));if(cljs.core.truth_((function (){var and__7799__auto__ = allow_end_QMARK_;if(cljs.core.truth_(and__7799__auto__)) {return (valid_QMARK_) && ((cljs.core._EQ_.call(null,final_loc,cur)) || (cljs.core.not_EQ_.call(null,next_line,line))); } else -{return and__6732__auto__; +{return and__7799__auto__; } })())) {if(cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"right","right",1122416014))) @@ -141,72 +141,72 @@ if((cljs.core.not.call(null,cur)) || (cljs.core.not.call(null,line)) || (!(lt.pl {return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [ch,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"line","line",1017226086),new cljs.core.Keyword(null,"line","line",1017226086).cljs$core$IFn$_invoke$arity$1(cur),new cljs.core.Keyword(null,"ch","ch",1013907415),-1], null)], null); } } else -{if(cljs.core.truth_((function (){var and__6732__auto__ = ch;if(cljs.core.truth_(and__6732__auto__)) -{var and__6732__auto____$1 = cljs.core.re_seq.call(null,for$,ch);if(cljs.core.truth_(and__6732__auto____$1)) -{var and__6732__auto____$2 = valid_QMARK_;if(and__6732__auto____$2) -{var and__6732__auto____$3 = cljs.core.not.call(null,cljs.core.seq.call(null,stack));if(and__6732__auto____$3) +{if(cljs.core.truth_((function (){var and__7799__auto__ = ch;if(cljs.core.truth_(and__7799__auto__)) +{var and__7799__auto____$1 = cljs.core.re_seq.call(null,for$,ch);if(cljs.core.truth_(and__7799__auto____$1)) +{var and__7799__auto____$2 = valid_QMARK_;if(and__7799__auto____$2) +{var and__7799__auto____$3 = cljs.core.not.call(null,cljs.core.seq.call(null,stack));if(and__7799__auto____$3) {if(cljs.core.truth_(negation)) {return negation.call(null,line,cur); } else {return true; } } else -{return and__6732__auto____$3; +{return and__7799__auto____$3; } } else -{return and__6732__auto____$2; +{return and__7799__auto____$2; } } else -{return and__6732__auto____$1; +{return and__7799__auto____$1; } } else -{return and__6732__auto__; +{return and__7799__auto__; } })())) {return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [ch,cur], null); } else -{if(cljs.core.truth_((function (){var and__6732__auto__ = ch;if(cljs.core.truth_(and__6732__auto__)) -{var and__6732__auto____$1 = cljs.core.not.call(null,only_for_QMARK_);if(and__6732__auto____$1) -{var and__6732__auto____$2 = stackable_QMARK_;if(and__6732__auto____$2) -{var and__6732__auto____$3 = cljs.core.re_seq.call(null,stack_ends,ch);if(cljs.core.truth_(and__6732__auto____$3)) +{if(cljs.core.truth_((function (){var and__7799__auto__ = ch;if(cljs.core.truth_(and__7799__auto__)) +{var and__7799__auto____$1 = cljs.core.not.call(null,only_for_QMARK_);if(and__7799__auto____$1) +{var and__7799__auto____$2 = stackable_QMARK_;if(and__7799__auto____$2) +{var and__7799__auto____$3 = cljs.core.re_seq.call(null,stack_ends,ch);if(cljs.core.truth_(and__7799__auto____$3)) {return cljs.core.not_EQ_.call(null,ch,lt.plugins.paredit.opposites.call(null,cljs.core.last.call(null,stack))); } else -{return and__6732__auto____$3; +{return and__7799__auto____$3; } } else -{return and__6732__auto____$2; +{return and__7799__auto____$2; } } else -{return and__6732__auto____$1; +{return and__7799__auto____$1; } } else -{return and__6732__auto__; +{return and__7799__auto__; } })())) {return null; } else {if(new cljs.core.Keyword(null,"else","else",1017020587)) {{ -var G__8241 = next_loc; -var G__8242 = next_line; -var G__8243 = (cljs.core.truth_((function (){var and__6732__auto__ = ch;if(cljs.core.truth_(and__6732__auto__)) -{var and__6732__auto____$1 = stackable_QMARK_;if(and__6732__auto____$1) +var G__9240 = next_loc; +var G__9241 = next_line; +var G__9242 = (cljs.core.truth_((function (){var and__7799__auto__ = ch;if(cljs.core.truth_(and__7799__auto__)) +{var and__7799__auto____$1 = stackable_QMARK_;if(and__7799__auto____$1) {return cljs.core.re_seq.call(null,stack_chars,ch); } else -{return and__6732__auto____$1; +{return and__7799__auto____$1; } } else -{return and__6732__auto__; +{return and__7799__auto__; } -})())?cljs.core.conj.call(null,stack,ch):(cljs.core.truth_((function (){var and__6732__auto__ = ch;if(cljs.core.truth_(and__6732__auto__)) +})())?cljs.core.conj.call(null,stack,ch):(cljs.core.truth_((function (){var and__7799__auto__ = ch;if(cljs.core.truth_(and__7799__auto__)) {return (stackable_QMARK_) && (cljs.core._EQ_.call(null,ch,lt.plugins.paredit.opposites.call(null,cljs.core.last.call(null,stack)))); } else -{return and__6732__auto__; +{return and__7799__auto__; } })())?cljs.core.pop.call(null,stack):((new cljs.core.Keyword(null,"else","else",1017020587))?stack:null))); -cur = G__8241; -line = G__8242; -stack = G__8243; +cur = G__9240; +line = G__9241; +stack = G__9242; continue; } } else @@ -219,15 +219,29 @@ continue; break; } }); -lt.plugins.paredit.form_boundary = (function form_boundary(ed,loc,regex){var vec__8186 = lt.plugins.paredit.paired_scan.call(null,new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"dir","dir",1014003711),new cljs.core.Keyword(null,"left","left",1017222009),new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"only-for?","only-for?",1260514697),regex,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,loc,new cljs.core.Keyword(null,"left","left",1017222009)),new cljs.core.Keyword(null,"for","for",1014005819),(function (){var or__6744__auto__ = regex;if(cljs.core.truth_(or__6744__auto__)) -{return or__6744__auto__; +lt.plugins.paredit.form_boundary = (function form_boundary(ed,loc,regex){var vec__9160 = lt.plugins.paredit.paired_scan.call(null,new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"dir","dir",1014003711),new cljs.core.Keyword(null,"left","left",1017222009),new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"only-for?","only-for?",1260514697),regex,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,loc,new cljs.core.Keyword(null,"left","left",1017222009)),new cljs.core.Keyword(null,"for","for",1014005819),(function (){var or__7811__auto__ = regex;if(cljs.core.truth_(or__7811__auto__)) +{return or__7811__auto__; } else {return lt.plugins.paredit.form_start; } -})()], null));var c = cljs.core.nth.call(null,vec__8186,0,null);var start = cljs.core.nth.call(null,vec__8186,1,null);var vec__8187 = ((cljs.core.not.call(null,c))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null], null):lt.plugins.paredit.paired_scan.call(null,new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"dir","dir",1014003711),new cljs.core.Keyword(null,"right","right",1122416014),new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,start,new cljs.core.Keyword(null,"right","right",1122416014)),new cljs.core.Keyword(null,"for","for",1014005819),cljs.core.re_pattern.call(null,[cljs.core.str("[\\"),cljs.core.str(lt.plugins.paredit.opposites.call(null,c)),cljs.core.str("]")].join(''))], null)));var c__$1 = cljs.core.nth.call(null,vec__8187,0,null);var end = cljs.core.nth.call(null,vec__8187,1,null);return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [start,end], null); +})()], null));var c = cljs.core.nth.call(null,vec__9160,0,null);var start = cljs.core.nth.call(null,vec__9160,1,null);var vec__9161 = ((cljs.core.not.call(null,c))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null], null):lt.plugins.paredit.paired_scan.call(null,new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"dir","dir",1014003711),new cljs.core.Keyword(null,"right","right",1122416014),new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,start,new cljs.core.Keyword(null,"right","right",1122416014)),new cljs.core.Keyword(null,"for","for",1014005819),cljs.core.re_pattern.call(null,[cljs.core.str("[\\"),cljs.core.str(lt.plugins.paredit.opposites.call(null,c)),cljs.core.str("]")].join(''))], null)));var c__$1 = cljs.core.nth.call(null,vec__9161,0,null);var end = cljs.core.nth.call(null,vec__9161,1,null);return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [start,end], null); }); -lt.plugins.paredit.escaped_paired_scan = (function escaped_paired_scan(ed,loc,thing,dir){var vec__8189 = lt.plugins.paredit.paired_scan.call(null,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"dir","dir",1014003711),dir,new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"allow-strings?","allow-strings?",1208165235),true,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,loc,dir),new cljs.core.Keyword(null,"negation","negation",1935015639),(function (line,loc__$1){return cljs.core.not_EQ_.call(null,cljs.core.get.call(null,line,lt.objs.editor.adjust_loc.call(null,loc__$1,-1)),"\\"); -}),new cljs.core.Keyword(null,"for","for",1014005819),cljs.core.re_pattern.call(null,[cljs.core.str("["),cljs.core.str(thing),cljs.core.str("]")].join(''))], null));var c = cljs.core.nth.call(null,vec__8189,0,null);var end = cljs.core.nth.call(null,vec__8189,1,null);if(cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009))) +/** +* Finds a form in ed which ends to the left of loc +* If loc is the last character of a selection, finds a child form on the right of the selection +* Returns [start end] where start and end are editor locations +*/ +lt.plugins.paredit.inner_form_boundary_right = (function inner_form_boundary_right(ed,loc){var vec__9164 = lt.plugins.paredit.paired_scan.call(null,new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"dir","dir",1014003711),new cljs.core.Keyword(null,"left","left",1017222009),new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,loc,new cljs.core.Keyword(null,"left","left",1017222009)),new cljs.core.Keyword(null,"for","for",1014005819),lt.plugins.paredit.form_end], null));var c = cljs.core.nth.call(null,vec__9164,0,null);var end = cljs.core.nth.call(null,vec__9164,1,null);var vec__9165 = ((cljs.core.not.call(null,c))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null], null):lt.plugins.paredit.paired_scan.call(null,new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"dir","dir",1014003711),new cljs.core.Keyword(null,"left","left",1017222009),new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,end,new cljs.core.Keyword(null,"left","left",1017222009)),new cljs.core.Keyword(null,"for","for",1014005819),cljs.core.re_pattern.call(null,[cljs.core.str("[\\"),cljs.core.str(lt.plugins.paredit.opposites.call(null,c)),cljs.core.str("]")].join(''))], null)));var c__$1 = cljs.core.nth.call(null,vec__9165,0,null);var start = cljs.core.nth.call(null,vec__9165,1,null);return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [start,end], null); +}); +/** +* Finds a form in ed which starts to the right of loc +* If loc is the first character of a selection, finds a child form on the left of the selection +* Returns [start end] where start and end are editor locations +*/ +lt.plugins.paredit.inner_form_boundary_left = (function inner_form_boundary_left(ed,loc){var vec__9168 = lt.plugins.paredit.paired_scan.call(null,new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"dir","dir",1014003711),new cljs.core.Keyword(null,"right","right",1122416014),new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,loc,new cljs.core.Keyword(null,"right","right",1122416014)),new cljs.core.Keyword(null,"for","for",1014005819),lt.plugins.paredit.form_start], null));var c = cljs.core.nth.call(null,vec__9168,0,null);var start = cljs.core.nth.call(null,vec__9168,1,null);var vec__9169 = ((cljs.core.not.call(null,c))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null], null):lt.plugins.paredit.paired_scan.call(null,new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"dir","dir",1014003711),new cljs.core.Keyword(null,"right","right",1122416014),new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,start,new cljs.core.Keyword(null,"right","right",1122416014)),new cljs.core.Keyword(null,"for","for",1014005819),cljs.core.re_pattern.call(null,[cljs.core.str("[\\"),cljs.core.str(lt.plugins.paredit.opposites.call(null,c)),cljs.core.str("]")].join(''))], null)));var c__$1 = cljs.core.nth.call(null,vec__9169,0,null);var end = cljs.core.nth.call(null,vec__9169,1,null);return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [start,end], null); +}); +lt.plugins.paredit.escaped_paired_scan = (function escaped_paired_scan(ed,loc,thing,dir){var vec__9171 = lt.plugins.paredit.paired_scan.call(null,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"dir","dir",1014003711),dir,new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"allow-strings?","allow-strings?",1208165235),true,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,loc,dir),new cljs.core.Keyword(null,"negation","negation",1935015639),(function (line,loc__$1){return cljs.core.not_EQ_.call(null,cljs.core.get.call(null,line,lt.objs.editor.adjust_loc.call(null,loc__$1,-1)),"\\"); +}),new cljs.core.Keyword(null,"for","for",1014005819),cljs.core.re_pattern.call(null,[cljs.core.str("["),cljs.core.str(thing),cljs.core.str("]")].join(''))], null));var c = cljs.core.nth.call(null,vec__9171,0,null);var end = cljs.core.nth.call(null,vec__9171,1,null);if(cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009))) {return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [end,loc], null); } else {return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [loc,lt.objs.editor.adjust_loc.call(null,end,1)], null); @@ -235,7 +249,7 @@ lt.plugins.paredit.escaped_paired_scan = (function escaped_paired_scan(ed,loc,th }); lt.plugins.paredit.string_bounds = (function string_bounds(ed,loc,dir){return lt.plugins.paredit.escaped_paired_scan.call(null,ed,loc,"\"",dir); }); -lt.plugins.paredit.token_bounds = (function token_bounds(ed,loc,dir){var vec__8191 = lt.plugins.paredit.paired_scan.call(null,new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"dir","dir",1014003711),dir,new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"allow-end?","allow-end?",3920538170),true,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.objs.editor.adjust_loc.call(null,loc,((cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009)))?-1:1)),new cljs.core.Keyword(null,"for","for",1014005819),/[\s\)\}\]\"\(\{\[]/], null));var c = cljs.core.nth.call(null,vec__8191,0,null);var end = cljs.core.nth.call(null,vec__8191,1,null);if(cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009))) +lt.plugins.paredit.token_bounds = (function token_bounds(ed,loc,dir){var vec__9173 = lt.plugins.paredit.paired_scan.call(null,new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"dir","dir",1014003711),dir,new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"allow-end?","allow-end?",3920538170),true,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.objs.editor.adjust_loc.call(null,loc,((cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009)))?-1:1)),new cljs.core.Keyword(null,"for","for",1014005819),/[\s\)\}\]\"\(\{\[]/], null));var c = cljs.core.nth.call(null,vec__9173,0,null);var end = cljs.core.nth.call(null,vec__9173,1,null);if(cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009))) {return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [lt.objs.editor.adjust_loc.call(null,end,1),loc], null); } else {return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [loc,end], null); @@ -243,23 +257,23 @@ lt.plugins.paredit.token_bounds = (function token_bounds(ed,loc,dir){var vec__81 }); lt.plugins.paredit.first_non_whitespace = (function first_non_whitespace(opts){return lt.plugins.paredit.scan.call(null,cljs.core.assoc.call(null,opts,new cljs.core.Keyword(null,"regex","regex",1122296761),/\S/)); }); -lt.plugins.paredit.anchored_move = (function anchored_move(ed,loc,anchor_side,dir){var vec__8194 = lt.plugins.paredit.form_boundary.call(null,ed,loc);var start = cljs.core.nth.call(null,vec__8194,0,null);var end = cljs.core.nth.call(null,vec__8194,1,null);var ends = ((cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009)))?lt.plugins.paredit.form_start:lt.plugins.paredit.form_end);var point = ((cljs.core._EQ_.call(null,new cljs.core.Keyword(null,"left","left",1017222009),anchor_side))?start:end);var vec__8195 = lt.plugins.paredit.first_non_whitespace.call(null,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,point,dir),new cljs.core.Keyword(null,"dir","dir",1014003711),dir], null));var cur = cljs.core.nth.call(null,vec__8195,0,null);var i = cljs.core.nth.call(null,vec__8195,1,null);var next = (cljs.core.truth_(cur)?(cljs.core.truth_(cljs.core.re_seq.call(null,ends,cur))?null:(cljs.core.truth_(lt.plugins.paredit.opposites.call(null,cur))?(function (){var right_QMARK_ = cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"right","right",1122416014));var bounds = lt.plugins.paredit.form_boundary.call(null,ed,((right_QMARK_)?lt.plugins.paredit.move_loc.call(null,ed,i,dir):i));if(right_QMARK_) +lt.plugins.paredit.anchored_move = (function anchored_move(ed,loc,anchor_side,dir){var vec__9176 = lt.plugins.paredit.form_boundary.call(null,ed,loc);var start = cljs.core.nth.call(null,vec__9176,0,null);var end = cljs.core.nth.call(null,vec__9176,1,null);var ends = ((cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009)))?lt.plugins.paredit.form_start:lt.plugins.paredit.form_end);var point = ((cljs.core._EQ_.call(null,new cljs.core.Keyword(null,"left","left",1017222009),anchor_side))?start:end);var vec__9177 = lt.plugins.paredit.first_non_whitespace.call(null,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,point,dir),new cljs.core.Keyword(null,"dir","dir",1014003711),dir], null));var cur = cljs.core.nth.call(null,vec__9177,0,null);var i = cljs.core.nth.call(null,vec__9177,1,null);var next = (cljs.core.truth_(cur)?(cljs.core.truth_(cljs.core.re_seq.call(null,ends,cur))?null:(cljs.core.truth_(lt.plugins.paredit.opposites.call(null,cur))?(function (){var right_QMARK_ = cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"right","right",1122416014));var bounds = lt.plugins.paredit.form_boundary.call(null,ed,((right_QMARK_)?lt.plugins.paredit.move_loc.call(null,ed,i,dir):i));if(right_QMARK_) {return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first.call(null,bounds),lt.objs.editor.adjust_loc.call(null,cljs.core.second.call(null,bounds),1)], null); } else {return bounds; } })():((cljs.core._EQ_.call(null,"\"",cur))?lt.plugins.paredit.string_bounds.call(null,ed,i,dir):((new cljs.core.Keyword(null,"else","else",1017020587))?lt.plugins.paredit.token_bounds.call(null,ed,i,dir):null)))):null);return new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"point","point",1120749826),point,new cljs.core.Keyword(null,"boundary","boundary",3193559964),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [start,end], null),new cljs.core.Keyword(null,"next","next",1017282149),next], null); }); -lt.plugins.paredit.grow = (function grow(p__8196,dir){var map__8199 = p__8196;var map__8199__$1 = ((cljs.core.seq_QMARK_.call(null,map__8199))?cljs.core.apply.call(null,cljs.core.hash_map,map__8199):map__8199);var orig = map__8199__$1;var loc = cljs.core.get.call(null,map__8199__$1,new cljs.core.Keyword(null,"loc","loc",1014011570));var ed = cljs.core.get.call(null,map__8199__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var map__8200 = lt.plugins.paredit.anchored_move.call(null,ed,loc,dir,dir);var map__8200__$1 = ((cljs.core.seq_QMARK_.call(null,map__8200))?cljs.core.apply.call(null,cljs.core.hash_map,map__8200):map__8200);var boundary = cljs.core.get.call(null,map__8200__$1,new cljs.core.Keyword(null,"boundary","boundary",3193559964));var point = cljs.core.get.call(null,map__8200__$1,new cljs.core.Keyword(null,"point","point",1120749826));var next = cljs.core.get.call(null,map__8200__$1,new cljs.core.Keyword(null,"next","next",1017282149));var format_point = ((cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009)))?cljs.core.second.call(null,boundary):cljs.core.first.call(null,boundary));var neue_point = ((cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009)))?cljs.core.first.call(null,next):cljs.core.second.call(null,next));if(cljs.core.truth_(neue_point)) +lt.plugins.paredit.grow = (function grow(p__9178,dir){var map__9181 = p__9178;var map__9181__$1 = ((cljs.core.seq_QMARK_.call(null,map__9181))?cljs.core.apply.call(null,cljs.core.hash_map,map__9181):map__9181);var orig = map__9181__$1;var loc = cljs.core.get.call(null,map__9181__$1,new cljs.core.Keyword(null,"loc","loc",1014011570));var ed = cljs.core.get.call(null,map__9181__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var map__9182 = lt.plugins.paredit.anchored_move.call(null,ed,loc,dir,dir);var map__9182__$1 = ((cljs.core.seq_QMARK_.call(null,map__9182))?cljs.core.apply.call(null,cljs.core.hash_map,map__9182):map__9182);var boundary = cljs.core.get.call(null,map__9182__$1,new cljs.core.Keyword(null,"boundary","boundary",3193559964));var point = cljs.core.get.call(null,map__9182__$1,new cljs.core.Keyword(null,"point","point",1120749826));var next = cljs.core.get.call(null,map__9182__$1,new cljs.core.Keyword(null,"next","next",1017282149));var format_point = ((cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009)))?cljs.core.second.call(null,boundary):cljs.core.first.call(null,boundary));var neue_point = ((cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009)))?cljs.core.first.call(null,next):cljs.core.second.call(null,next));if(cljs.core.truth_(neue_point)) {return cljs.core.update_in.call(null,orig,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"edits","edits",1110263579)], null),cljs.core.conj,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"move","move",1017261891),new cljs.core.Keyword(null,"from","from",1017056028),point,new cljs.core.Keyword(null,"to","to",1013907949),neue_point], null),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"cursor","cursor",3959752392),new cljs.core.Keyword(null,"from","from",1017056028),loc,new cljs.core.Keyword(null,"to","to",1013907949),loc], null),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"format","format",4040092521),new cljs.core.Keyword(null,"from","from",1017056028),format_point,new cljs.core.Keyword(null,"to","to",1013907949),neue_point], null)); } else {return orig; } }); -lt.plugins.paredit.shrink = (function shrink(p__8201,anchor_side){var map__8205 = p__8201;var map__8205__$1 = ((cljs.core.seq_QMARK_.call(null,map__8205))?cljs.core.apply.call(null,cljs.core.hash_map,map__8205):map__8205);var orig = map__8205__$1;var loc = cljs.core.get.call(null,map__8205__$1,new cljs.core.Keyword(null,"loc","loc",1014011570));var ed = cljs.core.get.call(null,map__8205__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var dir = lt.plugins.paredit.dir_swap.call(null,anchor_side);var map__8206 = lt.plugins.paredit.anchored_move.call(null,ed,loc,anchor_side,dir);var map__8206__$1 = ((cljs.core.seq_QMARK_.call(null,map__8206))?cljs.core.apply.call(null,cljs.core.hash_map,map__8206):map__8206);var anchor_move = map__8206__$1;var boundary = cljs.core.get.call(null,map__8206__$1,new cljs.core.Keyword(null,"boundary","boundary",3193559964));var point = cljs.core.get.call(null,map__8206__$1,new cljs.core.Keyword(null,"point","point",1120749826));var next = cljs.core.get.call(null,map__8206__$1,new cljs.core.Keyword(null,"next","next",1017282149));var format_side = ((cljs.core._EQ_.call(null,anchor_side,new cljs.core.Keyword(null,"right","right",1122416014)))?cljs.core.second.call(null,boundary):cljs.core.first.call(null,boundary));var neue_point = ((cljs.core._EQ_.call(null,anchor_side,new cljs.core.Keyword(null,"left","left",1017222009)))?cljs.core.second.call(null,next):cljs.core.first.call(null,next));var vec__8207 = (cljs.core.truth_(neue_point)?lt.plugins.paredit.first_non_whitespace.call(null,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,neue_point,dir),new cljs.core.Keyword(null,"dir","dir",1014003711),dir], null)):null);var _ = cljs.core.nth.call(null,vec__8207,0,null);var neue_point__$1 = cljs.core.nth.call(null,vec__8207,1,null);var neue_point__$2 = (cljs.core.truth_((function (){var and__6732__auto__ = neue_point__$1;if(cljs.core.truth_(and__6732__auto__)) +lt.plugins.paredit.shrink = (function shrink(p__9183,anchor_side){var map__9187 = p__9183;var map__9187__$1 = ((cljs.core.seq_QMARK_.call(null,map__9187))?cljs.core.apply.call(null,cljs.core.hash_map,map__9187):map__9187);var orig = map__9187__$1;var loc = cljs.core.get.call(null,map__9187__$1,new cljs.core.Keyword(null,"loc","loc",1014011570));var ed = cljs.core.get.call(null,map__9187__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var dir = lt.plugins.paredit.dir_swap.call(null,anchor_side);var map__9188 = lt.plugins.paredit.anchored_move.call(null,ed,loc,anchor_side,dir);var map__9188__$1 = ((cljs.core.seq_QMARK_.call(null,map__9188))?cljs.core.apply.call(null,cljs.core.hash_map,map__9188):map__9188);var anchor_move = map__9188__$1;var boundary = cljs.core.get.call(null,map__9188__$1,new cljs.core.Keyword(null,"boundary","boundary",3193559964));var point = cljs.core.get.call(null,map__9188__$1,new cljs.core.Keyword(null,"point","point",1120749826));var next = cljs.core.get.call(null,map__9188__$1,new cljs.core.Keyword(null,"next","next",1017282149));var format_side = ((cljs.core._EQ_.call(null,anchor_side,new cljs.core.Keyword(null,"right","right",1122416014)))?cljs.core.second.call(null,boundary):cljs.core.first.call(null,boundary));var neue_point = ((cljs.core._EQ_.call(null,anchor_side,new cljs.core.Keyword(null,"left","left",1017222009)))?cljs.core.second.call(null,next):cljs.core.first.call(null,next));var vec__9189 = (cljs.core.truth_(neue_point)?lt.plugins.paredit.first_non_whitespace.call(null,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"ed","ed",1013907473),ed,new cljs.core.Keyword(null,"loc","loc",1014011570),lt.plugins.paredit.move_loc.call(null,ed,neue_point,dir),new cljs.core.Keyword(null,"dir","dir",1014003711),dir], null)):null);var _ = cljs.core.nth.call(null,vec__9189,0,null);var neue_point__$1 = cljs.core.nth.call(null,vec__9189,1,null);var neue_point__$2 = (cljs.core.truth_((function (){var and__7799__auto__ = neue_point__$1;if(cljs.core.truth_(and__7799__auto__)) {return cljs.core._EQ_.call(null,anchor_side,new cljs.core.Keyword(null,"right","right",1122416014)); } else -{return and__6732__auto__; +{return and__7799__auto__; } })())?lt.objs.editor.adjust_loc.call(null,neue_point__$1,1):neue_point__$1);if(cljs.core.truth_(neue_point__$2)) {return cljs.core.update_in.call(null,orig,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"edits","edits",1110263579)], null),cljs.core.conj,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"move","move",1017261891),new cljs.core.Keyword(null,"from","from",1017056028),point,new cljs.core.Keyword(null,"to","to",1013907949),neue_point__$2], null),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"cursor","cursor",3959752392),new cljs.core.Keyword(null,"from","from",1017056028),loc,new cljs.core.Keyword(null,"to","to",1013907949),loc], null),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"format","format",4040092521),new cljs.core.Keyword(null,"from","from",1017056028),format_side,new cljs.core.Keyword(null,"to","to",1013907949),neue_point__$2], null)); @@ -267,10 +281,40 @@ lt.plugins.paredit.shrink = (function shrink(p__8201,anchor_side){var map__8205 {return orig; } }); -lt.plugins.paredit.select = (function select(p__8208,type){var map__8211 = p__8208;var map__8211__$1 = ((cljs.core.seq_QMARK_.call(null,map__8211))?cljs.core.apply.call(null,cljs.core.hash_map,map__8211):map__8211);var orig = map__8211__$1;var loc = cljs.core.get.call(null,map__8211__$1,new cljs.core.Keyword(null,"loc","loc",1014011570));var ed = cljs.core.get.call(null,map__8211__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var vec__8212 = lt.plugins.paredit.form_boundary.call(null,ed,loc,(cljs.core.truth_(type)?cljs.core.re_pattern.call(null,[cljs.core.str("[\\"),cljs.core.str(type),cljs.core.str("]")].join('')):null));var start = cljs.core.nth.call(null,vec__8212,0,null);var end = cljs.core.nth.call(null,vec__8212,1,null);if(cljs.core.truth_((function (){var and__6732__auto__ = start;if(cljs.core.truth_(and__6732__auto__)) +/** +* Given an editor ed which has a selection, finds a child form within the expression +* Returns [start end] where start and end are editor locations for the child form-boundary +* dir should be :left or :right, and determines if a child form on the left or the right should be returned +* e.g if the selection is: (my-func [args] (function args)) +* (inner-form-boundary ed :left) => start and end locations of "[args]" +* (inner-form-boundary ed :right) => stat and end locations of "(function args)" +*/ +lt.plugins.paredit.inner_form_boundary = (function inner_form_boundary(ed,dir){var map__9191 = lt.objs.editor.selection_bounds.call(null,ed);var map__9191__$1 = ((cljs.core.seq_QMARK_.call(null,map__9191))?cljs.core.apply.call(null,cljs.core.hash_map,map__9191):map__9191);var to = cljs.core.get.call(null,map__9191__$1,new cljs.core.Keyword(null,"to","to",1013907949));var from = cljs.core.get.call(null,map__9191__$1,new cljs.core.Keyword(null,"from","from",1017056028));if(cljs.core._EQ_.call(null,dir,new cljs.core.Keyword(null,"left","left",1017222009))) +{return lt.plugins.paredit.inner_form_boundary_left.call(null,ed,from); +} else +{return lt.plugins.paredit.inner_form_boundary_right.call(null,ed,lt.plugins.paredit.move_loc.call(null,ed,to,new cljs.core.Keyword(null,"left","left",1017222009))); +} +}); +/** +* If editor ed has a selection, selects a child form, on either the left or right of the expression. +* dir should be :left or :right +* See: inner-form-boundary +*/ +lt.plugins.paredit.select_inner = (function select_inner(p__9192,dir){var map__9195 = p__9192;var map__9195__$1 = ((cljs.core.seq_QMARK_.call(null,map__9195))?cljs.core.apply.call(null,cljs.core.hash_map,map__9195):map__9195);var orig = map__9195__$1;var ed = cljs.core.get.call(null,map__9195__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var vec__9196 = lt.plugins.paredit.inner_form_boundary.call(null,ed,dir);var start = cljs.core.nth.call(null,vec__9196,0,null);var end = cljs.core.nth.call(null,vec__9196,1,null);if(cljs.core.truth_((function (){var and__7799__auto__ = start;if(cljs.core.truth_(and__7799__auto__)) +{return end; +} else +{return and__7799__auto__; +} +})())) +{return cljs.core.update_in.call(null,orig,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"edits","edits",1110263579)], null),cljs.core.conj,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"cursor","cursor",3959752392),new cljs.core.Keyword(null,"from","from",1017056028),start,new cljs.core.Keyword(null,"to","to",1013907949),lt.objs.editor.adjust_loc.call(null,end,1)], null)); +} else +{return orig; +} +}); +lt.plugins.paredit.select = (function select(p__9197,type){var map__9200 = p__9197;var map__9200__$1 = ((cljs.core.seq_QMARK_.call(null,map__9200))?cljs.core.apply.call(null,cljs.core.hash_map,map__9200):map__9200);var orig = map__9200__$1;var loc = cljs.core.get.call(null,map__9200__$1,new cljs.core.Keyword(null,"loc","loc",1014011570));var ed = cljs.core.get.call(null,map__9200__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var vec__9201 = lt.plugins.paredit.form_boundary.call(null,ed,loc,(cljs.core.truth_(type)?cljs.core.re_pattern.call(null,[cljs.core.str("[\\"),cljs.core.str(type),cljs.core.str("]")].join('')):null));var start = cljs.core.nth.call(null,vec__9201,0,null);var end = cljs.core.nth.call(null,vec__9201,1,null);if(cljs.core.truth_((function (){var and__7799__auto__ = start;if(cljs.core.truth_(and__7799__auto__)) {return end; } else -{return and__6732__auto__; +{return and__7799__auto__; } })())) {return cljs.core.update_in.call(null,orig,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"edits","edits",1110263579)], null),cljs.core.conj,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"cursor","cursor",3959752392),new cljs.core.Keyword(null,"from","from",1017056028),start,new cljs.core.Keyword(null,"to","to",1013907949),lt.objs.editor.adjust_loc.call(null,end,1)], null)); @@ -278,10 +322,10 @@ lt.plugins.paredit.select = (function select(p__8208,type){var map__8211 = p__82 {return orig; } }); -lt.plugins.paredit.unwrap = (function unwrap(p__8213,type){var map__8216 = p__8213;var map__8216__$1 = ((cljs.core.seq_QMARK_.call(null,map__8216))?cljs.core.apply.call(null,cljs.core.hash_map,map__8216):map__8216);var orig = map__8216__$1;var loc = cljs.core.get.call(null,map__8216__$1,new cljs.core.Keyword(null,"loc","loc",1014011570));var ed = cljs.core.get.call(null,map__8216__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var vec__8217 = lt.plugins.paredit.form_boundary.call(null,ed,loc,(cljs.core.truth_(type)?cljs.core.re_pattern.call(null,[cljs.core.str("[\\"),cljs.core.str(type),cljs.core.str("]")].join('')):null));var start = cljs.core.nth.call(null,vec__8217,0,null);var end = cljs.core.nth.call(null,vec__8217,1,null);if(cljs.core.truth_((function (){var and__6732__auto__ = start;if(cljs.core.truth_(and__6732__auto__)) +lt.plugins.paredit.unwrap = (function unwrap(p__9202,type){var map__9205 = p__9202;var map__9205__$1 = ((cljs.core.seq_QMARK_.call(null,map__9205))?cljs.core.apply.call(null,cljs.core.hash_map,map__9205):map__9205);var orig = map__9205__$1;var loc = cljs.core.get.call(null,map__9205__$1,new cljs.core.Keyword(null,"loc","loc",1014011570));var ed = cljs.core.get.call(null,map__9205__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var vec__9206 = lt.plugins.paredit.form_boundary.call(null,ed,loc,(cljs.core.truth_(type)?cljs.core.re_pattern.call(null,[cljs.core.str("[\\"),cljs.core.str(type),cljs.core.str("]")].join('')):null));var start = cljs.core.nth.call(null,vec__9206,0,null);var end = cljs.core.nth.call(null,vec__9206,1,null);if(cljs.core.truth_((function (){var and__7799__auto__ = start;if(cljs.core.truth_(and__7799__auto__)) {return end; } else -{return and__6732__auto__; +{return and__7799__auto__; } })())) {return cljs.core.update_in.call(null,orig,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"edits","edits",1110263579)], null),cljs.core.conj,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"delete","delete",3973413149),new cljs.core.Keyword(null,"from","from",1017056028),end,new cljs.core.Keyword(null,"to","to",1013907949),lt.objs.editor.adjust_loc.call(null,end,1)], null),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"delete","delete",3973413149),new cljs.core.Keyword(null,"from","from",1017056028),start,new cljs.core.Keyword(null,"to","to",1013907949),lt.objs.editor.adjust_loc.call(null,start,1)], null)); @@ -289,45 +333,45 @@ lt.plugins.paredit.unwrap = (function unwrap(p__8213,type){var map__8216 = p__82 {return orig; } }); -lt.plugins.paredit.batched_edits = (function batched_edits(p__8218){var map__8224 = p__8218;var map__8224__$1 = ((cljs.core.seq_QMARK_.call(null,map__8224))?cljs.core.apply.call(null,cljs.core.hash_map,map__8224):map__8224);var ed = cljs.core.get.call(null,map__8224__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var edits = cljs.core.get.call(null,map__8224__$1,new cljs.core.Keyword(null,"edits","edits",1110263579));return lt.objs.editor.operation.call(null,ed,(function (){var seq__8225 = cljs.core.seq.call(null,edits);var chunk__8226 = null;var count__8227 = 0;var i__8228 = 0;while(true){ -if((i__8228 < count__8227)) -{var e = cljs.core._nth.call(null,chunk__8226,i__8228);lt.plugins.paredit.do_edit.call(null,e,ed); +lt.plugins.paredit.batched_edits = (function batched_edits(p__9207){var map__9213 = p__9207;var map__9213__$1 = ((cljs.core.seq_QMARK_.call(null,map__9213))?cljs.core.apply.call(null,cljs.core.hash_map,map__9213):map__9213);var ed = cljs.core.get.call(null,map__9213__$1,new cljs.core.Keyword(null,"ed","ed",1013907473));var edits = cljs.core.get.call(null,map__9213__$1,new cljs.core.Keyword(null,"edits","edits",1110263579));return lt.objs.editor.operation.call(null,ed,(function (){var seq__9214 = cljs.core.seq.call(null,edits);var chunk__9215 = null;var count__9216 = 0;var i__9217 = 0;while(true){ +if((i__9217 < count__9216)) +{var e = cljs.core._nth.call(null,chunk__9215,i__9217);lt.plugins.paredit.do_edit.call(null,e,ed); { -var G__8244 = seq__8225; -var G__8245 = chunk__8226; -var G__8246 = count__8227; -var G__8247 = (i__8228 + 1); -seq__8225 = G__8244; -chunk__8226 = G__8245; -count__8227 = G__8246; -i__8228 = G__8247; +var G__9243 = seq__9214; +var G__9244 = chunk__9215; +var G__9245 = count__9216; +var G__9246 = (i__9217 + 1); +seq__9214 = G__9243; +chunk__9215 = G__9244; +count__9216 = G__9245; +i__9217 = G__9246; continue; } } else -{var temp__4092__auto__ = cljs.core.seq.call(null,seq__8225);if(temp__4092__auto__) -{var seq__8225__$1 = temp__4092__auto__;if(cljs.core.chunked_seq_QMARK_.call(null,seq__8225__$1)) -{var c__7486__auto__ = cljs.core.chunk_first.call(null,seq__8225__$1);{ -var G__8248 = cljs.core.chunk_rest.call(null,seq__8225__$1); -var G__8249 = c__7486__auto__; -var G__8250 = cljs.core.count.call(null,c__7486__auto__); -var G__8251 = 0; -seq__8225 = G__8248; -chunk__8226 = G__8249; -count__8227 = G__8250; -i__8228 = G__8251; +{var temp__4092__auto__ = cljs.core.seq.call(null,seq__9214);if(temp__4092__auto__) +{var seq__9214__$1 = temp__4092__auto__;if(cljs.core.chunked_seq_QMARK_.call(null,seq__9214__$1)) +{var c__8553__auto__ = cljs.core.chunk_first.call(null,seq__9214__$1);{ +var G__9247 = cljs.core.chunk_rest.call(null,seq__9214__$1); +var G__9248 = c__8553__auto__; +var G__9249 = cljs.core.count.call(null,c__8553__auto__); +var G__9250 = 0; +seq__9214 = G__9247; +chunk__9215 = G__9248; +count__9216 = G__9249; +i__9217 = G__9250; continue; } } else -{var e = cljs.core.first.call(null,seq__8225__$1);lt.plugins.paredit.do_edit.call(null,e,ed); +{var e = cljs.core.first.call(null,seq__9214__$1);lt.plugins.paredit.do_edit.call(null,e,ed); { -var G__8252 = cljs.core.next.call(null,seq__8225__$1); -var G__8253 = null; -var G__8254 = 0; -var G__8255 = 0; -seq__8225 = G__8252; -chunk__8226 = G__8253; -count__8227 = G__8254; -i__8228 = G__8255; +var G__9251 = cljs.core.next.call(null,seq__9214__$1); +var G__9252 = null; +var G__9253 = 0; +var G__9254 = 0; +seq__9214 = G__9251; +chunk__9215 = G__9252; +count__9216 = G__9253; +i__9217 = G__9254; continue; } } @@ -339,9 +383,9 @@ break; } })); }); -lt.plugins.paredit.do_edit = (function (){var method_table__7596__auto__ = cljs.core.atom.call(null,cljs.core.PersistentArrayMap.EMPTY);var prefer_table__7597__auto__ = cljs.core.atom.call(null,cljs.core.PersistentArrayMap.EMPTY);var method_cache__7598__auto__ = cljs.core.atom.call(null,cljs.core.PersistentArrayMap.EMPTY);var cached_hierarchy__7599__auto__ = cljs.core.atom.call(null,cljs.core.PersistentArrayMap.EMPTY);var hierarchy__7600__auto__ = cljs.core.get.call(null,cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,"hierarchy","hierarchy",3129050535),cljs.core.get_global_hierarchy.call(null));return (new cljs.core.MultiFn("do-edit",new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"default","default",2558708147),hierarchy__7600__auto__,method_table__7596__auto__,prefer_table__7597__auto__,method_cache__7598__auto__,cached_hierarchy__7599__auto__)); +lt.plugins.paredit.do_edit = (function (){var method_table__8663__auto__ = cljs.core.atom.call(null,cljs.core.PersistentArrayMap.EMPTY);var prefer_table__8664__auto__ = cljs.core.atom.call(null,cljs.core.PersistentArrayMap.EMPTY);var method_cache__8665__auto__ = cljs.core.atom.call(null,cljs.core.PersistentArrayMap.EMPTY);var cached_hierarchy__8666__auto__ = cljs.core.atom.call(null,cljs.core.PersistentArrayMap.EMPTY);var hierarchy__8667__auto__ = cljs.core.get.call(null,cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,"hierarchy","hierarchy",3129050535),cljs.core.get_global_hierarchy.call(null));return (new cljs.core.MultiFn("do-edit",new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"default","default",2558708147),hierarchy__8667__auto__,method_table__8663__auto__,prefer_table__8664__auto__,method_cache__8665__auto__,cached_hierarchy__8666__auto__)); })(); -cljs.core._add_method.call(null,lt.plugins.paredit.do_edit,new cljs.core.Keyword(null,"move","move",1017261891),(function (p__8229,ed){var map__8230 = p__8229;var map__8230__$1 = ((cljs.core.seq_QMARK_.call(null,map__8230))?cljs.core.apply.call(null,cljs.core.hash_map,map__8230):map__8230);var to = cljs.core.get.call(null,map__8230__$1,new cljs.core.Keyword(null,"to","to",1013907949));var from = cljs.core.get.call(null,map__8230__$1,new cljs.core.Keyword(null,"from","from",1017056028));var text = lt.objs.editor.range.call(null,ed,from,lt.objs.editor.adjust_loc.call(null,from,1));if(lt.plugins.paredit.loc_GT_loc.call(null,to,from)) +cljs.core._add_method.call(null,lt.plugins.paredit.do_edit,new cljs.core.Keyword(null,"move","move",1017261891),(function (p__9218,ed){var map__9219 = p__9218;var map__9219__$1 = ((cljs.core.seq_QMARK_.call(null,map__9219))?cljs.core.apply.call(null,cljs.core.hash_map,map__9219):map__9219);var to = cljs.core.get.call(null,map__9219__$1,new cljs.core.Keyword(null,"to","to",1013907949));var from = cljs.core.get.call(null,map__9219__$1,new cljs.core.Keyword(null,"from","from",1017056028));var text = lt.objs.editor.range.call(null,ed,from,lt.objs.editor.adjust_loc.call(null,from,1));if(lt.plugins.paredit.loc_GT_loc.call(null,to,from)) {lt.plugins.paredit.do_edit.call(null,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"insert","insert",4125079083),new cljs.core.Keyword(null,"from","from",1017056028),to,new cljs.core.Keyword(null,"text","text",1017460895),text], null),ed); return lt.plugins.paredit.do_edit.call(null,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"delete","delete",3973413149),new cljs.core.Keyword(null,"from","from",1017056028),from,new cljs.core.Keyword(null,"to","to",1013907949),lt.objs.editor.adjust_loc.call(null,from,1)], null),ed); } else @@ -349,17 +393,17 @@ return lt.plugins.paredit.do_edit.call(null,new cljs.core.PersistentArrayMap(nul return lt.plugins.paredit.do_edit.call(null,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"type","type",1017479852),new cljs.core.Keyword(null,"insert","insert",4125079083),new cljs.core.Keyword(null,"from","from",1017056028),to,new cljs.core.Keyword(null,"text","text",1017460895),text], null),ed); } })); -cljs.core._add_method.call(null,lt.plugins.paredit.do_edit,new cljs.core.Keyword(null,"insert","insert",4125079083),(function (p__8231,ed){var map__8232 = p__8231;var map__8232__$1 = ((cljs.core.seq_QMARK_.call(null,map__8232))?cljs.core.apply.call(null,cljs.core.hash_map,map__8232):map__8232);var text = cljs.core.get.call(null,map__8232__$1,new cljs.core.Keyword(null,"text","text",1017460895));var from = cljs.core.get.call(null,map__8232__$1,new cljs.core.Keyword(null,"from","from",1017056028));return lt.objs.editor.replace.call(null,ed,from,text); +cljs.core._add_method.call(null,lt.plugins.paredit.do_edit,new cljs.core.Keyword(null,"insert","insert",4125079083),(function (p__9220,ed){var map__9221 = p__9220;var map__9221__$1 = ((cljs.core.seq_QMARK_.call(null,map__9221))?cljs.core.apply.call(null,cljs.core.hash_map,map__9221):map__9221);var text = cljs.core.get.call(null,map__9221__$1,new cljs.core.Keyword(null,"text","text",1017460895));var from = cljs.core.get.call(null,map__9221__$1,new cljs.core.Keyword(null,"from","from",1017056028));return lt.objs.editor.replace.call(null,ed,from,text); })); -cljs.core._add_method.call(null,lt.plugins.paredit.do_edit,new cljs.core.Keyword(null,"delete","delete",3973413149),(function (p__8233,ed){var map__8234 = p__8233;var map__8234__$1 = ((cljs.core.seq_QMARK_.call(null,map__8234))?cljs.core.apply.call(null,cljs.core.hash_map,map__8234):map__8234);var to = cljs.core.get.call(null,map__8234__$1,new cljs.core.Keyword(null,"to","to",1013907949));var from = cljs.core.get.call(null,map__8234__$1,new cljs.core.Keyword(null,"from","from",1017056028));return lt.objs.editor.replace.call(null,ed,from,to,""); +cljs.core._add_method.call(null,lt.plugins.paredit.do_edit,new cljs.core.Keyword(null,"delete","delete",3973413149),(function (p__9222,ed){var map__9223 = p__9222;var map__9223__$1 = ((cljs.core.seq_QMARK_.call(null,map__9223))?cljs.core.apply.call(null,cljs.core.hash_map,map__9223):map__9223);var to = cljs.core.get.call(null,map__9223__$1,new cljs.core.Keyword(null,"to","to",1013907949));var from = cljs.core.get.call(null,map__9223__$1,new cljs.core.Keyword(null,"from","from",1017056028));return lt.objs.editor.replace.call(null,ed,from,to,""); })); -cljs.core._add_method.call(null,lt.plugins.paredit.do_edit,new cljs.core.Keyword(null,"cursor","cursor",3959752392),(function (p__8235,ed){var map__8236 = p__8235;var map__8236__$1 = ((cljs.core.seq_QMARK_.call(null,map__8236))?cljs.core.apply.call(null,cljs.core.hash_map,map__8236):map__8236);var to = cljs.core.get.call(null,map__8236__$1,new cljs.core.Keyword(null,"to","to",1013907949));var from = cljs.core.get.call(null,map__8236__$1,new cljs.core.Keyword(null,"from","from",1017056028));if(cljs.core._EQ_.call(null,from,to)) +cljs.core._add_method.call(null,lt.plugins.paredit.do_edit,new cljs.core.Keyword(null,"cursor","cursor",3959752392),(function (p__9224,ed){var map__9225 = p__9224;var map__9225__$1 = ((cljs.core.seq_QMARK_.call(null,map__9225))?cljs.core.apply.call(null,cljs.core.hash_map,map__9225):map__9225);var to = cljs.core.get.call(null,map__9225__$1,new cljs.core.Keyword(null,"to","to",1013907949));var from = cljs.core.get.call(null,map__9225__$1,new cljs.core.Keyword(null,"from","from",1017056028));if(cljs.core._EQ_.call(null,from,to)) {return lt.objs.editor.move_cursor.call(null,ed,to); } else {return lt.objs.editor.set_selection.call(null,ed,from,to); } })); -cljs.core._add_method.call(null,lt.plugins.paredit.do_edit,new cljs.core.Keyword(null,"format","format",4040092521),(function (p__8237,ed){var map__8238 = p__8237;var map__8238__$1 = ((cljs.core.seq_QMARK_.call(null,map__8238))?cljs.core.apply.call(null,cljs.core.hash_map,map__8238):map__8238);var to = cljs.core.get.call(null,map__8238__$1,new cljs.core.Keyword(null,"to","to",1013907949));var from = cljs.core.get.call(null,map__8238__$1,new cljs.core.Keyword(null,"from","from",1017056028));if(lt.plugins.paredit.loc_GT_loc.call(null,to,from)) +cljs.core._add_method.call(null,lt.plugins.paredit.do_edit,new cljs.core.Keyword(null,"format","format",4040092521),(function (p__9226,ed){var map__9227 = p__9226;var map__9227__$1 = ((cljs.core.seq_QMARK_.call(null,map__9227))?cljs.core.apply.call(null,cljs.core.hash_map,map__9227):map__9227);var to = cljs.core.get.call(null,map__9227__$1,new cljs.core.Keyword(null,"to","to",1013907949));var from = cljs.core.get.call(null,map__9227__$1,new cljs.core.Keyword(null,"from","from",1017056028));if(lt.plugins.paredit.loc_GT_loc.call(null,to,from)) {return lt.objs.editor.indent_lines.call(null,ed,from,to,"smart"); } else {return lt.objs.editor.indent_lines.call(null,ed,to,from,"smart"); @@ -392,8 +436,8 @@ lt.objs.command.command.call(null,new cljs.core.PersistentArrayMap(null, 3, [new } })], null)); lt.objs.command.command.call(null,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"command","command",1964298941),new cljs.core.Keyword(null,"paredit.select.parent","paredit.select.parent",4454322891),new cljs.core.Keyword(null,"desc","desc",1016984067),"Paredit: Select expression",new cljs.core.Keyword(null,"exec","exec",1017031683),(function (type){var temp__4092__auto__ = lt.objs.editor.pool.last_active.call(null);if(cljs.core.truth_(temp__4092__auto__)) -{var ed = temp__4092__auto__;if(cljs.core.truth_((function (){var or__6744__auto__ = cljs.core.not.call(null,new cljs.core.Keyword("lt.plugins.paredit","orig-pos","lt.plugins.paredit/orig-pos",1406198178).cljs$core$IFn$_invoke$arity$1(cljs.core.deref.call(null,ed)));if(or__6744__auto__) -{return or__6744__auto__; +{var ed = temp__4092__auto__;if(cljs.core.truth_((function (){var or__7811__auto__ = cljs.core.not.call(null,new cljs.core.Keyword("lt.plugins.paredit","orig-pos","lt.plugins.paredit/orig-pos",1406198178).cljs$core$IFn$_invoke$arity$1(cljs.core.deref.call(null,ed)));if(or__7811__auto__) +{return or__7811__auto__; } else {return lt.objs.editor.selection_QMARK_.call(null,ed); } @@ -406,9 +450,39 @@ return lt.plugins.paredit.batched_edits.call(null,lt.plugins.paredit.select.call {return null; } })], null)); +lt.objs.command.command.call(null,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"command","command",1964298941),new cljs.core.Keyword(null,"paredit.select.child.left","paredit.select.child.left",600526906),new cljs.core.Keyword(null,"desc","desc",1016984067),"Paredit: Select child expression on left",new cljs.core.Keyword(null,"exec","exec",1017031683),(function (){var temp__4092__auto__ = lt.objs.editor.pool.last_active.call(null);if(cljs.core.truth_(temp__4092__auto__)) +{var ed = temp__4092__auto__;if(cljs.core.truth_((function (){var or__7811__auto__ = cljs.core.not.call(null,new cljs.core.Keyword("lt.plugins.paredit","orig-pos","lt.plugins.paredit/orig-pos",1406198178).cljs$core$IFn$_invoke$arity$1(cljs.core.deref.call(null,ed)));if(or__7811__auto__) +{return or__7811__auto__; +} else +{return lt.objs.editor.selection_QMARK_.call(null,ed); +} +})())) +{lt.object.merge_BANG_.call(null,ed,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword("lt.plugins.paredit","orig-pos","lt.plugins.paredit/orig-pos",1406198178),lt.objs.editor.__GT_cursor.call(null,ed)], null)); +} else +{} +return lt.plugins.paredit.batched_edits.call(null,lt.plugins.paredit.select_inner.call(null,lt.plugins.paredit.ed__GT_info.call(null,ed),new cljs.core.Keyword(null,"left","left",1017222009))); +} else +{return null; +} +})], null)); +lt.objs.command.command.call(null,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"command","command",1964298941),new cljs.core.Keyword(null,"paredit.select.child.right","paredit.select.child.right",1089769709),new cljs.core.Keyword(null,"desc","desc",1016984067),"Paredit: Select child expression on right",new cljs.core.Keyword(null,"exec","exec",1017031683),(function (){var temp__4092__auto__ = lt.objs.editor.pool.last_active.call(null);if(cljs.core.truth_(temp__4092__auto__)) +{var ed = temp__4092__auto__;if(cljs.core.truth_((function (){var or__7811__auto__ = cljs.core.not.call(null,new cljs.core.Keyword("lt.plugins.paredit","orig-pos","lt.plugins.paredit/orig-pos",1406198178).cljs$core$IFn$_invoke$arity$1(cljs.core.deref.call(null,ed)));if(or__7811__auto__) +{return or__7811__auto__; +} else +{return lt.objs.editor.selection_QMARK_.call(null,ed); +} +})())) +{lt.object.merge_BANG_.call(null,ed,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword("lt.plugins.paredit","orig-pos","lt.plugins.paredit/orig-pos",1406198178),lt.objs.editor.__GT_cursor.call(null,ed)], null)); +} else +{} +return lt.plugins.paredit.batched_edits.call(null,lt.plugins.paredit.select_inner.call(null,lt.plugins.paredit.ed__GT_info.call(null,ed),new cljs.core.Keyword(null,"right","right",1122416014))); +} else +{return null; +} +})], null)); lt.objs.command.command.call(null,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,"command","command",1964298941),new cljs.core.Keyword(null,"paredit.unwrap.parent","paredit.unwrap.parent",826624900),new cljs.core.Keyword(null,"desc","desc",1016984067),"Paredit: Unwrap parent. e.g. (a b c) => a b c",new cljs.core.Keyword(null,"exec","exec",1017031683),(function (type){var temp__4092__auto__ = lt.objs.editor.pool.last_active.call(null);if(cljs.core.truth_(temp__4092__auto__)) -{var ed = temp__4092__auto__;if(cljs.core.truth_((function (){var or__6744__auto__ = cljs.core.not.call(null,new cljs.core.Keyword("lt.plugins.paredit","orig-pos","lt.plugins.paredit/orig-pos",1406198178).cljs$core$IFn$_invoke$arity$1(cljs.core.deref.call(null,ed)));if(or__6744__auto__) -{return or__6744__auto__; +{var ed = temp__4092__auto__;if(cljs.core.truth_((function (){var or__7811__auto__ = cljs.core.not.call(null,new cljs.core.Keyword("lt.plugins.paredit","orig-pos","lt.plugins.paredit/orig-pos",1406198178).cljs$core$IFn$_invoke$arity$1(cljs.core.deref.call(null,ed)));if(or__7811__auto__) +{return or__7811__auto__; } else {return lt.objs.editor.selection_QMARK_.call(null,ed); } diff --git a/paredit_compiled.js.map b/paredit_compiled.js.map index 892e63f..037082c 100644 --- a/paredit_compiled.js.map +++ b/paredit_compiled.js.map @@ -1,61 +1,66 @@ {"version":3, - "file":"/Users/chris/lighttable/plugins/pareditcompiled.map", + "file":"compiled.map", "sources": ["src/lt/plugins/paredit.cljs"], - "lineCount":436, + "lineCount":510, "mappings": - "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", "names": ["lt.plugins.paredit/opposites", "lt.plugins.paredit/dir-swap", "lt.plugins.paredit/form-start", "lt.plugins.paredit/form-end", "lt.plugins.paredit/end-loc", "ed", "last-line", - "lt.objs.editor/last-line", "x__7051__auto__", "y__7052__auto__", + "lt.objs.editor/last-line", "x__8118__auto__", "y__8119__auto__", "lt.objs.editor/line-length", "lt.plugins.paredit/loc>loc", "l1", "l2", "lt.plugins.paredit/move-loc-line", "loc", "dir", "neue", "cljs.core/update-in", "cljs.core/+", "cljs.core/=", "cljs.core/assoc", "lt.plugins.paredit/move-loc", "len", - "lt.objs.editor/adjust-loc", "p__8173", "vec__8175", "cljs.core/nth", - "lt.plugins.paredit/within-range", "start", "end", "cur", "p__8176", - "map__8178", "cljs.core/seq?", "cljs.core/apply", + "lt.objs.editor/adjust-loc", "p__9147", "vec__9149", "cljs.core/nth", + "lt.plugins.paredit/within-range", "start", "end", "cur", "p__9150", + "map__9152", "cljs.core/seq?", "cljs.core/apply", "cljs.core/hash-map", "cljs.core/get", "lt.plugins.paredit/scan", "regex", "opts", "search-range", "line", "lt.objs.editor/line", "cljs.core/not", "ch", "next-loc", "next-line", "cljs.core/not=", - "and__6732__auto__", "cljs.core/re-seq", + "and__7799__auto__", "cljs.core/re-seq", "lt.plugins.paredit/string|comment?", "allow-strings?", "type", "lt.objs.editor/->token-type", "lt.util.cljs/str-contains?", - "p__8179", "map__8182", "lt.plugins.paredit/paired-scan", "for", - "negation", "allow-end?", "only-for?", "vec__8183", "stack-chars", + "p__9153", "map__9156", "lt.plugins.paredit/paired-scan", "for", + "negation", "allow-end?", "only-for?", "vec__9157", "stack-chars", "stack-ends", "final-loc", "stack", "valid?", "stackable?", "cljs.core/seq", "cljs.core/last", "cljs.core/conj", "cljs.core/pop", - "lt.plugins.paredit/form-boundary", "vec__8186", "vec__8187", "c", - "or__6744__auto__", "cljs.core/re-pattern", - "lt.plugins.paredit/escaped-paired-scan", "thing", "vec__8189", - "lt.plugins.paredit/string-bounds", - "lt.plugins.paredit/token-bounds", "vec__8191", + "lt.plugins.paredit/form-boundary", "vec__9160", "vec__9161", "c", + "or__7811__auto__", "cljs.core/re-pattern", + "lt.plugins.paredit/inner-form-boundary-right", "vec__9164", + "vec__9165", "lt.plugins.paredit/inner-form-boundary-left", + "vec__9168", "vec__9169", "lt.plugins.paredit/escaped-paired-scan", + "thing", "vec__9171", "lt.plugins.paredit/string-bounds", + "lt.plugins.paredit/token-bounds", "vec__9173", "lt.plugins.paredit/first-non-whitespace", - "lt.plugins.paredit/anchored-move", "anchor-side", "vec__8194", - "vec__8195", "ends", "point", "i", "next", "right?", "bounds", - "cljs.core/first", "cljs.core/second", "p__8196", "map__8199", - "lt.plugins.paredit/grow", "orig", "map__8200", "boundary", - "format-point", "neue-point", "p__8201", "map__8205", - "lt.plugins.paredit/shrink", "map__8206", "vec__8207", "anchor-move", - "format-side", "_", "p__8208", "map__8211", - "lt.plugins.paredit/select", "vec__8212", "p__8213", "map__8216", - "lt.plugins.paredit/unwrap", "vec__8217", "p__8218", "map__8224", + "lt.plugins.paredit/anchored-move", "anchor-side", "vec__9176", + "vec__9177", "ends", "point", "i", "next", "right?", "bounds", + "cljs.core/first", "cljs.core/second", "p__9178", "map__9181", + "lt.plugins.paredit/grow", "orig", "map__9182", "boundary", + "format-point", "neue-point", "p__9183", "map__9187", + "lt.plugins.paredit/shrink", "map__9188", "vec__9189", "anchor-move", + "format-side", "_", "lt.plugins.paredit/inner-form-boundary", + "map__9191", "from", "to", "lt.objs.editor/selection-bounds", + "p__9192", "map__9195", "lt.plugins.paredit/select-inner", + "vec__9196", "p__9197", "map__9200", "lt.plugins.paredit/select", + "vec__9201", "p__9202", "map__9205", "lt.plugins.paredit/unwrap", + "vec__9206", "p__9207", "map__9213", "lt.plugins.paredit/batched-edits", "edits", - "lt.objs.editor/operation", "seq__8225", "chunk__8226", - "count__8227", "i__8228", "cljs.core/-nth", "temp__4092__auto__", - "cljs.core/chunked-seq?", "c__7486__auto__", "cljs.core/chunk-first", + "lt.objs.editor/operation", "seq__9214", "chunk__9215", + "count__9216", "i__9217", "cljs.core/-nth", "temp__4092__auto__", + "cljs.core/chunked-seq?", "c__8553__auto__", "cljs.core/chunk-first", "cljs.core/chunk-rest", "cljs.core/count", "cljs.core/next", "e", - "lt.plugins.paredit/do-edit", "method-table__7596__auto__", - "cljs.core/atom", "prefer-table__7597__auto__", - "method-cache__7598__auto__", "cached-hierarchy__7599__auto__", - "hierarchy__7600__auto__", "cljs.core/get-global-hierarchy", - "cljs.core/MultiFn", "cljs.core/-add-method", "p__8229", "map__8230", - "from", "to", "text", "lt.objs.editor/range", "p__8231", "map__8232", - "lt.objs.editor/replace", "p__8233", "map__8234", "p__8235", - "map__8236", "lt.objs.editor/move-cursor", - "lt.objs.editor/set-selection", "p__8237", "map__8238", + "lt.plugins.paredit/do-edit", "method-table__8663__auto__", + "cljs.core/atom", "prefer-table__8664__auto__", + "method-cache__8665__auto__", "cached-hierarchy__8666__auto__", + "hierarchy__8667__auto__", "cljs.core/get-global-hierarchy", + "cljs.core/MultiFn", "cljs.core/-add-method", "p__9218", "map__9219", + "text", "lt.objs.editor/range", "p__9220", "map__9221", + "lt.objs.editor/replace", "p__9222", "map__9223", "p__9224", + "map__9225", "lt.objs.editor/move-cursor", + "lt.objs.editor/set-selection", "p__9226", "map__9227", "lt.objs.editor/indent-lines", "lt.plugins.paredit/ed->info", "lt.objs.editor/->cursor", "lt.objs.command/command", "lt.objs.editor.pool/last-active", "cljs.core/deref", diff --git a/src/lt/plugins/paredit.cljs b/src/lt/plugins/paredit.cljs index 414ed90..7906fa6 100644 --- a/src/lt/plugins/paredit.cljs +++ b/src/lt/plugins/paredit.cljs @@ -145,6 +145,40 @@ :for (re-pattern (str "[\\" (opposites c) "]"))}))] [start end])) +(defn inner-form-boundary-right + "Finds a form in ed which ends to the left of loc + If loc is the last character of a selection, finds a child form on the right of the selection + Returns [start end] where start and end are editor locations" + [ed loc] + (let [[c end] (paired-scan {:dir :left + :ed ed + :loc (move-loc ed loc :left) + :for form-end}) + [c start] (if-not c + [nil nil] + (paired-scan {:dir :left + :ed ed + :loc (move-loc ed end :left) + :for (re-pattern (str "[\\" (opposites c) "]"))}))] + [start end])) + +(defn inner-form-boundary-left + "Finds a form in ed which starts to the right of loc + If loc is the first character of a selection, finds a child form on the left of the selection + Returns [start end] where start and end are editor locations" + [ed loc] + (let [[c start] (paired-scan {:dir :right + :ed ed + :loc (move-loc ed loc :right) + :for form-start}) + [c end] (if-not c + [nil nil] + (paired-scan {:dir :right + :ed ed + :loc (move-loc ed start :right) + :for (re-pattern (str "[\\" (opposites c) "]"))}))] + [start end])) + (defn escaped-paired-scan [ed loc thing dir] (let [[c end] (paired-scan {:dir dir :ed ed @@ -254,6 +288,32 @@ :to neue-point}) orig))) +(defn inner-form-boundary + "Given an editor ed which has a selection, finds a child form within the expression + Returns [start end] where start and end are editor locations for the child form-boundary + dir should be :left or :right, and determines if a child form on the left or the right should be returned + e.g if the selection is: (my-func [args] (function args)) + (inner-form-boundary ed :left) => start and end locations of \"[args]\" + (inner-form-boundary ed :right) => stat and end locations of \"(function args)\"" + [ed dir] + (let [{:keys [from to]} (editor/selection-bounds ed)] + (if (= dir :left) + (inner-form-boundary-left ed from) + (inner-form-boundary-right ed (move-loc ed to :left))))) + +(defn select-inner + "If editor ed has a selection, selects a child form, on either the left or right of the expression. + dir should be :left or :right + See: inner-form-boundary" + [{ed :ed :as orig} dir] + (let [[start end] (inner-form-boundary ed dir)] + (if (and start end) + (update-in orig [:edits] conj + {:type :cursor + :from start + :to (editor/adjust-loc end 1)}) + orig))) + (defn select [{:keys [ed loc] :as orig} type] (let [[start end] (form-boundary ed loc (when type (re-pattern (str "[\\" type "]"))))] @@ -382,6 +442,32 @@ )) )}) +(cmd/command {:command :paredit.select.child.left + :desc "Paredit: Select child expression on left" + :exec (fn [] + (when-let [ed (pool/last-active)] + (when (or (not (::orig-pos @ed)) + (editor/selection? ed)) + (object/merge! ed {::orig-pos (editor/->cursor ed)})) + (-> (ed->info ed) + (select-inner :left) + (batched-edits) + )) + )}) + +(cmd/command {:command :paredit.select.child.right + :desc "Paredit: Select child expression on right" + :exec (fn [] + (when-let [ed (pool/last-active)] + (when (or (not (::orig-pos @ed)) + (editor/selection? ed)) + (object/merge! ed {::orig-pos (editor/->cursor ed)})) + (-> (ed->info ed) + (select-inner :right) + (batched-edits) + )) + )}) + (cmd/command {:command :paredit.unwrap.parent :desc "Paredit: Unwrap parent. e.g. (a b c) => a b c" :exec (fn [type] @@ -403,6 +489,3 @@ (object/merge! ed {::orig-pos nil})) ) )}) - - -