PageVariables-Talk

$BaseName always gives a fully-qualified name like "PmWiki.PageVariables". If you add

$BaseNamePatterns['/^[^\.]+\./'] = '';

then you get just the name part. - Maxim? October 08, 2009, at 07:41 PM I tested keeping both lines, this additional line and the default line in ConfigPhp, and it works. HOWEVER using this trick in any way breaks my browser bar page titles which are not displaying the page names after using this...working on a fix --Naturevault

Cool! I came here to say that the current {$BaseName} should be renamed to {$BaseFullName} and {$BaseName} should remove the group name from the output. --Naturevault

Don't remove the Group from {$BaseName}, many things will likely break. You could use something like {{$BaseName}$Name} to get the $Name variable from the base page. See below. --Petko

That is a great solution and it works, thanks! --Naturevault

* {$BaseName}
* {{$BaseName}$Name}
* For info: {$FullName}
  • PmWiki.PageVariables
  • PageVariables
  • For info: PmWiki.PageVariables-Talk

$WikiTitle PageVariable

The following does not seem to work:

* {$WikiTitle}: {*$Name}
  • PmWiki: PageVariables-Talk

The variable {$WikiTitle} was defined in version 2.2.77 (2015-06-19). To define it in earlier versions, see the section Custom page variables. --Petko May 18, 2016, at 12:09 AM

I see! Thank you for your help. -- Anri (2010-11-22 4:50 pm +0200)


Are built in page variable names case sensitive, e.g. (:title my page title:)

* {$title}
* {$Title}
  • PageVariables-Talk
simon May 17, 2016, at 10:19 PM

The directive to set the title is case insensitive. Page variable names are always case sensitive. For page text variables, both the directive and the variable are case sensitive. --Petko May 18, 2016, at 12:09 AM


There seems to be something up with $page["ctime"] where the examples to create ctime-based page variables for pages aren't working and returning default date/time (December 31, 1969). This has been happening for a while, just trying to debug seems to be an issue on the back end of PmWiki. XES September 19, 2020, at 03:59 PM

If the page file was created without the "ctime=" attribute -- either before it was added to PmWiki (Version 2.1.beta15 2005-12-28), or the file created by another program or a recipe -- the page will not have it set. In the default documentation shipped with PmWiki, 99 pages out of 128 do not have this attribute. --Petko September 19, 2020, at 04:17 PM

Thank you, can ctime default to the oldest History/diff date for page edits rather than 1969? XES September 21, 2020, at 03:05 PM

Not likely for the core, it may be false/misleading, because of $DiffKeepDays some edit history may have been dropped. OTOH a recipe could do whatever is needed. A recipe will be more efficient if it finds and adds the ctime= attribute to all wiki.d page files in one go, rather than loading all page history when the attribute needs to be accessed. --Petko September 21, 2020, at 03:13 PM

This is a talk page for improving PmWiki.PageVariables.