<p dir="ltr">I beg to differ. There are numerous examples where one would select only a few objects and wanted to have them lined up and the regular tidy algorithm was unable to do anything about it. In most cases objects did not move at all with no explanation to the user as to why things didn&#39;t work out.</p>

<p dir="ltr">Yes, there are two case scenarios. The old tidy can sometimes clean up the patch to an extent which may or may not work out. The new tidy algorithm in pd-l2ork does not aim to do the same thing. It deals with objects are currently selected and lines and first up and then on the second press spaces them evenly out. The key difference between the two is that it is predictable and works every time unlike the old algorithm, which works only sometimes, and even then does not take into account preexisting human-centric arrangement of patch-cords.</p>

<div class="gmail_quote">On Dec 11, 2012 7:47 PM, &quot;Hans-Christoph Steiner&quot; &lt;<a href="mailto:hans@at.or.at">hans@at.or.at</a>&gt; wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
The vanilla tidy algorithm handled this one OK, but normally its not very helpful.  I think getting this kind of thing right means gathering a wide range of examples and edge cases and tweaking it until they all work OK.<br>

<br>
One thing that might be worthwhile for anyone who has a copy of Max/MSP is to play around with their tidy algorithm.  I think they put a lot of work into it, so it would give you an idea of what&#39;s possible.<br>
<br>
IMHO, the l2ork algorithm is probably workable as is, but even with full undo, lots of people will be unhappy to see their patch collapse into a single line.<br>
<br>
.hc<br>
<br>
On Dec 11, 2012, at 5:07 PM, Jonathan Wilkes wrote:<br>
<br>
&gt; I guess there are two questions:<br>
&gt; 1) How does tidy decide to line up the selected objects in a column vs. a row?<br>
&gt; 2) How smart can &quot;tidy up&quot; actually be?  For example in Hans screencapture I<br>
&gt; see three columns of offset objects, but maybe other people see a different pattern.<br>
&gt;<br>
&gt; I guess as long as it works ok for a majority of cases, there&#39;s alway infinite undo.<br>
&gt; Plus I might be able to get my columns by selecting the objects for each column<br>
&gt; at a time, and tidying each column separately.<br>
&gt;<br>
&gt;<br>
&gt; But perhaps if &quot;tidy up&quot; would end up moving an object onto another object it should<br>
&gt; offset the one being moved (like it does if two objects are sitting directly on top of<br>
&gt; each other before tidying).<br>
&gt;<br>
&gt;<br>
&gt; -Jonathan<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;&gt; ________________________________<br>
&gt;&gt; From: Ivica Ico Bukvic &lt;<a href="mailto:ico@vt.edu">ico@vt.edu</a>&gt;<br>
&gt;&gt; To: Hans-Christoph Steiner &lt;<a href="mailto:hans@at.or.at">hans@at.or.at</a>&gt;<br>
&gt;&gt; Sent: Tuesday, December 11, 2012 4:51 PM<br>
&gt;&gt; Subject: Re: [PD] Pd-L2ork Features<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; Just tried it here and it works just fine with bunch of lengthy comments. The trick is first Ctrl+Y lines it up across an axis, the second one spaces it out evenly. So, I think the only thing you didn&#39;t do was press it twice (AFAICT from the screenshot).<br>

&gt;&gt;<br>
&gt;&gt; On 12/11/2012 04:49 PM, Ivica Ico Bukvic wrote:<br>
&gt;&gt;<br>
&gt;&gt; Have you tested this on pd-l2ork since it calculates width differently than pd-extended might? Can you send the example patch?<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; On 12/11/2012 04:32 PM, Hans-Christoph Steiner wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Nice videos, the GUI and GOP handles are great.  I like the improved tidy-up.  I was messing around with it, the problem is that while is does seem to work better in cases like you showed, but it seems to have bad edge cases. Here&#39;s an example of the results of running it on a random patch I had on my desktop and compared to the vanilla result:<br>

&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; .hc On Dec 11, 2012, at 3:42 PM, Jonathan Wilkes wrote:<br>
&gt;&gt;&gt;&gt; Hello, I thought I&#39;d post some of the recent changes in Pd-L2ork.  Here are some: iemgui anchors:<br>
&gt; <a href="http://www.youtube.com/watch?v=5SM1hiz9S5U&amp;feature=plcp" target="_blank">http://www.youtube.com/watch?v=5SM1hiz9S5U&amp;feature=plcp</a> gop anchor:<br>
&gt; <a href="http://www.youtube.com/watch?v=uMu5JcKE1sU&amp;feature=plcp" target="_blank">http://www.youtube.com/watch?v=uMu5JcKE1sU&amp;feature=plcp</a> improved tidy-up: <a href="http://www.youtube.com/watch?v=Ms5yOvgoK_Q&amp;feature=plcp" target="_blank">http://www.youtube.com/watch?v=Ms5yOvgoK_Q&amp;feature=plcp</a> array update notification:<br>

&gt; <a href="http://www.youtube.com/watch?v=q1HbYrvNxEg&amp;feature=plcp" target="_blank">http://www.youtube.com/watch?v=q1HbYrvNxEg&amp;feature=plcp</a> move to front/back:<br>
&gt; <a href="http://www.youtube.com/watch?v=af9KiJfSp68&amp;feature=plcp" target="_blank">http://www.youtube.com/watch?v=af9KiJfSp68&amp;feature=plcp</a> infinite undo (with lyrical Pd accompaniment!):<br>
&gt; <a href="http://www.youtube.com/watch?v=wTPZxcgWoI0&amp;feature=plcp" target="_blank">http://www.youtube.com/watch?v=wTPZxcgWoI0&amp;feature=plcp</a> from the most recent git commits, presets:<br>
&gt; <a href="http://www.youtube.com/watch?v=IS7_x727kZ4&amp;feature=plcp" target="_blank">http://www.youtube.com/watch?v=IS7_x727kZ4&amp;feature=plcp</a> The presets video unfortunately speeds up in the middle for<br>
&gt; some unknown reason.  In that part it shows how I can<br>
&gt; copy/paste an abstraction and that instance gets its own state<br>
&gt; associated with it, which is stored with the preset_hub. -Jonathan _______________________________________________ <a href="mailto:Pd-list@iem.at">Pd-list@iem.at</a> mailing list<br>
&gt; UNSUBSCRIBE and account-management -&gt; <a href="http://lists.puredata.info/listinfo/pd-list" target="_blank">http://lists.puredata.info/listinfo/pd-list</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; _______________________________________________ <a href="mailto:Pd-list@iem.at">Pd-list@iem.at</a> mailing list<br>
&gt; UNSUBSCRIBE and account-management -&gt; <a href="http://lists.puredata.info/listinfo/pd-list" target="_blank">http://lists.puredata.info/listinfo/pd-list</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; --<br>
&gt; Ivica Ico Bukvic, D.M.A<br>
&gt; Composition, Music Technology<br>
&gt; Director, DISIS Interactive Sound &amp; Intermedia Studio<br>
&gt; Director, L2Ork Linux Laptop Orchestra<br>
&gt; Head, ICAT IMPACT Studio<br>
&gt; Virginia Tech<br>
&gt; Department of Music<br>
&gt; Blacksburg, VA 24061-0240<br>
&gt; <a href="tel:%28540%29%20231-6139" value="+15402316139">(540) 231-6139</a><br>
&gt; <a href="tel:%28540%29%20231-5034" value="+15402315034">(540) 231-5034</a> (fax) <a href="http://disis.music.vt.edu" target="_blank">disis.music.vt.edu</a> <a href="http://l2ork.music.vt.edu" target="_blank">l2ork.music.vt.edu</a> <a href="http://ico.bukvic.net" target="_blank">ico.bukvic.net</a><br>

&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; --<br>
&gt; Ivica Ico Bukvic, D.M.A<br>
&gt; Composition, Music Technology<br>
&gt; Director, DISIS Interactive Sound &amp; Intermedia Studio<br>
&gt; Director, L2Ork Linux Laptop Orchestra<br>
&gt; Head, ICAT IMPACT Studio<br>
&gt; Virginia Tech<br>
&gt; Department of Music<br>
&gt; Blacksburg, VA 24061-0240<br>
&gt; <a href="tel:%28540%29%20231-6139" value="+15402316139">(540) 231-6139</a><br>
&gt; <a href="tel:%28540%29%20231-5034" value="+15402315034">(540) 231-5034</a> (fax)<br>
&gt; <a href="http://disis.music.vt.edu" target="_blank">disis.music.vt.edu</a><br>
&gt; <a href="http://l2ork.music.vt.edu" target="_blank">l2ork.music.vt.edu</a><br>
&gt; <a href="http://ico.bukvic.net" target="_blank">ico.bukvic.net</a><br>
&gt;&gt;<br>
&gt;&gt;<br>
<br>
</blockquote></div>