diff --git a/bin/efa b/bin/efa
index cff35e92b8731983e31b439e148ce98a5d93bbef..6725a540812fbbd19233c6011ec861767b7c80b4 100755
--- a/bin/efa
+++ b/bin/efa
@@ -125,7 +125,11 @@ GetOptions(
 );
 
 unless (@from and @to) {
-	(@from[0,1], @to[0,1]) = @ARGV;
+	if (@ARGV == 4) {
+		(@from[0,1], @to[0,1]) = @ARGV;
+	} elsif (@ARGV == 6) {
+		(@from[0,1], @via[0,1], @to[0,1]) = @ARGV;
+	}
 }
 
 unless (@to == 2 and @from == 2) {
@@ -225,7 +229,7 @@ efa - unofficial efa.vrr.de command line client
 
 =item B<efa> B<--from> I<city> I<stop> B<--to> I<city> I<stop> [ I<additional options> ]
 
-=item B<efa> [ I<options> ] I<from-city> I<from-stop> I<to-city> I<to-stop>
+=item B<efa> [ I<options> ] I<from-city> I<from-stop> [ I<via-city> I<via-stop> ] I<to-city> I<to-stop>
 
 =back