Happy new year all!
Let me welcome you to this historical year (10 years of Wikipedia!
(pseudo-) WYSIWYG wikipedia editing.
For the impatient, add
to your vector.js, force-reload, and try any article, User, or
Wikipedia namespace page. Click the WYSIWTF tab, edit, and save (yes,
it does save. You are responsible for cleaning up if you make a mess
(I invite you to try my test article at
Now, this is not "real" WYSIWYG, but rather what I'd call "augmented
wikitext". You still edit wikitext, but some elements (headings,
links, images, and yes, template) are HTML-rendered for convenience.
Large templates are collapsed into the template name; double-click it
to show/hide the vast sea of parameters, which you then can edit like
normal wikitext. Likewise, double-click links or images to get
(currently quite limited) properties.
For this to work, wikitext is parsed into "augmented wikitext", which
is then edited, and rewritten to normal wikitext upon save. Therefore,
you can still enter wikitext directly, and it will "just work" (TM),
except it won't show directly in its rendered form in the editor.
Likewise, lots of wikitext markup is currently not parsed into an
augmented form; bold/italics, lists, and tables, among others, are
left untouched. I can do only so much for a demo :-)
The editor component is by far the weakest part of this demo. I looked
at CKedit, but it seemed too much work to adapt it for a demo than to
write my own editor, which I then did. To make my life easier, each
wikitext character (!) is its own <span> element, which might tax your
browser. Medium-sized articles work fine in Chrome on my MacBook Pro,
but YMMV. You can click into the text to position the cursor, move it
left and right with the cursor keys (not up or down!), type text,
delete or backspace, and use Enter for new line. That's it. No text
selection, not bold/italics buttons, no undo. All of which is entirely
feasible, but too much work for this demo.
Some things can't be done with the demo right now, such as changing a
template name, or resizing an image. Again, no technical reason, just
a man-hour one. You will certainly find many ways to break it, and
instances where it fails (correctly discerning whether and image if
local or from Commons is one).
What I would like is some discussion about
* if this approach (working pseudo-WYSIWYG instead of unattainable
perfect WYSIWYG) is the way to go
* if the code I wrote would be a suitable basis for a system we can
throw at the general public
* if anyone is willing to help me with that
As always, my code is GPL, and I would be more than happy if, in the
end, it would become "official" Foundation code, with staff that
supports it. Well, I can dream...
I run a Data Storage / Backup company and I recently posted to reddit (redd.it/eus9z) about the fact that we have extra bandwidth/storage available and wanted to use it to do something good for the internet as a whole. From there I was referred to this http://meta.wikimedia.org/wiki/Mirroring_Wikimedia_project_XML_dumps and I saw you had yet to find a partner.
In looking at the requirements 10TB of storage and 200 megabit (!20Mb/s sustained) would be trivial for our company to provide and we would be happy to provide it as a service free for the community.
Please let me know what the next steps are so we can talk about the technical requirements to get this in place.
-Austin W. McChord
As part of my PhD research, the Open Allure Dialog System project is
developing software to play wiki-based text-to-speech (TTS) scripts
to add voiceovers to wiki pages.
The project currently has free Mac and Windows download versions
and open source Python code available at
English, Portuguese and Italian are currently supported.
Here's a demo video:
http://www.youtube.com/watch?v=w_euNYfN9BY (3 minutes)
If you are interested in this project, have any advice/suggestions
or know of similar projects, please contact me.
Auckland, New Zealand
+64 21 213 8367 (mobile)
I've been skimming the archives looking for something unrelated, and noticed
that we fairly regularly have threads about compatibility, specifically the
use of function X or feature Y in PHP, CSS, skins, or whatever. I concluded
that we don't really have one centralised place where we document the
software we support. So in the spirit of documentation, I've created
another page to complement the other half dozen which already discuss system
requirements (:-D) at mw.org: http://www.mediawiki.org/wiki/Compatibility
which is distinct primarily in a) trying to record which versions *did*
support software which we now say we don't support, and b) including
browsers and css/js.
I wanted to bring it to everyone's attention primarily to check that we're
all agreed on the software we no longer support. In addition to PHP4,
PHP5.3.1 and MySQL3, which have been unsupported for donkey's years, I've
marked PHP5.0 as unsupported (per ), since 1.15; that's a pretty
arbitrary version to choose, but I picked one with some overlap with PHP
5.3. I've also marked IE <6 as unsupported, as IIRC someone said that
recently (:-D). Is that accurate?
For the future, PHP5.1 has just seen in its fifth New Year. Dropping
support there would allow us to use __tostring() magic on various objects,
which could be useful in various places. Equally, the Wikimedia cluster has
run MySQL 5 for over a year now , and it's approaching its eighth
birthday; MySQL 4.0 and 4.1 are no longer maintained.
Of course, we're not saying "right, we don't support X, let's go add fun
things to make absolutely sure that it doesn't work"; once a product is
unsupported, we allow incompatibilities to gradually creep in in the course
of normal development. We're not going to go change the recentchanges table
to use BITs just because we can; but we might use that type if we introduce
Also interested in what people think about the CSS/JS/Text-only section. Is
that a fair summary of our position?
Just added 3 new committers. Let's give them a warm welcome.
Core & extensions:
Zak Greant (zak) - WMF contractor, working on documentation
Jason Giglio (gigs) - Working on GoogleNewsSiteMap
Robert Scheiber (rscheiber) - General extension cleanup/fixes/etc