Nitram
I live in Siegen, Germany, and run three websites using PmWiki. Whether they are aesthetically pleasing, especially in terms of mobile optimization, I don't know; that's a matter of taste. My focus here is more on the technical aspects: the pages contain a few functions that I've cobbled together from PmWiki elements and would like to share with anyone interested. Because I'm always happy to find something useful here on PmWiki, I'll try to describe these functions fairly precisely so that the keywords can be found here.
All three sites have a close interrelationship between public and internal (protected) areas, as well as between online pages and pages mirrored on the local PC. (The private site runs primarily on the local PC.) I find PmWiki to be the ideal tool for managing all of this. As a local server (unfortunately, it seems to be only available for Windows), I recommend the lightweight, portable UwAmp, which also allows switching between different PHP versions (including the latest ones). It's almost dangerous: I can't tell whether I'm working online or offline. I set in config.php:
$Conditions['islocalhost'] = '$_SERVER["SERVER_NAME"] == "localhost"';
Then, in my admin navigation bar, I have this condition, allowing me to switch between online and offline with one click:
(:if !islocalhost:)[[http://localhost/blabla/?n={*$FullName}|Path:pub/skins/ic-globus-01-01.png"zu offline wechseln"]](:else:)[[https://www.my-domain.de/i.php?n={*$FullName}|Path:pub/skins/ic-globus-01-02.png"zu online wechseln"]](:ifend:)
|
I am happy to answer any questions; please see my private page.
www.edition-lgc.de
Here I run a very small book publishing business with mail order. I handle most of the necessary tasks, including address management and invoicing, within PmWiki.
However, the decisive factor in choosing PmWiki was the preparatory work: the books are based on the written materials from the estate of the philosopher and anthroposophist Karl Ballmer (1891–1958). PmWiki's adaptable flat-file architecture allows for intensive work on the texts, which first need to be philologically cataloged. Additional text markup for handwriting versus typewriting, undeciphered or newly added words, etc., are no problem.
Furthermore, editorial commentary on the texts is very important, as is the corresponding cross-linking between them. All of this happens within the original text – and can, of course, be hidden.
Because this is an ongoing internal process involving large amounts of text, PmWiki works in conjunction with Firefox extensions such as Find&Replace (with Regex) or FormatLink (dito), among others.
We also have to search extensively for parallel passages in the text repository. This is done directly from selected text using shortcuts via AutoHotKey and URLs as queries to TextExtract. The original PDF files also need to be searched extensively; for this, DocFetcherServer is set up locally. An effective online option for this (I previously tried Sphider) doesn't seem to be available at the moment.
In this context of editorial work, a PmWiki recipe plays a role that hasn't been published here yet because it's very specific: Diff2, a text comparison between different text versions. So, it doesn't compare versions of the same wiki page, but rather two separate pages. This works exceptionally well and significantly simplifies our work. Currently, you can see this feature in a public application here. If you were logged in, the recipe would offer you additional options: you can navigate forwards and backwards through both documents (from anchor to anchor). If the author has inserted a paragraph break (anchor) in one of the documents, you can also navigate separately to the left or right to find the corresponding section. Furthermore, you can adjust which text formatting is included; this can be quickly switched.
There is also an extensive collection of data (several registers) such as personal names, keywords, dates, or approximately 2.800 book titles (from Ballmer's library). Technical experts would likely recommend a professional database. We opted to rely on PmWiki's own flexible, customizable tools and are very happy with the result. The combination of PTVs, their querying via page lists, and the ability to query from page headers allows us to fulfill almost any requirement. Fox is used throughout as a form.
Invaluable in all of this is the competent help that Petko, as the core developer, always provides promptly. This applies to both small voluntary assistance, or adaptation jobs, where I haven't regretted spending a single euro.
www.lfl-siegen.de
This is an initiative to establish a Waldorf school for children with disabilities.
The newsletter „Schmetterling“ is particularly interesting. It's published weekly as a regular PmWiki page, which is then sent out on Sunday mornings (using FoxNotify) without any additional tools. While the emails might not be visually perfect, and the spam situation is questionable, it works well. Above all, the workflow is very convenient. It's difficult to document this process as a demo; please ask if you'd like more information.
One highlight is the song collection. It uses the abc music notation format. This format should be future-proof, as it's also compatible with MusicXML. This isn't a ready-made PmWiki recipe; I've pieced something together myself, but it runs absolutely stably. The source for two JavaScripts abc2svg-1.js and xmlplay_emb.js is here and here at Wim's site: On Wim's site, you can also edit the sheet music very conveniently: simply copy and paste it to edit! Could someone transfer all of this to PmWiki for future use? I lack the necessary technical expertise. – Of course, not only simple songs but also multi-part instrumental pieces are possible, see here.
When school starts, we'll need a timetable. Since the school will be quite small, we'll probably do it the way we did at our old school: it's pedagogically more effective to do the actual planning not digitally, but with human effort (four or five people sitting together for an afternoon) and with large sheets of paper and pencils.
We used to use a spreadsheet to present the results. But with PmWiki, this seems more efficient and aesthetically pleasing. See the example here. The individual timetables for the 12 classes are automatically extracted from the overall timetable. There's also a calculation of teacher work hours. Various markup expressions are used here, as well as the fantastic FoxCSV. With this recipe, it is finally possible to edit tables within PmWiki in a way that is suitable for everyday use. Thanks to HansB for this recipe!
Another example of FoxCSV is the small elementary cash book (a mini spreadsheet, so to speak) here.
What I also appreciate about PmWiki is the principle of being able to build a small database at any time, with individual pages for each record and PTVs as attributes. An events calendar is one example. You can easily manage public and internal events together, and then display them separately using a PTV attribute. Each time an item is added or changed, a background iCal file (ics) is updated, which can be read or subscribed to from outside. See here.
My personal site
My personal site doesn't have any special content and is mainly used for posting things when needed.
However, I've also mirrored the site on my PC – with 100 times more content, primarily as a personal organizer. Here are three examples, which I have mirrored online as demos:
- I've been using the „database“ principle mentioned above for many years for extensive address management. I've even rigged it up so that I can create a letter or similar document directly from within PmWiki. Exporting one or all data records as vCard (vcf), xml or in other text-based formats is no problem. I can only partially mirror it here as a demonstration.
- I don't keep my personal planner digitally, but as a printed A4 sheet. Each sheet has two weeks on the front and another two weeks on the back. However, I still want to include fixed anniversaries (birthdays, etc.). I created this template in PmWiki instead of using Word. Much easier! The anniversaries follow the database principle mentioned above, even though it sounds crazy: each day has a page (even if it's empty). A PageList then creates a clear birthday calendar.
- PmWiki doesn't offer a hierarchical structure for pages. This makes it much easier for me to create my own custom structure. This example is for a collection of notes. Or rather, an organization of documents, because „notes“ is misleading: since each note is a page, it can contain a novel. While I can't make a tree structure visible, the tried-and-tested recipes „Filterable“, „Sortable“ and „TextExtract“ allow me to find everything quickly.
On my personal pages, look for the💡± toggle for more detailed explanations!