diff --git a/bt5/erp5_ace_editor/SkinTemplateItem/portal_skins/erp5_ace_editor/ace_editor_support.zpt b/bt5/erp5_ace_editor/SkinTemplateItem/portal_skins/erp5_ace_editor/ace_editor_support.zpt
index 388b326ed85eb73b0cbab3d5f6ec6a89ca60299e..92f9449333fb61f4df468b6ad3e7a12a1fd700f2 100644
--- a/bt5/erp5_ace_editor/SkinTemplateItem/portal_skins/erp5_ace_editor/ace_editor_support.zpt
+++ b/bt5/erp5_ace_editor/SkinTemplateItem/portal_skins/erp5_ace_editor/ace_editor_support.zpt
@@ -3,6 +3,7 @@
                        div_id string:${id}_ace;
                        mode python: here.Base_getAceEditorMode();
                        container_div_id string:${div_id}_container;
+                       params python: getattr(here, "getParameterSignature", None)
                        '>
   <style type="text/css">
   .ace_scroller {
@@ -149,6 +150,7 @@
   ace_editor_container_div = null;
   ace_editor = null;
   var mode = '${mode}';
+  var params = '${params}';
 
   function maximizeFullscreenRemoveSaveMessage() {
     $('.ace_editor_maximize_fullscreen_message').remove();
@@ -391,17 +393,21 @@
 
     ace.require('ace/ext/language_tools');
     ace_editor.setOptions({ enableBasicAutocompletion: true, enableSnippets: true });
-
+    var data_options = {};
+    if (params !== 'None') {
+      data_options.bound_names = ['context','container','script','traverse_subpath','printed','same_type','string','sequence','random','DateTime','whrandom','reorder','sets','test','math'],
+      data_options.params = params;
+    }
     timer = 0;
     function checkPythonSourceCode() {
       if (timer) {
         window.clearTimeout(timer);
         timer = 0;
       }
+      data_options.code = ace_editor.getSession().getValue();
       timer = window.setTimeout(function() {
         $.post('${portal_url}/ERP5Site_checkPythonSourceCodeAsJSON',
-          {'data': JSON.stringify(
-          { code: ace_editor.getSession().getValue() })},
+          {'data': JSON.stringify(data_options)},
           function(data){
             ace_editor.getSession().setAnnotations(data.annotations);
           }