diff --git a/CHANGES.txt b/CHANGES.txt
index beee428ec962a4e54187adb21876d29c80470867..178510ce023c6b12b1a22e26d68948fb3780981a 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -14,6 +14,14 @@ Global
 
 * TODO: Porting to python3
 
+Version 1.1.1rc1
+================
+
+Configuration
+-------------
+
+* Allow hiding for namelist files with templates
+
 Release 1.1.0
 =============
 
diff --git a/mkexp b/mkexp
index 8f92114cf11f6a98d99d915d09011422c8ec3624..9b4d0a1402181a1baa205560a5311227700330ac 100755
--- a/mkexp
+++ b/mkexp
@@ -175,7 +175,7 @@ def format_namelist(section, group=None, default_value=''):
     default_key = '.default'
     default_value = section.get(default_key, default_value)
     # Skip if whole section (usually namelist file) is hidden
-    if is_set(section.get(hide_key, 'false')):
+    if is_set(section.get(hide_key)):
         return ''
     # Create list of removed namelist groups.
     # Support old keyword for backward compatibility
@@ -188,7 +188,7 @@ def format_namelist(section, group=None, default_value=''):
     iterator = {group: section[group]}.iteritems() if group else section.iteritems()
     for group, contents in iterator:
         if isinstance(contents, dict):
-            hidden = is_set(contents.get(hide_key, 'false'))
+            hidden = is_set(contents.get(hide_key))
             group_def_val = contents.get(default_key, default_value)
             group_id = group.lower()
             if not hidden and not any(map(lambda x: re.match(x, group_id), black_list)):
@@ -540,6 +540,9 @@ for subjob, subconfig in jobs_config.iteritems():
         job_config['VARIABLES_'] = var_list
         for namelist, groups in job_config['namelists'].iteritems():
             if isinstance(groups, dict):
+                # Skip hidden namelists
+                if is_set(groups.get('.hide')):
+                    continue
                 # Support deprecated keyword 'use_template' but warn user
                 if groups.get('use_template'):
                     keyword_warning('use_template')
diff --git a/test.py b/test.py
index db74b035f69aa6143a6b8cf90cb47568101b9dcf..4203e4e088404929364114a0aa5c83f2469d952e 100644
--- a/test.py
+++ b/test.py
@@ -542,6 +542,19 @@ class NamelistTestCase(MkexpSimpleTestCase):
                    value = 43
         """)
 
+    def test_namelist_with_template(self):
+        self.run_test("""
+            %{NAMELIST}
+        """, """
+            42
+        """, """
+            [namelists]
+              [[namelist]]
+                .use_template = true
+                [[[group]]]
+                   value = 42
+        """)
+
 class NamelistHiddenTestCase(MkexpSimpleTestCase):
 
     def test_namelist_hide(self):
@@ -579,6 +592,19 @@ class NamelistHiddenTestCase(MkexpSimpleTestCase):
                    value = 42
         """)
 
+    def test_hidden_namelist_with_template(self):
+        self.run_test("""
+            %{NAMELIST}
+        """, """
+        """, """
+            [namelists]
+              [[namelist]]
+                .hide = true
+                .use_template = true
+                [[[group]]]
+                   value = 42
+        """)
+
 class NamelistDefaultValueTestCase(MkexpSimpleTestCase):
 
     def test_standard_default_value(self):
diff --git a/test/standard_experiments/namelist.tmpl b/test/standard_experiments/namelist.tmpl
new file mode 100644
index 0000000000000000000000000000000000000000..47516b2c3a7bffa37089f3a7eae5db06b18ad669
--- /dev/null
+++ b/test/standard_experiments/namelist.tmpl
@@ -0,0 +1 @@
+%{group.value}