diff --git a/app/controllers/shared/download.php b/app/controllers/shared/download.php
index 39fc7ddae1a1003d64c4041bdf8ef0c139084f14..59b17512687d8c058161b69839462306819ad94b 100644
--- a/app/controllers/shared/download.php
+++ b/app/controllers/shared/download.php
@@ -86,7 +86,7 @@ class Shared_DownloadController extends AuthenticatedController
         $this->exportTcpdf($blocks, self::sanitizeFilename(
             _('Modulhandbuch'),
             trim($this->StgteilVersion->studiengangteil->getDisplayName()),
-            $semester->semester_token ?: $semester->name,
+            $semester->short_name,
             $language
         ));
     }
@@ -280,4 +280,4 @@ class Shared_DownloadController extends AuthenticatedController
         }
         return $result;
     }
-}
\ No newline at end of file
+}
diff --git a/app/views/admin/semester/index.php b/app/views/admin/semester/index.php
index c6aeb815ce953b1c210a83661413b648aa1376d3..2ac8559a8df3810dd6872bb23a8dec799a58af04 100644
--- a/app/views/admin/semester/index.php
+++ b/app/views/admin/semester/index.php
@@ -59,7 +59,7 @@
                 <? endif; ?>
             </td>
             <td>
-                <?= htmlReady($semester->semester_token ?: '- ' . _('keins') . ' -') ?>
+                <?= htmlReady((string) $semester->semester_token ?: '- ' . _('keins') . ' -') ?>
             </td>
             <td>
                 <?= strftime('%x', $semester->beginn) ?>
diff --git a/lib/classes/globalsearch/GlobalSearchCourses.php b/lib/classes/globalsearch/GlobalSearchCourses.php
index 5ba8e44b610eedcff40cfd60fed493a32853f32e..b4b9bccae1f515be2e3ee48d048fdf7dc9b18190 100644
--- a/lib/classes/globalsearch/GlobalSearchCourses.php
+++ b/lib/classes/globalsearch/GlobalSearchCourses.php
@@ -203,7 +203,7 @@ class GlobalSearchCourses extends GlobalSearchModule implements GlobalSearchFull
             'number'        => self::mark($course->veranstaltungsnummer, $search),
             'name'          => self::mark($course->getFullname(), $search),
             'url'           => URLHelper::getURL("dispatch.php/course/details/index/{$course->id}", [], true),
-            'date'          => (string) $semester->token ?: (string) $semester->name,
+            'date'          => $semester->short_name,
             'dates'         => $turnus_string,
             'has_children'  => count($course->children) > 0,
             'children'      => $result_children,
diff --git a/lib/classes/globalsearch/GlobalSearchMyCourses.php b/lib/classes/globalsearch/GlobalSearchMyCourses.php
index 5a0ac1882848710136db4d878fa0a7c6ed73c625..a058b0b4c30967012e5965a0cf094291ee718097 100644
--- a/lib/classes/globalsearch/GlobalSearchMyCourses.php
+++ b/lib/classes/globalsearch/GlobalSearchMyCourses.php
@@ -145,7 +145,7 @@ class GlobalSearchMyCourses extends GlobalSearchModule
             'number'        => self::mark($course->veranstaltungsnummer, $search),
             'name'          => self::mark($course->getFullname(), $search),
             'url'           => URLHelper::getURL('seminar_main.php', ['cid' => $course->id], true),
-            'date'          => (string) $semester->token ?: (string) $semester->name,
+            'date'          => $semester->short_name,
             'dates'         => $turnus_string,
             'has_children'  => count($course->children) > 0,
             'children'      => $result_children,
diff --git a/lib/models/Course.class.php b/lib/models/Course.class.php
index 878c12edbf4c3107632c05e1fff51504521fc003..ba36ee9fb901c2ee8469ff142e4d9866e2c0e141 100644
--- a/lib/models/Course.class.php
+++ b/lib/models/Course.class.php
@@ -392,9 +392,9 @@ class Course extends SimpleORMap implements Range, PrivacyObject, StudipItem, Fe
     public function getTextualSemester()
     {
         if (count($this->semesters) > 1) {
-            return $this->start_semester->name . ' - ' . $this->end_semester->name;
+            return $this->start_semester->short_name . ' - ' . $this->end_semester->short_name;
         } elseif (count($this->semesters) === 1) {
-            return $this->start_semester->name;
+            return $this->start_semester->short_name;
         } else {
             return _('unbegrenzt');
         }
diff --git a/lib/models/Semester.class.php b/lib/models/Semester.class.php
index a5d81c7ca8565da1cdd4a19a46d302a34b6d312a..33b309895d075230b4651c624e2b1eb31939e7bc 100644
--- a/lib/models/Semester.class.php
+++ b/lib/models/Semester.class.php
@@ -41,6 +41,9 @@ class Semester extends SimpleORMap
         $config['additional_fields']['last_sem_week']['get'] = 'getLastSemesterWeek';
         $config['additional_fields']['current']['get'] = 'isCurrent';
         $config['additional_fields']['past']['get'] = 'isPast';
+        $config['additional_fields']['short_name']['get'] = function($semester) {
+            return (string) $semester->semester_token ?: (string) $semester->name;
+        };
 
         $config['additional_fields']['absolute_seminars_count'] = [
             'get' => 'seminarCounter',