Wikibooks:Reading room/Proposals

From Wikibooks, open books for an open world
Jump to: navigation, search
Replacement filing cabinet.svgArchivesWikibooks Discussion Rooms
Discussions Assistance Requests
General | Proposals | Projects | Featured books General | Technical | Administrative Deletion | Undeletion | Import | Permissions

Welcome to the Proposals reading room. On this page, Wikibookians are free to talk about suggestions for improving Wikibooks.


I'd like to invite suggestions and opinions on an idea I attempted some years ago, and am thinking of trying again with an improved internal look-and-feel.

My idea was to have a single template that describes the organization of a whole book, called (in the current version) Template:name of book/Navlist, and then a suite of templates you can place on the pages of the book that automatically generate a table of contents, or a navigation box for the top or bottom of a page, or whatever other such thing is wanted. Using, of course, various formats for the TOC or the navboxes, depending on what is wanted for the particular book.

I implemented this, but at the time I had to rely entirely on wiki templates, and as a result, the format of the navlist was a bit odd-looking. (There were also some size limits because generating things from the navlist involved large numbers of template calls.) You can see the suite I created at {{Navlist}}, an example of a book using it at Conlang, and the navlist for that book at {{Conlang/Navlist}}.

I now have the means to rewrite the suite templates so that each book navlist uses a more readable format, and the suite templates parse the book navlist (which also drastically reduces the number of template calls involved).

So here are some questions, if anyone would like to offer their thoughts:

  • Is this a worthwhile idea to pursue?
  • What format should the navlist for each book use? Something based on wiki list notation, perhaps? Or something else?
  • What sorts of formats ought to be supported for tables of contents, top-boxes, bottom-boxes? What other kinds of things might be generated from the book's navlist?
  • (thrown in, gratis) Suggestions for other kinds of things that could benefit from being generated automatically, like this? I know of a Wikijunior book, for instance, that has a glossary, and then repeats items from the glossary on content pages here and there; I'm thinking a template could be set up so on the content page you can just say, basically, put the glossary definition of such-and-such here, and the template would go parse the glossary and snarf the appropriate definition from it. Or possibly one would have the glossary data in a template, and the glossary page itself would also be generated by extracting data from that template.

Miscellaneous notes:

I was worried, from the start, that the navlist would be vulnerable to mistakes, or vandalism, as a single-point-of-failure; however (unlike Wikidata which is outside the projects it affects), the navlist is grouped with the book. I have in mind, in the long run, we could build a tool for checking to detect dropped pages, and perhaps other kinds of anomalies.
I belive strongly that control of a project should rest in wiki markup, maximizing its accessibility to ordinary wiki users (even if in some cases it's fully protected; it's still more visible and understandable as wiki markup). So I've developed a device for implementing sophisticated stuff within wiki markup (not yet imported to Wikibooks, but I anticipate doing so; atm it's yonder). An example of using it for a navlist-like constomization device is n:Template:Infobox; that's a generic news infobox, where you can just name a category, like {{infobox|France}}, and it'll go look for a customization file for France; the customization file, if it exists, calls a template that sets up a wiki table containing the customizing parameters, so, and {{infobox}} parses the wiki table.

--Pi zero (discusscontribs) 14:20, 3 April 2015 (UTC)

Really interesting ideas. The stub template on the French Wikipedia, w:fr:Modèle:Ébauche, works like the kind of template you're describing (I think). {{Ébauche|France}} calls on {{Ébauche/paramètres France}} for image, portal to link to, category, and so forth. As regards the Navlist, it seems like a good and very useful idea. I am concerned, though, that it is confusing for an editor unfamiliar with the workings of wikicode to add or edit the table of contents at a page like Template:Conlang/Navlist. Is there a way to hide more of the code from a casual editor? Liam987 talk 20:21, 4 April 2015 (UTC)
@Liam987: The scary notation of {{Conlang/Navlist}} was always one of the things that bothered me about it, even though I was pretty excited I got the suite to work. It's now possible to use almost any (wiki-based) syntax we want, which presents a different kind of problem in that, with no constraints to force us to do things a certain way, we have to decide what we think would be most useful — most readable and most writeable, presumably. It may turn out that there are practical constraints after all, when I get into the coding, but meanwhile, I'm interested in any thoughts on what others think might work well. --Pi zero (discusscontribs) 23:03, 4 April 2015 (UTC)
@Pi zero: I've added a Navlist using your template on Breton, which I've been restructuring around imported Wikiversity material. It works very well, although one comment I have is that it would be useful to be able to have multiple levels of navigation in the {{Navlist/Top}} template. For example, the Breton books is structured into six levels and multiple lessons for level. I would like to be able to have the Navbox at the top of each page to link both to the next level and also to the next lesson, so that Breton/Level 2/Lesson 2 would link to Breton/Level 2/Lesson 1 and Breton/Level 2/Lesson 3, and then below that also to Breton/Level 1 and to Breton/Level 2. Also, more customizability as to which order pages are linked to, and maybe the ability to add pages to the Navbox list but not have them automatically included in the sequence for {{Navlist/Top}} and {{Navlist/Bottom}}, for optional subpages that are outside the main sequence of the book. Overall, though, these templates are great and I compliment you on them. Liam987 talk 20:59, 8 May 2015 (UTC)
@Liam987: Do you have suggestions on the question of navlist format? Since you've actually used it. I'm thinking the current format is extremely heavy on braces and pipes (wiki template-call notation), and since I think I need a more efficient and simpler internal implementation anyway, I can use pretty much any format I want. There's a bewildering range of possibilities, whereas when I first implemented the template suite I had such technical constraints I barely came up with one way it could work. At that time I thought about more complicated navbox formats and basically gave up because the implementation would be too hairy; now I could tackle more more elaborate navbox formats once I overhaul the internals, but I need to get the navlist format issue settled before I overhaul the internals. --Pi zero (discusscontribs) 10:20, 11 July 2015 (UTC)
@Pi zero: That's very interesting indeed, and the Wikilisp thing is just beautiful. In the Haskell book we have our own intricate web of templates, far less sophisticated than yours, that allows us to change the TOC and have it reflected everywhere with (almost) just one change − and I'm really glad it exists. The more books can benefit from similar features through a generic implementation the better. Two extra comments:
  • One feature you might find worthy to implement is grouping. In the Haskell book, the TOC is subdivided in groups of 8-12 pages, and the navigation templates allow you to switch to a page within the same group without having to return to the index, as well as moving to the start of a different group. That can make navigation a lot smoother in large books.
  • Perhaps I'm not thinking straight right now, but by "Or possibly one would have the glossary data in a template, and the glossary page itself would also be generated by extracting data from that template" do you really mean it is feasible to build something like a glossary by doing reverse lookups across a book? The use case I have in mind is a back-of-the-book index of terms. Several times already I have been tempted to create one for Haskell, but the maintenance burden for a large book might become unmanageable. Automated generation would definitely make it feasible, even if, say, it turns out that we would have to request updates manually for technical reasons.
Duplode (discusscontribs) 19:54, 13 July 2015 (UTC)
@Duplode: If there's some sort of "navlist" that lists all the pages in the book, it ought to be possible to go through that list of pages, extract glossary-item definitions from each of them, sort those entries in whatever way one wants, and produce a glossary page. I can think of two possible problems with that. One problem is that for a large book it might exceed some transclusion limits of the wiki software (which is also a potential problem with building a "print version" page; I can maybe see a tolerably doable way around that, eventually). A probably-lesser problem is that if the glossary is really dependent on all the other pages of the book, then the glossary will have to be recomputed every time any page of the book is edited. --Pi zero (discusscontribs) 02:57, 14 July 2015 (UTC)

Status note: I perceive this is a hefty item clearly worth tackling. For scheduling perspective, here are some other items on my "short list".

  • Atm I'm working on adding error-handling robustness features to the wikidialog tools. I see this as a prerequisite to importing wikidialog to en.wb for serious use here.
  • I also feel that, before importing wikidialog here, we should upgrade our common.js file by shifting imported scripts to gadgets (as discussed in a thread further down on this page (here)).
  • We have a major problem on en.wb with the design of our category hierarchy, something that was raised a couple of months ago on QU's user talk (here). I feel like I should probably try to address that problem before getting immersed in the deep design challenges of upgrading the navlist facility.

--Pi zero (discusscontribs) 16:03, 10 September 2015 (UTC)

Really hoping to get the low-level error-handling support done before end-of-year (admittedly challenging with the distractions of the coming week). --Pi zero (discusscontribs) 12:58, 23 December 2015 (UTC)
Awesome Interesting concept. I look forward to implement it somewhere. I'll be revising the sources and providing some feedback later. Any help needed? Keep up the good work! --Vito Francisco 21:55, 26 December 2015 (UTC)

Wikijunior search, navbar[edit]

It's been suggested, by User:Barry Desborough, that when viewing pages on Wikijunior, search should be of Wikijunior rather than of the whole of Wikibooks. At least as a default that sounds to me like a good idea. Just at this instant, I have only speculations about how one might accomplish it, though. Does anyone else have notions of ways to do it?

(Btw, it occurs to me one might also wish to customize the left-hand navbar on Wikijunior; there too, I don't immediately know how to do it and invite suggestions.) --Pi zero (discusscontribs) 23:51, 8 November 2015 (UTC)

Short of making Wikijunior a sister project in its own right (my preferred solution), Wikijunior pages could, by defult, all include a Wikijunior search box {{Wikijunior search}} as featured in the Wikijunior "home" page,
If there is a specific Wikijunior template, or Wikijunior-specific section of a universally used template, this could be included there, but I'm not yet familiar with how templates are used in Wikijunior. --Barry Desborough (discusscontribs) 15:01, 11 November 2015 (UTC)
It would be better if there was an option for the user to decide the search scope. --Leaderboard (discusscontribs) 18:09, 14 December 2015 (UTC)
Template At the very least, the template Template:Wikijunior_search can be manually added to the top or bottom of pages and then made to not display in print. —Justin (koavf)TCM 05:28, 15 December 2015 (UTC)

The scope of Wikibooks — Wikilore[edit]

There is a proposal at Meta to form a new sister, "Wikilore", for the purpose of capturing vanishing regional folklore. The question has arisen as to whether it would be more appropriate to host it on an existing sister project; the two mentioned have been Wikisource and Wikibooks. (One always wants to ask, when someone proposes a new sister, whether it would be more appropriately hosted by an existing sister.) I have pointed out that we do host books about works of fiction, such as Muggles' Guide to Harry Potter. However, this leaves a question about another part of Wikibooks scope policy, on which I'd really like to hear from other members of the Wikibooks community. This would be, as I understand it, a way of capturing oral folklore before it disappears. That means there would have to be some sort of means used to authenticate the material. It seems to me that whether or not this is within scope for us would depend on what we collectivley think of the means of authentication: it would not automatically fall under "original research", because the prohibition on original research is primary focused on preventing people from writing books about their own theories, and this isn't about people's own theories, rather it seems meant to record material that is independent of the person documenting it. Thoughts, anyone? --Pi zero (discusscontribs) 23:53, 19 January 2016 (UTC)

Can't they do "Wikilore" at Wikia? --Atcovi (Talk - Contribs) 01:12, 20 January 2016 (UTC)
Yes they could, although the same is true of every project. The question is really does this proposal fit in the scope of an existing Wikimedia project or should a new one be created? The proposers may end up going to Wikia if they get turned down by the community. QuiteUnusual (discusscontribs) 11:49, 22 January 2016 (UTC)

A textbook on regional folklore is acceptable and is in scope of Wikibooks. It doesn't seem that dissimilar to, for example, Indian Mythology (see this page). I note your point about authentication and believe you are correct that the original research restriction is intended to stop people writing about their theory on UFOs rather than forcing everything to be cited. QuiteUnusual (discusscontribs) 11:49, 22 January 2016 (UTC)


Wikibook Standard Book Number

A unique book identifier similar to the International Standard Book Number (ISBN).Appears to have multiple benefits including creation of 'Restore points' below and machine readability au (discusscontribs) 04:50, 24 January 2016 (UTC)

I point out there's a pre-existing thread about this in the general reading room, WB:Reading room/General#WSBN?. That discussion has branched out to other things, yes, but also contains some thoughts re WSBN. --Pi zero (discusscontribs) 12:22, 24 January 2016 (UTC)

Restore Points (Editions)[edit]

Ability to see a Wikibook as it was at a given point in time and various implementations of this scheme. A retrospective, user-generated 'edition' for all Wikibooks. This could aid in citations of Wikibooks' content au (discusscontribs) 04:50, 24 January 2016 (UTC) au: I'd recommend posting your points here: Wikibooks:Reading_room/General#WSBN.3F. —Justin (koavf)TCM 05:02, 24 January 2016 (UTC)
I thought this was the place for improvement proposals ;). au (discusscontribs) 05:03, 24 January 2016 (UTC)