diff --git a/bob/bio/base/script/commands.py b/bob/bio/base/script/commands.py
index 397120850a2d6248063fb191c427346f49482c7c..0b59d3232f447da717a0262fcd27af55f4cf7b64 100644
--- a/bob/bio/base/script/commands.py
+++ b/bob/bio/base/script/commands.py
@@ -41,8 +41,8 @@ def metrics(ctx, scores, evaluation, **kargs):
     criterion (eer, min-hter, far, mindcf, cllr, rr).
 
     You need to provide one or more development score file(s) for each
-    experiment. You can also provide eval files along with dev files. If only
-    dev-scores are used, the flag `--no-evaluation` must be used. is required
+    experiment. You can also provide eval files along with dev files. If
+    eval-scores are used, the flag `--eval` must be used. is required
     in that case. Files must be 4- or 5- columns format, see
     :py:func:`bob.bio.base.score.load.four_column` and
     :py:func:`bob.bio.base.score.load.five_column` for details.
@@ -54,11 +54,11 @@ def metrics(ctx, scores, evaluation, **kargs):
     Examples:
         $ bob bio metrics dev-scores
 
-        $ bob bio metrics --no-evaluation dev-scores1 dev-scores2
+        $ bob bio metrics dev-scores1 dev-scores2
 
-        $ bob bio metrics -l results.txt dev-scores1 eval-scores1
+        $ bob bio metrics -e -l results.txt dev-scores1 eval-scores1
 
-        $ bob bio metrics {dev,eval}-scores1 {dev,eval}-scores2
+        $ bob bio metrics -e {dev,eval}-scores1 {dev,eval}-scores2
     """
     if 'criterion' in ctx.meta and ctx.meta['criterion'] == 'rr':
         process = bio_figure.Metrics(ctx, scores, evaluation, load.cmc)
@@ -97,8 +97,8 @@ def roc(ctx, scores, evaluation, **kargs):
     computed using :py:func:`bob.measure.roc`.
 
     You need to provide one or more development score file(s) for each
-    experiment. You can also provide eval files along with dev files. If only
-    dev-scores are used, the flag `--no-evaluation` must be used. is required
+    experiment. You can also provide eval files along with dev files. If
+    eval-scores are used, the flag `--eval` must be used. is required
     in that case. Files must be 4- or 5- columns format, see
     :py:func:`bob.bio.base.score.load.four_column` and
     :py:func:`bob.bio.base.score.load.five_column` for details.
@@ -106,10 +106,10 @@ def roc(ctx, scores, evaluation, **kargs):
     Examples:
         $ bob bio roc -v dev-scores
 
-        $ bob bio roc -v dev-scores1 eval-scores1 dev-scores2
+        $ bob bio roc -e -v dev-scores1 eval-scores1 dev-scores2
         eval-scores2
 
-        $ bob bio roc -v -o my_roc.pdf dev-scores1 eval-scores1
+        $ bob bio roc -e -v -o my_roc.pdf dev-scores1 eval-scores1
     """
     process = bio_figure.Roc(ctx, scores, evaluation, load.split)
     process.run()
@@ -143,8 +143,8 @@ def det(ctx, scores, evaluation, **kargs):
     (false positives on the x-axis and false negatives on the y-axis)
 
     You need to provide one or more development score file(s) for each
-    experiment. You can also provide eval files along with dev files. If only
-    dev-scores are used, the flag `--no-evaluation` must be used. is required
+    experiment. You can also provide eval files along with dev files. If
+    eval-scores are used, the flag `--eval` must be used. is required
     in that case. Files must be 4- or 5- columns format, see
     :py:func:`bob.bio.base.score.load.four_column` and
     :py:func:`bob.bio.base.score.load.five_column` for details.
@@ -152,10 +152,10 @@ def det(ctx, scores, evaluation, **kargs):
     Examples:
         $ bob bio det -v dev-scores
 
-        $ bob bio det -v dev-scores1 eval-scores1 dev-scores2
+        $ bob bio det -e -v dev-scores1 eval-scores1 dev-scores2
         eval-scores2
 
-        $ bob bio det -v -o my_det.pdf dev-scores1 eval-scores1
+        $ bob bio det -e -v -o my_det.pdf dev-scores1 eval-scores1
     """
     process = bio_figure.Det(ctx, scores, evaluation, load.split)
     process.run()
@@ -219,8 +219,8 @@ def cmc(ctx, scores, evaluation, **kargs):
     using :py:func:`bob.measure.cmc`.
 
     You need to provide one or more development score file(s) for each
-    experiment. You can also provide eval files along with dev files. If only
-    dev-scores are used, the flag `--no-evaluation` must be used. is required
+    experiment. You can also provide eval files along with dev files. If
+    eval-scores are used, the flag `--eval` must be used. is required
     in that case. Files must be 4- or 5- columns format, see
     :py:func:`bob.bio.base.score.load.four_column` and
     :py:func:`bob.bio.base.score.load.five_column` for details.
@@ -273,14 +273,14 @@ def dir(ctx, scores, evaluation, **kargs):
     .. [LiJain2005] **Stan Li and Anil K. Jain**, *Handbook of Face Recognition*, Springer, 2005
 
     You need to provide one or more development score file(s) for each
-    experiment. You can also provide eval files along with dev files. If only
-    dev-scores are used, the flag `--no-evaluation` must be used. is required
+    experiment. You can also provide eval files along with dev files. If
+    eval-scores are used, the flag `--eval` must be used. is required
     in that case. Files must be 4- or 5- columns format, see
     :py:func:`bob.bio.base.score.load.four_column` and
     :py:func:`bob.bio.base.score.load.five_column` for details.
 
     Examples:
-        $ bob bio dir -v dev-scores
+        $ bob bio dir -e -v dev-scores
 
         $ bob bio dir -v dev-scores1 eval-scores1 dev-scores2
         eval-scores2
@@ -297,6 +297,7 @@ def dir(ctx, scores, evaluation, **kargs):
 @common_options.eval_option()
 @common_options.n_bins_option()
 @common_options.criterion_option()
+@common_options.no_line_option()
 @common_options.far_option()
 @common_options.thresholds_option()
 @common_options.const_layout_option()
@@ -313,8 +314,8 @@ def hist(ctx, scores, evaluation, **kwargs):
     criterion.
 
     You need to provide one or more development score file(s) for each
-    experiment. You can also provide eval files along with dev files. If only
-    dev-scores are used, the flag `--no-evaluation` must be used. is required
+    experiment. You can also provide eval files along with dev files. If
+    eval-scores are used, the flag `--eval` must be used. is required
     in that case. Files must be 4- or 5- columns format, see
     :py:func:`bob.bio.base.score.load.four_column` and
     :py:func:`bob.bio.base.score.load.five_column` for details.
@@ -326,10 +327,10 @@ def hist(ctx, scores, evaluation, **kwargs):
     Examples:
         $ bob bio hist -v dev-scores
 
-        $ bob bio hist -v dev-scores1 eval-scores1 dev-scores2
+        $ bob bio hist -e -v dev-scores1 eval-scores1 dev-scores2
         eval-scores2
 
-        $ bob bio hist -v --criterion min-hter dev-scores1 eval-scores1
+        $ bob bio hist -e -v --criterion min-hter dev-scores1 eval-scores1
     """
     process = bio_figure.Hist(ctx, scores, evaluation, load.split)
     process.run()
@@ -367,8 +368,8 @@ def evaluate(ctx, scores, evaluation, **kwargs):
        curves to a multi-page PDF file
 
     You need to provide one or more development score file(s) for each
-    experiment. You can also provide eval files along with dev files. If only
-    dev-scores are used, the flag `--no-evaluation` must be used. is required
+    experiment. You can also provide eval files along with dev files. If
+    eval-scores are used, the flag `--eval` must be used. is required
     in that case. Files must be 4- or 5- columns format, see
     :py:func:`bob.bio.base.score.load.four_column` and
     :py:func:`bob.bio.base.score.load.five_column` for details.
@@ -382,9 +383,9 @@ def evaluate(ctx, scores, evaluation, **kwargs):
     Examples:
         $ bob bio evaluate -v dev-scores
 
-        $ bob bio evaluate -v -l metrics.txt -o my_plots.pdf dev-scores eval-scores
+        $ bob bio evaluate -e -v -l metrics.txt -o my_plots.pdf dev-scores eval-scores
 
-        $ bob bio evaluate -v -o my_plots.pdf /path/to/syst-{1,2,3}/{dev,eval}-scores
+        $ bob bio evaluate -e -v -o my_plots.pdf /path/to/syst-{1,2,3}/{dev,eval}-scores
     '''
     log_str = ''
     if 'log' in ctx.meta and ctx.meta['log'] is not None:
diff --git a/bob/bio/base/test/test_commands.py b/bob/bio/base/test/test_commands.py
index e705e7fee0f780698b445829d87e14186c90d943..acc99ff555d0f81f596d9a7f0b7d3b531e5e58b0 100644
--- a/bob/bio/base/test/test_commands.py
+++ b/bob/bio/base/test/test_commands.py
@@ -11,7 +11,7 @@ def test_metrics():
     dev1 = pkg_resources.resource_filename('bob.bio.base.test',
                                            'data/dev-4col.txt')
     runner = CliRunner()
-    result = runner.invoke(commands.metrics, ['--no-evaluation', dev1])
+    result = runner.invoke(commands.metrics, [dev1])
     with runner.isolated_filesystem():
         with open('tmp', 'w') as f:
             f.write(result.output)
@@ -24,7 +24,7 @@ def test_metrics():
                                             'data/test-5col.txt')
     with runner.isolated_filesystem():
         result = runner.invoke(
-            commands.metrics, [dev1, test1, dev2, test2]
+            commands.metrics, ['-e', dev1, test1, dev2, test2]
         )
         with open('tmp', 'w') as f:
             f.write(result.output)
@@ -32,19 +32,19 @@ def test_metrics():
 
     with runner.isolated_filesystem():
         result = runner.invoke(
-            commands.metrics, ['-l', 'tmp', '-lg', 'A,B',
+            commands.metrics, ['-e', '-l', 'tmp', '-lg', 'A,B',
                                dev1, test1, dev2, test2]
         )
         assert result.exit_code == 0, (result.exit_code, result.output)
     with runner.isolated_filesystem():
         result = runner.invoke(
-            commands.metrics, ['-l', 'tmp', dev1, test2]
+            commands.metrics, ['-e', '-l', 'tmp', dev1, test2]
         )
         assert result.exit_code == 0, (result.exit_code, result.output)
 
     with runner.isolated_filesystem():
         result = runner.invoke(
-            commands.metrics, ['-l', 'tmp', '-T', '0.1',
+            commands.metrics, ['-e', '-l', 'tmp', '-T', '0.1',
                                '--criterion', 'mindcf', '--cost', 0.9,
                                dev1, test2]
         )
@@ -52,7 +52,7 @@ def test_metrics():
 
     with runner.isolated_filesystem():
         result = runner.invoke(
-            commands.metrics, ['--no-evaluation', '-l', 'tmp',
+            commands.metrics, ['-l', 'tmp',
                                '--criterion', 'mindcf', '--cost', 0.9,
                                dev1]
         )
@@ -60,27 +60,27 @@ def test_metrics():
 
     with runner.isolated_filesystem():
         result = runner.invoke(
-            commands.metrics, ['--criterion', 'cllr', dev1, test2]
+            commands.metrics, ['-e', '--criterion', 'cllr', dev1, test2]
         )
         assert result.exit_code == 0, (result.exit_code, result.output)
 
     with runner.isolated_filesystem():
         result = runner.invoke(
-            commands.metrics, ['--no-evaluation', '-l', 'tmp', '--criterion', 'cllr',
+            commands.metrics, ['-l', 'tmp', '--criterion', 'cllr',
                                '--cost', 0.9, dev1]
         )
         assert result.exit_code == 0, (result.exit_code, result.output)
 
     with runner.isolated_filesystem():
         result = runner.invoke(
-            commands.metrics, ['--criterion', 'rr', '-T',
+            commands.metrics, ['-e', '--criterion', 'rr', '-T',
                                '0.1', dev1, test2]
         )
         assert result.exit_code == 0, (result.exit_code, result.output)
 
     with runner.isolated_filesystem():
         result = runner.invoke(
-            commands.metrics, ['--no-evaluation', '-l', 'tmp', '--criterion', 'rr',
+            commands.metrics, ['-l', 'tmp', '--criterion', 'rr',
                                dev1, dev2]
         )
         assert result.exit_code == 0, (result.exit_code, result.output)
@@ -92,7 +92,7 @@ def test_roc():
                                            'data/dev-4col.txt')
     runner = CliRunner()
     with runner.isolated_filesystem():
-        result = runner.invoke(commands.roc, ['--no-evaluation', '--output',
+        result = runner.invoke(commands.roc, ['--output',
                                               'test.pdf',dev1])
         if result.output:
             click.echo(result.output)
@@ -106,7 +106,7 @@ def test_roc():
     with runner.isolated_filesystem():
         result = runner.invoke(commands.roc, ['--split', '--output',
                                               'test.pdf', '-S', '-lc',
-                                              'lower-left',
+                                              'lower-left', '-e',
                                               dev1, test1, dev2, test2])
         if result.output:
             click.echo(result.output)
@@ -114,7 +114,8 @@ def test_roc():
 
     with runner.isolated_filesystem():
         result = runner.invoke(commands.roc, ['--output',
-                                              'test.pdf', '--legends', 'A,B', 
+                                              'test.pdf',
+                                              '-e', '--legends', 'A,B',
                                               dev1, test1, dev2, test2])
         if result.output:
             click.echo(result.output)
@@ -128,7 +129,7 @@ def test_roc():
         result = runner.invoke(commands.roc, [
             '--min-far-value', '1e-6',
             '--lines-at', '1e-5',
-            '-v', '--legends', 'A',
+            '-v', '--legends', 'A', '-e',
             dev_nonorm, dev_ztnorm
         ])
         if result.output:
@@ -142,7 +143,7 @@ def test_det():
                                            'data/dev-4col.txt')
     runner = CliRunner()
     with runner.isolated_filesystem():
-        result = runner.invoke(commands.det, ['--no-evaluation', dev1, '-S'])
+        result = runner.invoke(commands.det, [dev1, '-S'])
         if result.output:
             click.echo(result.output)
         assert result.exit_code == 0, (result.exit_code, result.output)
@@ -154,14 +155,15 @@ def test_det():
                                             'data/test-5col.txt')
     with runner.isolated_filesystem():
         result = runner.invoke(commands.det, ['--split', '--output',
-                                              'test.pdf', '--legends', 'A,B',
+                                              'test.pdf', '--legends',
+                                              'A,B', '-e',
                                               dev1, test1, dev2, test2])
         if result.output:
             click.echo(result.output)
         assert result.exit_code == 0, (result.exit_code, result.output)
     with runner.isolated_filesystem():
         result = runner.invoke(commands.det, ['--output',
-                                              'test.pdf',
+                                              'test.pdf', '-e',
                                               dev1, test1, dev2, test2])
         if result.output:
             click.echo(result.output)
@@ -175,7 +177,7 @@ def test_det():
     with runner.isolated_filesystem():
         result = runner.invoke(commands.det, [
             '--min-far-value', '1e-6',
-            '--lines-at', '1e-5',
+            '--lines-at', '1e-5', '-e',
             '-v', '--legends', 'A',
             dev_nonorm, dev_ztnorm
         ])
@@ -234,7 +236,7 @@ def test_hist():
                                             'data/test-5col.txt')
     runner = CliRunner()
     with runner.isolated_filesystem():
-        result = runner.invoke(commands.hist, ['--no-evaluation', dev1])
+        result = runner.invoke(commands.hist, [dev1])
         if result.output:
             click.echo(result.output)
         assert result.exit_code == 0, (result.exit_code, result.output)
@@ -242,14 +244,14 @@ def test_hist():
     with runner.isolated_filesystem():
         result = runner.invoke(commands.hist, ['--criterion', 'min-hter', '--output',
                                                'HISTO.pdf', '-b',
-                                               '30,auto','--no-evaluation', dev1, dev2])
+                                               '30,auto', dev1, dev2])
         if result.output:
             click.echo(result.output)
         assert result.exit_code == 0, (result.exit_code, result.output)
 
     with runner.isolated_filesystem():
         result = runner.invoke(commands.hist, ['--criterion', 'eer', '--output',
-                                               'HISTO.pdf', '-b', '30',
+                                               'HISTO.pdf', '-b', '30', '-e',
                                                '-lg', 'A,B', dev1, test1, dev2,
                                                test2])
         if result.output:
@@ -263,7 +265,7 @@ def test_cmc():
                                            'data/scores-cmc-5col.txt')
     runner = CliRunner()
     with runner.isolated_filesystem():
-        result = runner.invoke(commands.cmc, ['--no-evaluation', dev1])
+        result = runner.invoke(commands.cmc, [dev1])
         if result.output:
             click.echo(result.output)
         assert result.exit_code == 0, (result.exit_code, result.output)
@@ -272,7 +274,7 @@ def test_cmc():
     with runner.isolated_filesystem():
         result = runner.invoke(commands.cmc, ['--output', 'test.pdf',
                                               '--legends', 'A,B', '-S',
-                                              '-ts', 'TA,TB',
+                                              '-ts', 'TA,TB', '-e',
                                               dev1, test1, dev1, test1])
         if result.output:
             click.echo(result.output)
@@ -285,7 +287,7 @@ def test_cmc():
 
     with runner.isolated_filesystem():
         result = runner.invoke(commands.cmc, [
-            '-v', '--legends', 'A',
+            '-v', '--legends', 'A', '-e',
             dev_nonorm, dev_ztnorm
         ])
         if result.output:
@@ -300,7 +302,7 @@ def test_dir():
                                            'data/scores-nonorm-openset-dev')
     runner = CliRunner()
     with runner.isolated_filesystem():
-        result = runner.invoke(commands.dir, ['--no-evaluation', dev1, '--rank', 2])
+        result = runner.invoke(commands.dir, [dev1, '--rank', 2])
         if result.output:
             click.echo(result.output)
         assert result.exit_code == 0, (result.exit_code, result.output)
@@ -309,7 +311,7 @@ def test_dir():
     with runner.isolated_filesystem():
         result = runner.invoke(commands.dir, ['--output', 'test.pdf',
                                               '--legends', 'A,B', '-S',
-                                              '--min-far-value', '1e-6',
+                                              '--min-far-value', '1e-6', '-e',
                                               dev1, test1, dev1, test1])
         if result.output:
             click.echo(result.output)
diff --git a/doc/experiments.rst b/doc/experiments.rst
index 21160bdcca5abe098e33f7ce030f04bae93c4121..863d96a7d0c447234ca459d431531f644108ff6e 100644
--- a/doc/experiments.rst
+++ b/doc/experiments.rst
@@ -177,7 +177,7 @@ min.HTER) on a development set and apply it on an evaluation set, just do:
 
 .. code-block:: sh
 
-    $ bob bio metrics {dev,test}-4col.txt --legends ExpA --criterion min-hter
+    $ bob bio metrics -e {dev,test}-4col.txt --legends ExpA --criterion min-hter
 
     [Min. criterion: MIN-HTER ] Threshold on Development set `ExpA`: -4.830500e-03
     ======  ======================  =================
@@ -192,8 +192,8 @@ min.HTER) on a development set and apply it on an evaluation set, just do:
     ======  ======================  =================
 
 .. note::
-    You can compute analysis on development set(s) only by passing option
-    ``--no-evaluation``. See metrics --help for further options.
+    When evaluation scores are provided, ``--eval`` option must be passed.
+    See metrics --help for further options.
 
 You can also compute measure such as recognition rate (``rr``), Cllr and
 minCllr (``cllr``) and minDCF (``mindcf``) by passing the corresponding option.
@@ -201,7 +201,7 @@ For example:
 
 .. code-block:: sh
 
-    bob bio metrics {dev,test}-4col.txt --legends ExpA --criterion cllr
+    bob bio metrics -e {dev,test}-4col.txt --legends ExpA --criterion cllr
 
     ======  ======================  ================
     Computing  Cllr and minCllr...
@@ -244,7 +244,7 @@ For example, to generate a CMC curve from development and evaluation datasets:
 
 .. code-block:: sh
 
-    $bob bio cmc -v --output 'my_cmc.pdf' dev-1.txt eval-1.txt
+    $bob bio cmc -e -v --output 'my_cmc.pdf' dev-1.txt eval-1.txt
     dev-2.txt eval-2.txt
 
 where `my_cmc.pdf` will contain CMC curves for the two experiments.
@@ -270,7 +270,7 @@ each experiment. For example:
 
 .. code-block:: sh
 
-    $bob bio evaluate -v -l 'my_metrics.txt' -o 'my_plots.pdf' {sys1,sys2}/{dev,eval}
+    $bob bio evaluate -e -v -l 'my_metrics.txt' -o 'my_plots.pdf' {sys1,sys2}/{dev,eval}
 
 will output metrics and plots for the two experiments (dev and eval pairs) in
 `my_metrics.txt` and `my_plots.pdf`, respectively.