Photos
Blog
Projects
vanrenterghem.biz
projects
/
git.ikiwiki.info.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix inverted footnote config with MultiMarkdown.
[git.ikiwiki.info.git]
/
IkiWiki
/
Plugin
/
highlight.pm
diff --git
a/IkiWiki/Plugin/highlight.pm
b/IkiWiki/Plugin/highlight.pm
index 0aa7386baa59804a9505ff684c3258df47df3b65..04c554ac4e8da12399e5421eb9293d9c8e7eb866 100644
(file)
--- a/
IkiWiki/Plugin/highlight.pm
+++ b/
IkiWiki/Plugin/highlight.pm
@@
-62,20
+62,20
@@
sub checkconfig () {
if (! exists $config{filetypes_conf}) {
if (! $data_dir ) {
$config{filetypes_conf}= "/etc/highlight/filetypes.conf";
if (! exists $config{filetypes_conf}) {
if (! $data_dir ) {
$config{filetypes_conf}= "/etc/highlight/filetypes.conf";
- } elsif ( $data_dir -> can('
searchFile
') ) {
- # 3.1
8
+
+ } elsif ( $data_dir -> can('
getFiletypesConfPath
') ) {
+ # 3.1
4
+
$config{filetypes_conf}=
$config{filetypes_conf}=
- $data_dir ->
searchFile("filetypes.conf
");
+ $data_dir ->
getFiletypesConfPath("filetypes
");
} else {
# 3.9 +
$config{filetypes_conf}=
$data_dir -> getConfDir() . "/filetypes.conf";
}
}
} else {
# 3.9 +
$config{filetypes_conf}=
$data_dir -> getConfDir() . "/filetypes.conf";
}
}
+ # note that this is only used for old versions of highlight
+ # where $data_dir will not be defined.
if (! exists $config{langdefdir}) {
if (! exists $config{langdefdir}) {
- $config{langdefdir}=
- ($data_dir ? $data_dir->getLangPath("")
- : "/usr/share/highlight/langDefs");
+ $config{langdefdir}= "/usr/share/highlight/langDefs";
}
if (exists $config{tohighlight} && read_filetypes()) {
}
if (exists $config{tohighlight} && read_filetypes()) {
@@
-155,17
+155,27
@@
sub read_filetypes () {
}
}
+sub searchlangdef {
+ my $lang=shift;
+
+ if ($data_dir) {
+ return $data_dir->getLangPath($lang . ".lang");
+ } else {
+ return "$config{langdefdir}/$lang.lang";
+ }
+
+}
# Given a filename extension, determines the language definition to
# use to highlight it.
sub ext2langfile ($) {
my $ext=shift;
# Given a filename extension, determines the language definition to
# use to highlight it.
sub ext2langfile ($) {
my $ext=shift;
- my $langfile=
"$config{langdefdir}/$ext.lang"
;
+ my $langfile=
searchlangdef($ext)
;
return $langfile if exists $highlighters{$langfile};
read_filetypes() unless $filetypes_read;
if (exists $ext2lang{$ext}) {
return $langfile if exists $highlighters{$langfile};
read_filetypes() unless $filetypes_read;
if (exists $ext2lang{$ext}) {
- return
"$config{langdefdir}/$ext2lang{$ext}.lang"
;
+ return
searchlangdef($ext2lang{$ext})
;
}
# If a language only has one common extension, it will not
# be listed in filetypes, so check the langfile.
}
# If a language only has one common extension, it will not
# be listed in filetypes, so check the langfile.
@@
-191,7
+201,9
@@
sub highlight ($$) {
my $gen;
if (! exists $highlighters{$langfile}) {
my $gen;
if (! exists $highlighters{$langfile}) {
+ no warnings 'once';
$gen = highlight::CodeGenerator::getInstance($highlight::XHTML);
$gen = highlight::CodeGenerator::getInstance($highlight::XHTML);
+ use warnings;
$gen->setFragmentCode(1); # generate html fragment
$gen->setHTMLEnclosePreTag(1); # include stylish <pre>
if ($data_dir){
$gen->setFragmentCode(1); # generate html fragment
$gen->setHTMLEnclosePreTag(1); # include stylish <pre>
if ($data_dir){