v50 Steam/Premium information for editors
- v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
- Use this page to report any issues related to the migration.
This notice may be cached—the current version can be found here.
Difference between revisions of "Dwarf Fortress Wiki:Magmawiki"
Jump to navigation
Jump to search
OddballJoe (talk | contribs) (I don't think the snark is needed... unless the magmawiki devs were the ones adding it. You can talk to User:Emi if you're curious, she's around) |
|||
(5 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
+ | magmawiki was a web development project to replace the mediaWiki engine. It has not been updated since 2010. | ||
+ | |||
magmawiki is the project to replace the mediaWiki engine. | magmawiki is the project to replace the mediaWiki engine. | ||
Source code is hosted on [http://www.github.com/locriani/magmawiki Github]. | Source code is hosted on [http://www.github.com/locriani/magmawiki Github]. | ||
− | IRC channel for '''software development''' ('''[[IRC|NOT dwarf fortress questions / discussions, check here for those channels!]]''') is [http://irc.freenode.org/#magmawiki | + | IRC channel for '''software development''' ('''[[IRC|NOT dwarf fortress questions / discussions, check here for those channels!]]''') is [http://irc.freenode.org/#magmawiki #magmawiki on freenode.org] |
Discussion of the magmawiki project on the forums is [http://www.bay12forums.com/smf/index.php?topic=55613.0 here] | Discussion of the magmawiki project on the forums is [http://www.bay12forums.com/smf/index.php?topic=55613.0 here] | ||
Line 14: | Line 16: | ||
| colspan='2' width='1%' style='font-size: 200%; padding: 0.2em; border-bottom: 3px solid #9df; background: #eef5ff' | 0 | | colspan='2' width='1%' style='font-size: 200%; padding: 0.2em; border-bottom: 3px solid #9df; background: #eef5ff' | 0 | ||
| colspan='2' width='1%' style='font-size: 200%; padding: 0' | . | | colspan='2' width='1%' style='font-size: 200%; padding: 0' | . | ||
− | | colspan='2' width='1%' style='font-size: 200%; padding: 0.2em; border-bottom: 3px solid #db8; background: #fff5ee' | | + | | colspan='2' width='1%' style='font-size: 200%; padding: 0.2em; border-bottom: 3px solid #db8; background: #fff5ee' | 17 |
| colspan='2' width='1%' style='font-size: 200%; padding: 0' | . | | colspan='2' width='1%' style='font-size: 200%; padding: 0' | . | ||
| colspan='2' width='1%' style='font-size: 200%; padding: 0.2em; border-bottom: 3px solid #bd8; background: #f5ffee' | 0 | | colspan='2' width='1%' style='font-size: 200%; padding: 0.2em; border-bottom: 3px solid #bd8; background: #f5ffee' | 0 | ||
Line 90: | Line 92: | ||
==Planned Versions == | ==Planned Versions == | ||
=== Version 0.1 Features === | === Version 0.1 Features === | ||
− | {{progress_bar| | + | {{progress_bar|17|total=34}} |
*Header | *Header | ||
**Tabs | **Tabs | ||
Line 103: | Line 105: | ||
**Actions | **Actions | ||
***<s>Create (New)</s> | ***<s>Create (New)</s> | ||
− | ***Read (Show) | + | ***<s>Read (Show)</s> |
− | ****Parser (Mediawiki) | + | ****<s>Parser (Mediawiki)</s> |
− | *****Article Links | + | *****<s>Article Links</s> |
***<s>Update (Edit)</s> | ***<s>Update (Edit)</s> | ||
**<s>Named URIs (slugs)</s> | **<s>Named URIs (slugs)</s> | ||
Line 182: | Line 184: | ||
[09:18am] epitron: but it would be slick | [09:18am] epitron: but it would be slick | ||
</pre> | </pre> | ||
− | *AUGH PASSWORDS (Mediawiki: <code>":B:"+ salt + md5(salt + "-" + md5(password))</code> ) | + | *AUGH PASSWORDS (Mediawiki: <code>":B:"+ salt (31 bit, hex between 0 and 7fff ffff inclusive) + ":" + md5(salt + "-" + md5(password))</code> ) |
*file uploads, html5 display methods, etc (video, <code><canvas></code> tags, media, acceptable formats, etc) | *file uploads, html5 display methods, etc (video, <code><canvas></code> tags, media, acceptable formats, etc) | ||
*Document management stuffs | *Document management stuffs | ||
Line 245: | Line 247: | ||
**{{ryg|0|Disabling edits to large categories of pages}} | **{{ryg|0|Disabling edits to large categories of pages}} | ||
**{{ryg|0|Automated spam filtering}} | **{{ryg|0|Automated spam filtering}} | ||
− | [[Category:Wikiprojects]] | + | [[Category:Wikiprojects]][[Category:Wiki]] |
Latest revision as of 05:21, 26 January 2023
magmawiki was a web development project to replace the mediaWiki engine. It has not been updated since 2010.
magmawiki is the project to replace the mediaWiki engine.
Source code is hosted on Github.
IRC channel for software development (NOT dwarf fortress questions / discussions, check here for those channels!) is #magmawiki on freenode.org
Discussion of the magmawiki project on the forums is here
Versioning[edit]
0 | . | 0 | . | 17 | . | 0 | . | 246 | ||||||||||||||||
Major version number. | Level of magma (0-6/7), new major version when it reaches 7. | Minor feature version. | Bug/security fixes on current "major.magma.minor" version combo. | Number of expletives uttered during development. |
Conceptual screenshots / sketches[edit]
loginbox design (modal dialogs) THE FONT SIZE IS BUGGING ME AUGH THE PAIN
Planned Versions[edit]
Version 0.1 Features[edit]
- Header
- Tabs
Article Actions (Read / Edit / History)- Talk
- Menu
- Favorite
- Special tabs
- User Bar
- Tabs
- Articles
Optimistic Locking- Actions
Create (New)Read (Show)Parser (Mediawiki)Article Links
Update (Edit)
Named URIs (slugs)Immutable until page move (NYI)Mutable titles, as long as same slug is generated
- Revisions
Counter cacheHistory- Differences view
Missing unit tests- Users
Account creationLogin / Logout (sessions)- Account management
Localization options- Change password
- Change email
- IP Tracking
- Revision / Article edit tied to user
Localization backend stuff
Version 0.2 Features[edit]
- Articles
- Actions
- Delete
- Optimistic Locking Merges (
I don't remember what I meant by thispage merge screen for changes when changes are blocked by optimistic locking) - Page moves
- Namespaces
- Page level protection
- Redirects
- Actions
- Users
- Captcha
- User Permissions
- User Permission Levels
- Search
- Basic article name search
Version 0.3 Features[edit]
- Articles
- Parser (Textile / Markdown?)
- Templates
- Mediawiki
- Python
- Subpages
- Fulltext search
Version 0.4 Features[edit]
- Articles
- Live edit preview
- Mediawiki Import functionality
- Sandboxes
- Sandbox merging
Points of discussion[edit]
- Mass deletion of a users contribs (perhaps ranges and checkbox methods?)
- Talk forums -- see this page
- Article ratings
- Line / Word comments (post it notes / discussion thread reference points?)
- Alternative url implementations (RESTful state w/o /[new, edit, create, etc])
- Side by side rendering
[09:17am] epitron: side-by-side markup/rendered-html [09:17am] epitron: you click "preview" and it re-renders it [09:18am] epitron: and if you scroll, it scrolls both windows in synch [09:18am] epitron: like the way MELD does [09:18am] locriani: that's good [09:18am] epitron: the preview will scroll a lot less sometimes [09:18am] epitron: like for your version number table monstrousity [09:18am] locriani: and the cursor position in the markup window [09:18am] locriani: or in the html window [09:18am] locriani: will highlight the appropriate element in the other window [09:18am] epitron: yeah! [09:18am] epitron: cursor position would be harder [09:18am] epitron: but it would be slick
- AUGH PASSWORDS (Mediawiki:
":B:"+ salt (31 bit, hex between 0 and 7fff ffff inclusive) + ":" + md5(salt + "-" + md5(password))
) - file uploads, html5 display methods, etc (video,
<canvas>
tags, media, acceptable formats, etc) - Document management stuffs
- Inline-comments
12:00 <@epitron> i think i just solved the marking problem 12:01 <@epitron> 1) the match is saved as plaintext with an integer 12:02 <@epitron> 1.a) the integer represents which occurance of that match you've marked 12:02 <@epitron> 2) html can be stripped to find the same position in the markup doc 12:03 <@epitron> 3) to deal with new edits, the integer can increment when a diff contains the plaintext match 12:03 <@epitron> (a diff before the marked area) 12:03 <@epitron> (we can ignore diffs afterwards) 12:03 <@epitron> sound good? 12:04 <@epitron> it gets around the round-tripping problem by reducing everything to good old plaintext :D 12:04 <@epitron> i believe that's a reliable 1:1 mapping 12:05 <@epitron> just gotta normalize it by doing gsub(/\s+/, ' ') 13:27 <@epitron> the only piece remaining is how to persist the inline comments across revisions 13:28 <@epitron> the marked area will be active on a revision up until it's overwritten 13:29 <@epitron> (there's a little edge case where a marking is overwritten, then a few revisions down the road you revert back to an earlier copy with the marking... it should be re-connected to that document) 13:29 <@epitron> s/document/revision/
Considered Features[edit]
Items are color coded. Green means very important, yellow means fairly important, and red means near feature, but we need to get the other stuff done first.
- Categories
- Templates
- Clone some mediawiki parser functionality
- Python and Ruby
- "Restricted Python":http://pypi.python.org/pypi/RestrictedPython/
- "Ruby Taint":http://ruby-doc.org/docs/ProgrammingRuby/html/taint.html
- Talk forums (could temporarily use article system as stop-gap)
- User accounts
- Permission levels
- Blocking
- Per-user JS
- Per-user CSS
- Search
- Articles
- History
- Diff view
- Redirects
- Per-page JS
- Per-page CSS
- Namespaces
- Aliases
- User Preferences
- Default search namespace
- Change password (if there are users)
- Signature? (with forums not really needed)
- Maintenance
- API for bots
- Disabling edits to large categories of pages
- Automated spam filtering