po: make the "backlinks involve dependencies" feature optional
It can now be configured with the po_strictly_refresh_backlinks setting. Signed-off-by: intrigeri <intrigeri@boum.org>master
parent
03ab262319
commit
ca9e45c3ba
|
@ -126,6 +126,13 @@ sub getsetup () {
|
|||
safe => 1,
|
||||
rebuild => 1,
|
||||
},
|
||||
po_strictly_refresh_backlinks => {
|
||||
type => "boolean",
|
||||
example => 1,
|
||||
description => "refresh a page when a backlinked page is changed (can hit performance)",
|
||||
safe => 1,
|
||||
rebuild => 1,
|
||||
},
|
||||
}
|
||||
|
||||
sub checkconfig () {
|
||||
|
@ -166,6 +173,10 @@ sub checkconfig () {
|
|||
! defined $config{po_translation_status_in_links}) {
|
||||
$config{po_translation_status_in_links}=1;
|
||||
}
|
||||
if (! exists $config{po_strictly_refresh_backlinks} ||
|
||||
! defined $config{po_strictly_refresh_backlinks}) {
|
||||
$config{po_strictly_refresh_backlinks}=1;
|
||||
}
|
||||
push @{$config{wiki_file_prune_regexps}}, qr/\.pot$/;
|
||||
}
|
||||
|
||||
|
@ -307,8 +318,10 @@ sub pagetemplate (@) {
|
|||
|
||||
sub postscan (@) {
|
||||
my %params = @_;
|
||||
my $page = $params{page};
|
||||
|
||||
return unless $config{po_strictly_refresh_backlinks};
|
||||
|
||||
my $page = $params{page};
|
||||
# backlinks involve back-dependencies, so that nicepagetitle effects,
|
||||
# such as translation status displayed in links, are updated
|
||||
use IkiWiki::Render;
|
||||
|
|
|
@ -72,17 +72,19 @@ worry about excluding them explicitly from this [[ikiwiki/PageSpec]].
|
|||
Internal links
|
||||
--------------
|
||||
|
||||
### Links targets
|
||||
|
||||
The `po_link_to` option in `ikiwiki.setup` is used to decide how
|
||||
internal links should be generated, depending on web server features
|
||||
and site-specific preferences.
|
||||
|
||||
### Default linking behavior
|
||||
#### Default linking behavior
|
||||
|
||||
If `po_link_to` is unset, or set to `default`, ikiwiki's default
|
||||
linking behavior is preserved: `\[[destpage]]` links to the master
|
||||
language's page.
|
||||
|
||||
### Link to current language
|
||||
#### Link to current language
|
||||
|
||||
If `po_link_to` is set to `current`, `\[[destpage]]` links to the
|
||||
`destpage`'s version written in the current page's language, if
|
||||
|
@ -91,7 +93,7 @@ available, *i.e.*:
|
|||
* `foo/destpage/index.LL.html` if `usedirs` is enabled
|
||||
* `foo/destpage.LL.html` if `usedirs` is disabled
|
||||
|
||||
### Link to negotiated language
|
||||
#### Link to negotiated language
|
||||
|
||||
If `po_link_to` is set to `negotiated`, `\[[page]]` links to the
|
||||
negotiated preferred language, *i.e.* `foo/page/`.
|
||||
|
@ -104,6 +106,16 @@ negotiated preferred language, *i.e.* `foo/page/`.
|
|||
* if the web server does not support Content Negotiation, setting
|
||||
`po_link_to` to `negotiated` will produce a unusable website.
|
||||
|
||||
### Links appearance
|
||||
|
||||
When `po_translation_status_in_links` is enabled, the text of a link
|
||||
to a slave pages displays this page's translation status.
|
||||
|
||||
When the `po_strictly_refresh_backlinks` setting is enabled, a page is
|
||||
refreshed every time a backlinked page is changed. This updates the
|
||||
translation status in links, and helps having a consistent translated
|
||||
wiki. Beware, this make every page depend on every page that links to
|
||||
it, which can slow everything down and bloat the dependency pagespecs.
|
||||
|
||||
Server support
|
||||
==============
|
||||
|
|
Loading…
Reference in New Issue