Topic on Extension talk:BreadCrumbs

Feedback on the newly written version v0.2+

6
Kghbln (talkcontribs)

Heiya Tony,

I just had a look at the extension and deployed it to my prototype wiki. A lot of cool stuff was added most notably, from my point of view, the ability to hide, the name of the namespace from the trail element and the ability to filter out repeatedly visited pages (this one was on the wish list of a couple of users for a long time) and last but not least the possibility for users to manipulate the behaviour of the bread crumbs in their preferences.

There are three things I would like to add:

  1. filtering out repeatedly visited pages: The extension filters out correctly the duplicates, however it does not change the position of the element. I would be great if the currently visited page is always at the end of the trail. The duplicate should be removed from the previous position instead of preventing it from being displayed a second time at the end of the trail. Thus the trail would become more intuitive.
  2. setting preferences for bread crumbs by the user: Sometimes there are wikis with a highly adapted skin which means that a different setting by a user may break the standard look and feel of the skin. In these cases an administrator would like to disable the ability to allow users to change the standard settings. I would therefore be great if there would be a parameter which controls the user's ability to set preferences, e.g. something like $wgBreadCrumbsAllowUPOs = true;
  3. storing history in the database: In your features file you mentioned this as a thing to do in the future. I guess this is an excellent idea, since I think that this will overcome this extension's need to invalidate page caches all the time to work properly. The ability to restore the trails as the user logs in, appeals to me too.

It would be very cool to see these changes become reality and making it an even better piece of work as it is already. :) However, I have no idea regarding the effort this would take. So ... Hmm, I added these wishes in the opposite order of their importance. Never mind. O_o

So far I have encountered one major regression in comparison to version v0.1. Previously it was possible to manipulate the trail via CSS using #BreadCrumbsTrail. This possibility was abandoned and instead a standard class is used. I believe that it is always the best solution to provide a separate class for CSS manipulation. This is closely related to point 2 (see above).

I realised that you took the I18n file from the JSBreadcrumbs extension to relieve the translators from doing heaps of double work. I guess this change will be rejected, since this also means that existing translations for the v0.1 version of this extension was abandoned. I advise to revert back to the old file and just add the new messages to the English language section. The I18n process via translatewiki.net and the handling over there is very good (including translation suggestions based on already existing translations) and you will see that the translations for all major languages will roll in pretty soon.

Cheers and thank you for your effort you put into coding for this extensions. I very much appreciate this.

AABoyles (talkcontribs)

Hey Kghbln,

Thanks for test-driving my extension. Your feedback is awesome! Here are my initial (i.e. before actually coding anything new/different) responses.

Regarding the added features:

  1. filtering out repeatedly visited pages: I've thought about this, but it's a very subtle setting. I think it is the kind of thing that I might want to expose to administrators, but not to users. I'll play with the code and follow-up when I get a chance.
  2. setting preferences for bread crumbs by the user: That's a fantastic suggestion. I'll add it immediately.
  3. storing history in the database: I'm afraid I haven't gotten deeply enough into the mediawiki database architecture to really understand the ramifications of this. Specifically, I don't know where the information should be stored. Do you have any suggestions?

Regarding the regressions:

  1. CSS Manipulation: This is something I really want to do better. I moved the breadcrumbs to the subtitle because my particular application called for that behavior, but I really do wish there was a better, more user-configurable solution. I'll look into exposing the trail to admin-specified CSS.
  2. Translation: I haven't looked into the translation process at all. I just borrowed the JSBreadCrumbs i18n file because it looked much more comprehensive, but I knew it was basically cheating. I'll revert to the original i18n file (with some updates for the new interfaces).

Thanks again--I really appreciate your input. Cheers!

Kghbln (talkcontribs)

Heiya Tony,

I have used this one for years now and I am happy for every progress it makes. Thus testing it is the least I can do and I am happy to do so. First of all: Wow! You already worked on most of the wishes and issues I pointed out in my thread. Thank you so much for doing this!

Added features:

  1. filtering out repeatedly visited pages: I have played a bit with the parameters $wgBreadCrumbsIgnoreRefreshes and wgBreadCrumbsRearrangeHistory which I believe are meant to manipulate the display in conjunction with $wgDefaultUserOptions['breadcrumbs-filter-duplicates']. So far these settings do not have any effect. It just filters out the duplicated pages, but does not rearrange them.
  2. setting preferences for bread crumbs by the user: Great thank you. This works like a charm.
  3. storing history in the database: Ouch, since I am not a coder I cannot provide a lot of information. However, I think that all extensions which have to write to the database for some reason do it in a new extension specific table to prevent interfering with the existing ones provided by MW itself. Perhaps asking at IRC would be advisable in this situation.

Detected regressions:

  1. CSS manipulation: Great, it is good to have this feature back. This works like a charm, too.
  2. Translation: The translation process for MediaWiki is excellent. Basically you just have to provide the English messages within the I18n-file and the rest is done via translatewiki.net, provided that the extension is on Gerrit. Even two languages versions of Firefox switched to this system recently. One thing I realised: You did not use UTF-8 for the revert of the messages so practically all messages are broken due to the wrong charset code used.
  3. Breadcrumbs for anons: I just realised that you switched the standard setting of $wgBreadCrumbsShowAnons from "true" to "false". I think this should be changed back since it will cater for the standard needs of more websites than the other way around.

Cheers and thank you

Kghbln (talkcontribs)

Heiya Tony,

the messages just rolled into translatewiki.net for internationalisation. I have added the /qqq message documentation providing explanations for the respective messages. This is a thing that may also be done via translatewiki.net in case the coder did not provide it. I forgot to tell you about this, I am afraid. :| Additionally I have done the translation into German. I saw one typo in "Prefs-breadcrumbs-namespaces": Namespaces should not be capitalised.

Another thing I just saw. The fields on Special:Preferenes for the number of breadcrumbs to show and the separator to use should perhaps only be a cm wide to indicate that there is not much more to enter. The field for the preceding text may stay like this. I guess that's it for the moment. :)

Cheers

AABoyles (talkcontribs)

Hey Kghbln,

The $wgBreadCrumbsRearrangeHistory is not yet working. It's going to take some considerable rewriting to get it working properly. I might work on it, but the extension is already well beyond the parameters of my company's project.

I set the default 'show anons' setting to false.

I put in limitations for the number of crumbs box in the options menu, but I'm not certain if it looks correct.

Thanks for filling me in on the translatewiki.net process. That's really cool! Embarrassingly, I screwed it up in the source tree, but it will get fixed by the bot later today (I hope).

Best regards,

Kghbln (talkcontribs)

Heiya Tony,

I just tested the last version and I am really impressed and happy with it. So will the people involved with your project. :) Everything works as expected.

I must admit that I saw $wgBreadCrumbsRearrangeHistory in the file an just jumped at it. I was not aware that it is not live yet. I guess it will be some time. Still the latest version of this extension is the best ever even without this. No worries about this one.

Great, the field on Special:Preferenes for the number of breadcrumbs to show looks just like as proposed. You could still do this size/maxlenght-tuning for the delimiter field, too. I have added it locally and it works as expected. As you like.

Yes, the translation process has been sorted out by now and already nine complete translations + the documentation are available. Just within a couple of days. :)

Once again, thank you for your work on this extension.

Cheers

Reply to "Feedback on the newly written version v0.2+"