X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/5a7a89ffc59d008a6dd6586d26ff1a1fbb3bc51f..ba480baa9ec9e2d5d04c6eb06fd3ab4dafd60794:/doc/bugs/external_plugins_cannot_access_ARGV_needed_for_getopt.mdwn?ds=sidebyside diff --git a/doc/bugs/external_plugins_cannot_access_ARGV_needed_for_getopt.mdwn b/doc/bugs/external_plugins_cannot_access_ARGV_needed_for_getopt.mdwn index cc82d1cd7..be7f16a79 100644 --- a/doc/bugs/external_plugins_cannot_access_ARGV_needed_for_getopt.mdwn +++ b/doc/bugs/external_plugins_cannot_access_ARGV_needed_for_getopt.mdwn @@ -1 +1,14 @@ The `getopt` hook expects plugins to modify `@ARGV`. This is not exported via xml-rpc and thus external plugins cannot do anything. --[[madduck]] + +> I can think of two interfaces to handle this. +> +> 1. Pass @ARGV to the hook, and remove any values the hook returns from @ARGV. +> 2. Provide an XML-RPC interface for setting and getting ikiwiki's @ARGV. +> +> The first is simpler, but requires keeping track of which options to +> remove, which could be a pain, and probably precludes using regular +> getopt libraries to process options. It also could theoretically cause +> problems for existing perl getopt hooks. +> +> The second should allow using regular getopt libraries, but does bloat +> the RPC interface. Oh well, guess that's ok. [[done]] --[[Joey]]