On 10/09/2014 11:28 PM, Zhou Zheng Sheng wrote:
on 2014/10/09 20:40, Aline Manera wrote:
> On 10/08/2014 11:59 PM, Zhou Zheng Sheng wrote:
>> on 2014/10/01 02:37, Rodrigo Trujillo wrote:
>>> This patch set changes the Sample plugin, adding a new tab, modifying
>>> naming and other elements in order to show help pages properly.
>>>
>>> Signed-off-by: Rodrigo Trujillo <rodrigo.trujillo(a)linux.vnet.ibm.com>
>>> ---
>>> configure.ac | 1 -
>>> plugins/sample/Makefile.am | 12 +++++++++
>>> plugins/sample/sample.conf.in | 5 ++++
>>> plugins/sample/ui/config/tab-ext.xml | 11 ++++++--
>>> plugins/sample/ui/pages/Makefile.am | 2 +-
>>> .../sample/ui/pages/help/en_US/sample-tab1.html | 1 +
>>> .../sample/ui/pages/help/en_US/sample-tab2.html | 1 +
>>> plugins/sample/ui/pages/sample-tab1.html.tmpl | 30
>>> ++++++++++++++++++++++
>>> plugins/sample/ui/pages/sample-tab2.html.tmpl | 30
>>> ++++++++++++++++++++++
>>> plugins/sample/ui/pages/tab.html.tmpl | 30
>>> ----------------------
>>> 10 files changed, 89 insertions(+), 34 deletions(-)
>>> create mode 100644 plugins/sample/ui/pages/help/en_US/sample-tab1.html
>>> create mode 100644 plugins/sample/ui/pages/help/en_US/sample-tab2.html
>>> create mode 100644 plugins/sample/ui/pages/sample-tab1.html.tmpl
>>> create mode 100644 plugins/sample/ui/pages/sample-tab2.html.tmpl
>>> delete mode 100644 plugins/sample/ui/pages/tab.html.tmpl
>>>
>>> diff --git a/configure.ac b/configure.ac
>>> index 7872db9..d363b50 100644
>>> --- a/configure.ac
>>> +++ b/configure.ac
>>> @@ -90,7 +90,6 @@ AC_CONFIG_FILES([
>>> plugins/Makefile
>>> plugins/sample/Makefile
>>> plugins/sample/po/Makefile.in
>>> - plugins/sample/sample.conf
>>> plugins/sample/ui/Makefile
>>> plugins/sample/ui/config/Makefile
>>> plugins/sample/ui/js/Makefile
>>> diff --git a/plugins/sample/Makefile.am b/plugins/sample/Makefile.am
>>> index 876ab54..f8368a9 100644
>>> --- a/plugins/sample/Makefile.am
>>> +++ b/plugins/sample/Makefile.am
>>> @@ -21,9 +21,21 @@ SUBDIRS = ui po
>>>
>>> EXTRA_DIST = API.json sample.conf.in $(wildcard *.py) config.status
>>>
>>> +pluginsdir = $(abs_top_srcdir)/plugins
>>> +
>>> all-local:
>>> while read L && test -n "$$L"; do
\
>>> dir=mo/$$L/LC_MESSAGES ; \
>>> $(MKDIR_P) $$dir ; \
>>> ln -sf ../../../po/$$L.gmo $$dir/sample.mo ; \
>>> done < po/LINGUAS
>>> +
>>> +all: sample.conf
>>> + $(MAKE) $(AM_MAKEFLAGS) all-recursive
>>> +
>>> +do_substitution = \
>>> + sed -e 's,[@]pluginsdir[@],$(pluginsdir),g' \
>>> + -e 's,[@]ENABLE_SAMPLE[@],$(ENABLE_SAMPLE),g'
>>> +
>>> +sample.conf: sample.conf.in Makefile
>>> + $(do_substitution) < sample.conf.in > sample.conf
>>> diff --git a/plugins/sample/sample.conf.in
>>> b/plugins/sample/sample.conf.in
>>> index cf42467..7365a7c 100644
>>> --- a/plugins/sample/sample.conf.in
>>> +++ b/plugins/sample/sample.conf.in
>>> @@ -20,3 +20,8 @@ tools.kimchiauth.on = True
>>>
>>> [/circles]
>>> tools.kimchiauth.on = True
>>> +
>>> +[/help]
>>> +tools.staticdir.on = True
>>> +tools.nocache.on = True
>>> +tools.staticdir.dir = '@pluginsdir@/sample/ui/pages/help'
>> Is it also possible to do the trick as we did in Ginger using
>> PluginPaths?
>>
>> kimchi.config.PluginPaths('sample').ui_dir + '/pages/help'
>
>> Or we can directly edit PluginConfig in src/kimchi/config.py.in, and
>> update the "/help" config item with the corrected path.
>>
>> plugin_config = {
>> # ...
>> '/help': {
>> 'tools.staticdir.on': True,
>> 'tools.staticdir.dir':
>> os.path.join(PluginPaths(plugin_name).ui_dir,
>> '/pages/help')
>> 'tools.nocache.on': True
>> }
>> }
> I don't think it is a good idea as you will force all plugins to have a
> help setup.
>
OK. I agree it would be a problem if the plugin does not provide help.
So what do you think of the trick I mentioned above?
[/help]
...
tools.staticdir.dir = kimchi.config.PluginPaths('sample').ui_dir +
'/pages/help'
Yeap. It looks really good compared to the current solution.
Sorry to don't mention that before. =)
>> This can avoid the sed trick in "Makefile.am" and
simplifies the
>> packaging for all the plugins, and save them from adding similar
"help"
>> config item in "plugin_name.conf" file. Otherwise all the plugins
needs
>> this sed trick in packaging system. Is it a bit overkill for a most
>> simple sample plugin?
>>
>> When reviewing the Ginger part of this patch I didn't know you also made
>> some changes in Kimchi. I think it maybe a good chance to update the
>> Kimchi plugin framework to add support for help files. Agree? ;-)
>>