summaryrefslogtreecommitdiff
path: root/IkiWiki/Plugin/img.pm
AgeCommit message (Collapse)Author
2009-09-27img: Fix dependency code for full size images.Joey Hess
I had assumed that an image shown full size did not need add_depends, since a change would not need a change to the displaying page. But this is not true if the image is modified and its size changes. Then the page needs to update its img tag to reflect the current size.
2009-09-27img: Correct bug in image size calculation code.Joey Hess
If an image was resized smaller, with width and height specified to values that did not fit its aspect ratio, the image tag with/height were not adjusted to the actual size imagemagick chooses. This was broken by 03449610d6c666ba24bea68f01d896613e522278. To fix it right, it unfortunatly needs to always read the src image now, in order to determine if the image is being displayed larger, or resized smaller. When resized smaller, it then always uses the size of the thumbnail, while for larger it calculates the size. (Only way to get rid of this sometimes extra image read would be to change it to not allow displaying images larger.)
2009-08-28img: Don't generate new verison of image if it is scaled to be larger in ↵Joey Hess
either dimension. Although imagemagick handles even really large sizes sanely, using a page file, doing so would just waste time and disk space, since the browser can be told to resize it larger.
2009-08-15img: depend on absolute page name, not relativeSimon McVittie
Previously, [[!img bar.jpg]] on foo, where foo/bar.jpg exists, would get a dependency equivalent to "glob(bar.jpg)" (which might not match anything), rather than the correct "glob(foo/bar.jpg)". (cherry picked from commit 85b2ec49ecd12dd23e5c432933457a72744ce7cb)
2009-07-27img: Fix adding of dependency from page to the image.Joey Hess
This was impressively broken. add_depends was being called with params backwards, and on parameter was set to the name of the generated file, which isn't in the source. Now updates to images will update the page that contains them, thus updating them. This is unncessary for fullsize images, so skipped.
2009-07-19improve error messageJoey Hess
2009-07-11img: Pass the align parameter through to the generated img tag.Joey Hess
2009-06-16img plugin: do not emit a redundant double-quote before alt attributeSimon McVittie
2009-05-06Avoid %links accumulating duplicates. (For TOVA)Joey Hess
This is sorta an optimisation, and sorta a bug fix. In one test case I have available, it can speed a page build up from 3 minutes to 3 seconds. The root of the problem is that $links{$page} contains arrays of links, rather than hashes of links. And when a link is found, it is just pushed onto the array, without checking for dups. Now, the array is emptied before scanning a page, so there should not be a lot of opportunity for lots of duplicate links to pile up in it. But, in some cases, they can, and if there are hundreds of duplicate links in the array, then scanning it for matching links, as match_link and some other code does, becomes much more expensive than it needs to be. Perhaps the real right fix would be to change the data structure to a hash. But, the list of links is never accessed like that, you always want to iterate through it. I also looked at deduping the list in saveindex, but that does a lot of unnecessary work, and doesn't completly solve the problem. So, finally, I decided to add an add_link function that handles deduping, and make ikiwiki-transition remove the old dup links.
2009-01-21img: only provide alt text if it was specifiedGabriel McManus
if suitable alternate text is unknown, then it should not be given. empty alt text is suitable mainly for purely decorative images. (cherry picked from commit 3cd7f67f0cf894f4fd5ba16f68e82e4f7bdbfdc5)
2008-12-23finalise version 3.00 of the plugin apiJoey Hess
2008-12-17Coding style change: Remove explcit vim folding markers.Joey Hess
2008-09-09img: Support sizes like 200x. Closes: #475149Joey Hess
2008-08-03add plugin safe/rebuild info (part 1 of 2)Joey Hess
too many plugins.. brain exploding..
2008-07-21don't show an error if the image is missing, instead, a broken linkJoey Hess
2008-07-21avoid internal error message when img uses just-deleted pageJoey Hess
I think this used to be a fatal error, not just inline error, so I don't know why it was never noticed, but if a page that an img directive mentions gets deleted, bestlink() returns a file that no longer exists, and srcfile() throws an error. Note that bestlink's behavior of returning a deleted file could be considered buggy. But, if it's changed to not do that, the page with the img on it is not updated at all when the file is removed.
2008-07-13switch preprocess hooks to use error functionJoey Hess
2008-07-12convert fatal error to warningJoey Hess
Since perlmagick is not a hard dep, and goodstuff is enabled by default, imgs should not crash builds
2008-06-08Don't generate empty title attributes, etc, and allow setting defaults for ↵Joey Hess
class and id too.
2008-06-07img: Support captions.Joey Hess
2008-04-30img: Support a title attribute, will be passed through to html. Closes: #478718Joey Hess
2008-03-23revert destpage part of f7bdc2385Joey Hess
destpage does not normally need to be worried about when creating other files as part of the process of rendering a page. Using destpage results in inlined pages creating two copies of such files. It works to not use destpage in this case because the inlining page depends on the source page, so if the source page is modified or deleted the inlining page will be updated.
2008-03-12* Use forcebaseurl to make page previews be displayed with the html baseJoey Hess
set to the destination page. This avoids need for hacks to munge the urls in preview mode, which fixes several bugs. * Several destpage fixes in plugins.
2008-01-09optimisation: detect scan mode and avoid generating imageJoey Hess
2007-12-28* img: Allow the link parameter to point to an exterior url.Joey Hess
2007-12-26* img: Avoid nesting images when linking to another image. Closes: #457780Joey Hess
2007-09-22* img: Allow link=somepage to cause the image to link to a given page.joey
Slight overriding of link, as link=no is still used to disable the linking entirely. Unless you have a page named "no"..
2007-07-15* In img tag, allow link=no to disable link to full size image. Thanks,joey
Nis Martensen. Closes: #433188
2007-06-19* Corrected a typo in an error handler in the image plugin.joey
2007-05-28* Apply a patch from Carl Worth allowing a class attribute to be passedjoey
through the img plugin. Also allow the id attribute to be passed through.
2007-05-24* Deal better with rebuilds that involve moving files; track and clean up thejoey
old files. * Change where the img plugin puts scaled images. It's better to make the scaled images subpages of the page that embeds them, rather than putting them alongside the original image, since if two pages scale the same image the same way, this prevents complications in dealing with two pages creating the same file. The move will be handled transparently, though you might want to rebuild your wiki to make it occur in one step.
2007-05-23the 100% correct way is to add it to %links on scanjoey
2007-05-23* Correct bug in the img plugin that caused dependencies on images to notjoey
always be tracked correctly.
2007-04-27* pagespec_match() has changed to take named parameters, to better allowjoey
for extended pagespecs. The old calling convention will still work for back-compat for now. * The calling convention for functions in the IkiWiki::PageSpec namespace has changed so they are passed named parameters. * Plugin interface version increased to 2.00 since I don't anticipate any more interface changes before 2.0.
2007-04-01* Fix a big in the img plugin that caused thumbnailed files to not bejoey
tracked properly.
2007-03-07more i18n improvementsjoey
2007-03-06* Add preview parameter to preprocesser calls, use this rather than thejoey
previous ugly hack used to avoid writing rss feeds in previews. * Fix the img plugin to avoid overwriting images in previews. Instead it does all the work to make sure the resizing works, and dummys up a resized image using width and height attributes. * Also fixes img preview display, the links were wrong in preview before.
2007-02-20* Make img plugin not fail immediately if Image::Magick is not available.joey
This lets ikiwiki not build depend on perlmagic.
2006-12-29* Initial work on internationalization of the program code. po/ikiwiki.potjoey
is available for translation. * Export gettext() from IkiWiki module.
2006-11-09* Fix img plugin's handling of adding dependencies for images that do notjoey
yet exist.
2006-10-21* Add an img plugin, based on Christian Mock's img plugin, but strippedjoey
down to the bare essentials. Useful for handling large images on websites.