User talk:PanSola

Welcome to the talk page of a devout follower of Lyssa!

= This user is an Admin = If you require the attention of an administrator, you can leave a message on the Admin noticeboard, which I watch. If you want to definitely make sure I be involved in the issue, leave a note here pointing to the discussion on the Admin Noticeboard.

= Archives =
 * Past mistakes are moved into the /MistakeArchive
 * Other closed issues are moved to /Archive/, /Archive2/, /Archive3/, /Archive4/, /Archive5/, /Archive6/, /Archive7/, /Archive8/

= Messages =

Sortable QR
that is by far the coolest thing i have seen all week. --Honorable Sarah 00:54, 12 April 2007 (CDT)


 * And I'm surprised nobody has done it on GuildWiki yet, considering we got the Javascript to do it ages ago (before I came back). There's a minor issue with the current version of the script though, making the spacing around the sort button ugly )-:  -PanSola 00:56, 12 April 2007 (CDT)


 * The whole thing also looks better in Chinese, because characters naturally go in the vertical direction. http://guildwars.wikia.com/wiki/MesmerSkillDescriptionChart  Sadly, most of the data is out of date there, as I don't have the energy to keep it updated. -PanSola 00:58, 12 April 2007 (CDT)

Is there anyway we could get a stable sorting algorithm? With such an algo, it would be possible to do multiple level sorts by just doing them one after the other (for example: sorting by attribute and name -> sort by name, then attribute). From the tests I did, this seems to not work right now, which would mean that it is using an unstable sorting algorithm. I couldn't find the piece of javascript implementation we use, but if you can point me to it, I could modify it into a stable sort. --Theeth (talk)   12:55, 14 April 2007 (CDT)
 * Yes it's possible, it's on my to-do list, but it's much slower so I'm thinking of making it an "advanced" option that is not enabled by default. The javascript I am using right now (which isn't the one you guys see) is User:PanSola/sortable_mod.js.  -PanSola 16:06, 14 April 2007 (CDT)

Try this instead of shaker sort. It's a swapless stable quicksort with non-random pivot. That should fix the speed issue of the sorting. (no guaranty on the errorlessness of the code, it's adapted from some C code I have lying around, my JS skills might be a bit rusty). --Theeth (talk)   16:43, 14 April 2007 (CDT)

static void qsort_data(list, comp_func, head, tail) { pivot = list[head]; ihead = head; itail = tail;

while (head < tail) {		while (comp_func(list[tail], pivot) >= 0 && head < tail) tail--;

if (head != tail) {			list[head] = list[tail] head++; }

while (comp_func(list[head], pivot) <= 0 && head < tail) head++;

if (head != tail) {			list[tail] = list[head] tail--; }	}

list[head] = pivot; if (ihead < head) { qsort_data(t, ihead, head-1); }	if (itail > head) { qsort_data(t, head+1, itail); } }

function qsort(list, comp_func) { qsort_data(list, comp_func, 0, list.length - 1); }


 * I thought quicksort with non-random pivot, by definition, has terrible worse-case performances. O(n^2). -PanSola 17:48, 14 April 2007 (CDT)
 * With presorted list, yes, it's O(n^2) operations and O(n) storage (recursion) whereas shaker sort's worst case is O(n^2) operations and O(1) storage, but average cases are much better with quicksort than shaker. Moreover, the non-random pivot is rather easy to fix, I just didn't want to hunt around for JS randomize functions. --Theeth (talk)   18:33, 14 April 2007 (CDT)

I've been working with some sortable tables in my User space when I came across the work you've been doing. One thing I have been trying unsuccessfully to implement is marking specific columns as non-sortable. I saw that you have a template/function call { {weapon qr top}} that implements this but I can not for the life of me find the article to look at the implementation. All attempts to find weapon qr top return no results. Where can I find this article? I also read in one of the posts that you have a work-around for the current javascript stripping out template/function calls from header rows (my second problem). Would you also let me know where to find information on that fix as well? Thanks! --  Glamtre  (Talk) 13:55, 16 April 2007 (CDT)


 * Template:weapon qr top sets certain header cells to be class="unsortable", which then gets processed by the javascript MediaWiki:sortable_mod.js. It's not exactly documented, but hopefully the code isn't too hard to understand.  Let me know if you have specific questions.  As for the tag-stripping, it's a very tiny modification used in sortable_mod.js also.  The original behavior is in, but my sortable_mod.js completely overrides it. -PanSola 02:07, 17 April 2007 (CDT)


 * Thanks for the info. I totally forgot about the Template namespace and I REALLY hate wiki search!  Are there any plans for your updated code to replace the installed class="sortable" code?  I am happy to implement your code in my namespace for testing, but if it works one way for me and other for someone else I consider that a bad situation. --  Glamtre  [[Image:Axe-icon-right.png]] (Talk) 12:41, 20 April 2007 (CDT)


 * I've been working on it. But IE compatibility seems to be a very weird issue. -User:PanSola (talk to the [[Image:follower of Lyssa.png]]) 18:45, 20 April 2007 (CDT)

Proposal
Well, you told me to propose one, so how about this? Looks decent to me --Gimmethegepgun 02:21, 4 April 2008 (UTC)

Moar Monaco
Right now, the Swords and Shield emblem that has been in the top left corner since time immemorial is being chopped in half vertically. It doesn't look great. 02:47, 4 April 2008 (UTC)