And I follow "Course 1"
And I navigate to "Grades" node in "Course administration"
And I expand "Setup" node
- And I follow "Categories and items"
+ And I follow "Gradebook setup"
Then I should see "Test Grade Item 1"
And I follow "Edit Test Grade Item 1"
And I expand all fieldsets
And I follow "Course 1"
And I navigate to "Grades" node in "Course administration"
And I expand "Setup" node
- And I follow "Categories and items"
+ And I follow "Gradebook setup"
Then I should see "Test Outcome Grade Item 1"
And I follow "Edit Test Outcome Grade Item 1"
And the field "Outcome" matches value "Grade outcome 1"
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
- * Edit and review page for grade categories and items
+ * The Gradebook setup page.
*
* @package core_grades
* @copyright 2008 Nicolas Connault
}
}
-print_grade_page_head($courseid, 'settings', 'setup', get_string('categoriesanditems', 'grades'));
+print_grade_page_head($courseid, 'settings', 'setup', get_string('gradebooksetup', 'grades'));
// Print Table of categories and items
echo $OUTPUT->box_start('gradetreebox generalbox');
return $str;
}
- //Trims trailing zeros
- //Used on the 'categories and items' page for grade items settings like aggregation co-efficient
- //Grader report has its own decimal place settings so they are handled elsewhere
+ // Trims trailing zeros.
+ // Used on the 'Gradebook setup' page for grade items settings like aggregation co-efficient.
+ // Grader report has its own decimal place settings so they are handled elsewhere.
static function format_number($number) {
$formatted = rtrim(format_float($number, 4),'0');
if (substr($formatted, -1)==get_string('decsep', 'langconfig')) { //if last char is the decimal point
$context = context_course::instance($courseid);
self::$managesetting = array();
if ($courseid != SITEID && has_capability('moodle/grade:manage', $context)) {
- self::$managesetting['categoriesanditems'] = new grade_plugin_info('setup',
+ self::$managesetting['gradebooksetup'] = new grade_plugin_info('setup',
new moodle_url('/grade/edit/tree/index.php', array('id' => $courseid)),
- get_string('categoriesanditems', 'grades'));
+ get_string('gradebooksetup', 'grades'));
self::$managesetting['coursesettings'] = new grade_plugin_info('coursesettings',
new moodle_url('/grade/edit/settings/index.php', array('id'=>$courseid)),
get_string('coursegradesettings', 'grades'));
}
/**
- * Sets a calculated manual grade item. Needs a table with item name - idnumber relation. The step requires you to be in categories and items page.
+ * Sets a calculated manual grade item. Needs a table with item name - idnumber relation.
+ * The step requires you to be in the 'Gradebook setup' page.
*
* @Given /^I set "(?P<calculation_string>(?:[^"]|\\")*)" calculation for grade item "(?P<grade_item_string>(?:[^"]|\\")*)" with idnumbers:$/
* @param string $calculation The calculation.
/**
* Sets a calculated manual grade category total. Needs a table with item name - idnumber relation.
- * The step requires you to be in categories and items page.
+ * The step requires you to be in the 'Gradebook setup' page.
*
* @Given /^I set "(?P<calculation_string>(?:[^"]|\\")*)" calculation for grade category "(?P<grade_item_string>(?:[^"]|\\")*)" with idnumbers:$/
* @param string $calculation The calculation.
| itemname | course | outcome | gradetype | scale |
| Test outcome item one | C1 | OT1 | Scale | Test Scale |
And I expand "Setup" node
- And I follow "Categories and items"
+ And I follow "Gradebook setup"
And I set the following settings for grade item "Course 1":
| Aggregation | Natural |
| Include outcomes in aggregation | 1 |
And I follow "Course 1"
And I navigate to "Grades" node in "Course administration"
And I expand "Setup" node
- And I follow "Categories and items"
+ And I follow "Gradebook setup"
And I set the following settings for grade item "Test outcome item one":
| Extra credit | 1 |
And I log out
And I follow "Course 1"
And I navigate to "Grades" node in "Course administration"
And I expand "Setup" node
- And I follow "Categories and items"
+ And I follow "Gradebook setup"
And I set the following settings for grade item "Course 1":
| Aggregation | Natural |
| Include outcomes in aggregation | 0 |
| Test outcome item one | C1 | OT1 | Scale | Test Scale |
And I navigate to "Grades" node in "Course administration"
And I expand "Setup" node
- And I follow "Categories and items"
+ And I follow "Gradebook setup"
And I set the following settings for grade item "Course 1":
| Aggregation | Natural |
| Include outcomes in aggregation | 1 |
And I set the following settings for grade item "Course 1":
| Aggregation | Natural |
| Exclude empty grades | 0 |
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I press "Add category"
And I set the following fields to these values:
| Category name | Sub category 3 |
And I press "Save changes"
And I turn editing mode off
And I should see "250.00 (25.25 %)" in the ".course" "css_element"
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I press "Add category"
And I set the following fields to these values:
| Category name | Sub sub category 1 |
@javascript
Scenario: Natural aggregation from the setup screen
- And I select "Categories and items" from the "Grade report" singleselect
+ And I select "Gradebook setup" from the "Grade report" singleselect
And I set the following settings for grade item "Course 1":
| Aggregation | Natural |
And I set the following settings for grade item "Sub category 1":
| Aggregation | Natural |
| Exclude empty grades | 0 |
And I turn editing mode off
- And I select "Categories and items" from the "Grade report" singleselect
+ And I select "Gradebook setup" from the "Grade report" singleselect
And I set the field "Override weight of Test assignment one" to "1"
And I set the field "Weight of Test assignment one" to "0"
And I set the field "Override weight of Test assignment six" to "1"
@javascript
Scenario: Switching grade items between categories
# Move to same aggregation (Natural).
- Given I navigate to "Categories and items" node in "Grade administration > Setup"
+ Given I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the field "Select Item a1" to "1"
And I set the field "Select Item a2" to "1"
And I set the field "Select Item a3" to "1"
And the field "Extra credit" matches value "1"
And I press "Cancel"
# Move to Mean of grades (with extra credit).
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the field "Select Item a1" to "1"
And I set the field "Select Item a2" to "1"
And I set the field "Select Item a3" to "1"
And the field "Extra credit" matches value "1"
And I press "Cancel"
# Move to Simple weight mean of grades.
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the field "Select Item a1" to "1"
And I set the field "Select Item a2" to "1"
And I set the field "Select Item a3" to "1"
And the field "Extra credit" matches value "1"
And I press "Cancel"
# Move to Weighted mean of grades.
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the field "Select Item a1" to "1"
And I set the field "Select Item a2" to "1"
And I set the field "Select Item a3" to "1"
And I set the field "Item weight" to "11"
And I press "Save changes"
# Move to same (Weighted mean of grades).
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the field "Select Item a1" to "1"
And I set the field "Select Item a2" to "1"
And I set the field "Select Item a3" to "1"
And the field "Item weight" matches value "11"
And I press "Save changes"
# Move back to Natural.
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the field "Select Item a1" to "1"
And I set the field "Select Item a2" to "1"
And I set the field "Select Item a3" to "1"
| Show average | Show |
And I press "Save changes"
# Add a manual grade item
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I press "Add grade item"
And I set the following fields to these values:
| Item name | Manual item 1 |
Feature: Calculated grade items can be used in the gradebook
In order to use calculated grade items in the gradebook
As a teacher
- I need setup calculated grade items in the categories and items page.
+ I need setup calculated grade items in the 'Gradebook setup' page.
Background:
Given the following "courses" exist:
And I am on site homepage
And I follow "Course 1"
And I navigate to "Grades" node in "Course administration"
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
@javascript
Scenario: The max grade for a category item, with a calculation using Natural aggregation, can be changed
| grade item 1 | - | 75.00 | 0–100 | 75.00 % | - |
| Calc cat totalInclude empty grades. | 100.00 % | 37.50 | 0–50 | 75.00 % | - |
| Course total | - | 37.50 | 0–50 | 75.00 % | - |
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the following settings for grade item "Calc cat":
| Maximum grade | 40 |
And I follow "Grader report"
| grade item 1 | 66.67 % | 75.00 | 0–100 | 75.00 % | 50.00 % |
| calc item | 33.33 % | 37.50 | 0–50 | 75.00 % | 25.00 % |
| Course total | - | 112.50 | 0–150 | 75.00 % | - |
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the following settings for grade item "calc item":
| Maximum grade | 40 |
And I follow "Grader report"
And I am on site homepage
And I follow "Course 1"
And I navigate to "Grades" node in "Course administration"
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
@javascript
Scenario: The max grade for a category item, with a calculation using Natural aggregation, can be changed
| grade item 1 | - | 75.00 | 0–100 | 75.00 % | - |
| Calc cat totalInclude empty grades. | 100.00 % | 37.50 | 0–100 | 37.50 % | - |
| Course total | - | 37.50 | 0–100 | 37.50 % | - |
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the following settings for grade item "Calc cat":
| Maximum grade | 40 |
And I follow "Grader report"
| grade item 1 | 50.00 % | 75.00 | 0–100 | 75.00 % | 37.50 % |
| calc item | 50.00 % | 37.50 | 0–100 | 37.50 % | 18.75 % |
| Course total | - | 112.50 | 0–200 | 56.25 % | - |
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the following settings for grade item "calc item":
| Maximum grade | 40 |
And I follow "Grader report"
And I set the field "Show weightings" to "Show"
And I set the field "Show contribution to course total" to "Show"
And I press "Save changes"
- And I set the field "Grade report" to "Categories and items"
+ And I set the field "Grade report" to "Gradebook setup"
And I press "Add category"
And I set the field "Category name" to "Sub category"
And I press "Save changes"
And I am on site homepage
And I follow "Course 1"
And I navigate to "Grades" node in "Course administration"
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I press "Add grade item"
And I set the following fields to these values:
| Item name | Manual item 1 |
And I press "Save changes"
Scenario Outline: The contribution of extra credit items is normalised
- Given I set the field "Grade report" to "Categories and items"
+ Given I set the field "Grade report" to "Gradebook setup"
When I set the following settings for grade item "Course 1":
| Aggregation | <aggregation> |
And I set the following settings for grade item "Manual item 2":
And I am on site homepage
And I follow "Course 1"
And I navigate to "Grades" node in "Course administration"
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I press "Add grade item"
And I set the following fields to these values:
| Item name | Manual item 1 |
@javascript
Scenario: Natural aggregation with negative and positive grade
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the following settings for grade item "Sub category 1":
| Aggregation | Natural |
| Exclude empty grades | 0 |
And I am on site homepage
And I follow "C1"
And I navigate to "Grades" node in "Course administration"
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I press "Add grade item"
And I set the following fields to these values:
| Item name | MI 1 |
And I set the field "Show weightings" to "Show"
And I set the field "Show contribution to course total" to "Show"
And I press "Save changes"
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the following settings for grade item "CAT1":
| Aggregation | Natural |
And I log out
| MI 5 | 33.33 % | 30.00 | 0–100 | 30.00 % | 10.00 % |
| CAT1 total | 33.33 % | 10.00 | 0–100 | 10.00 % | - |
| Course total | - | 60.00 | 0–300 | 20.00 % | - |
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the following settings for grade item "MI 1":
| Maximum grade | 50.00 |
| Minimum grade | 5.00 |
| MI 5 | 50.00 % | 30.00 | 0–100 | 30.00 % | 15.00 % |
| CAT1 total | 25.00 % | 10.00 | 0–50 | 20.00 % | - |
| Course total | - | 60.00 | 0–200 | 30.00 % | - |
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the following settings for grade item "MI 5":
| Maximum grade | 200.00 |
And I follow "User report"
And I log in as "teacher1"
And I follow "Course 1"
And I navigate to "Grades" node in "Course administration"
- And I set the field "Grade report" to "Categories and items"
+ And I set the field "Grade report" to "Gradebook setup"
And I set the following settings for grade item "Test assignment four (extra)":
| Extra credit | 1 |
And I set the following settings for grade item "Test assignment five (extra)":
And I log in as "teacher1"
And I follow "Course 1"
And I navigate to "Grades" node in "Course administration"
- And I set the field "Grade report" to "Categories and items"
+ And I set the field "Grade report" to "Gradebook setup"
And I set the following settings for grade item "Test assignment four (extra)":
| Extra credit | 1 |
And I set the following settings for grade item "Test assignment five (extra)":
And I log in as "teacher1"
And I follow "Course 1"
And I navigate to "Grades" node in "Course administration"
- And I set the field "Grade report" to "Categories and items"
+ And I set the field "Grade report" to "Gradebook setup"
@javascript
Scenario: Setting all weights in a category to exactly one hundred in total.
And I log in as "teacher1"
And I follow "Course 1"
And I navigate to "Grades" node in "Course administration"
- And I set the field "Grade report" to "Categories and items"
+ And I set the field "Grade report" to "Gradebook setup"
@javascript
Scenario: Grade items weights are normalised when all grade item weights are overridden (sum exactly 100). Extra credit is set to zero (before the fix 20150619).
| Test assignment one | C | F–A | 50.00 % | 60.00 % |
| Sub category 1 total | 3.00 | 0–5 | 60.00 % | - |
| Course total | 3.00 | 0–5 | 60.00 % | - |
- And I select "Categories and items" from the "Grade report" singleselect
+ And I select "Gradebook setup" from the "Grade report" singleselect
And the following should exist in the "grade_edit_tree_table" table:
| Name | Max grade |
| Test assignment one | 5.00 |
| Test assignment one | C | F–A | 50.00 % | <contrib3> |
| Sub category (<aggregation>) total<aggregation>. | 3.00 | 1–5 | 50.00 % | - |
| Course total<aggregation>. | <coursetotal3> | 0–100 | <courseperc3> | - |
- And I select "Categories and items" from the "Grade report" singleselect
+ And I select "Gradebook setup" from the "Grade report" singleselect
And the following should exist in the "grade_edit_tree_table" table:
| Name | Max grade |
| Test assignment one | A (5) |
And I turn editing mode on
When I set the following settings for grade item "Course 1":
| Aggregation | Natural |
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the field "Override weight of Grade me" to "1"
Then the field "Override weight of Grade me" matches value "100.00"
And I click on "Edit" "link" in the "Scale me" "table_row"
| grade_includescalesinaggregation | 1 |
And I follow "Course 1"
And I navigate to "Grades" node in "Course administration"
- And I navigate to "Categories and items" node in "Grade administration > Setup"
+ And I navigate to "Gradebook setup" node in "Grade administration > Setup"
And I set the field "Override weight of Grade me" to "1"
And the field "Override weight of Grade me" matches value "95.238"
And I set the field "Override weight of Scale me" to "1"
| Test assignment one | - | Ace!–Ace! | - |
| Sub category 1 total| - | 0–1 | - |
| Course total | - | 0–1 | - |
- And I set the field "jump" to "Categories and items"
+ And I set the field "jump" to "Gradebook setup"
And the following should exist in the "grade_edit_tree_table" table:
| Name | Max grade |
| Test assignment one | 1.00 |
| Test assignment one | Ace! | Ace!–Ace! | <contrib1> |
| Sub category (<aggregation>) total<aggregation>. | <cattotal1> | 0–100 | - |
| Course total<aggregation>. | <coursetotal1> | 0–100 | - |
- And I set the field "jump" to "Categories and items"
+ And I set the field "jump" to "Gradebook setup"
And the following should exist in the "grade_edit_tree_table" table:
| Name | Max grade |
| Test assignment one | Ace! (1) |
And "Course 1" row "Grade" column of "overview-grade" table should not contain "90.00"
Scenario: We can add a weighting to a grade item and it is displayed properly in the user report
- When I select "Categories and items" from the "Grade report" singleselect
+ When I select "Gradebook setup" from the "Grade report" singleselect
And I set the following settings for grade item "Course 1":
| Aggregation | Weighted mean of grades |
And I set the field "Extra credit value for Test assignment name" to "0.72"
/**
- * Tests grade_edit_tree (deals with the data on the categories and items page in the gradebook)
+ * Tests grade_edit_tree (deals with the data on the 'Gradebook setup' page in the gradebook)
*/
class core_grade_edittreelib_testcase extends advanced_testcase {
public function test_format_number() {
updated,core_tag
withselectedtags,core_tag
tag:create,core_role
+categoriesanditems,core_grades
$string['aggregationhintextra'] = '( Extra credit )';
$string['aggregation_link'] = 'grade/aggregation';
$string['aggregationcoef'] = 'Aggregation coefficient';
-$string['aggregationcoefextra'] = 'Extra credit'; // for the header of the table at Edit categories and items page
+$string['aggregationcoefextra'] = 'Extra credit'; // For the header of the table on the 'Gradebook setup' page.
$string['aggregationcoefextra_help'] = 'If the aggregation is \'Natural\' or \'Simple weighted mean\' and the extra credit checkbox is ticked, the grade item\'s maximum grade is not added to the category\'s maximum grade. This will result in the possibility of achieving the maximum grade in the category without having the maximum grade in all the grade items. If the site administrator has enabled grades over the maximum, there might be grades over the maximum.
If the aggregation is \'Mean of grades (with extra credits)\' and the extra credit is set to a value greater than zero, the extra credit is the factor by which the grade is multiplied before adding it to the total after the computation of the mean.';
$string['calculationview'] = 'View calculation';
$string['cannotaccessgroup'] = 'Can not access grades of selected group, sorry.';
$string['categories'] = 'Categories';
-$string['categoriesanditems'] = 'Categories and items';
$string['category'] = 'Category';
$string['categoryedit'] = 'Edit category';
$string['categoryname'] = 'Category name';
$string['gradebookcalculationswarning'] = 'Note: Some errors have been detected in calculating the grades displayed in the gradebook. It is recommended that the errors are fixed by clicking the button below, though this will result in some grades being changed. For details, see the changes between versions {$a->gradebookversion} and {$a->currentversion} in <a href="{$a->url}">Gradebook calculation changes</a>.';
$string['gradebookhiddenerror'] = 'The gradebook is currently set to hide everything from students.';
$string['gradebookhistories'] = 'Grade histories';
+$string['gradebooksetup'] = 'Gradebook setup';
$string['gradeboundary'] = 'Letter grade boundary';
$string['gradeboundary_help'] = 'This setting determines the minimum percentage over which grades will be assigned the grade letter.';
$string['gradecategories'] = 'Grade categories';
$string['xml'] = 'XML';
$string['yes'] = 'Yes';
$string['yourgrade'] = 'Your grade';
+
+// Deprecated since 3.0.
+$string['categoriesanditems'] = 'Categories and items';
* @return array An array containing 'object', 'type', 'depth' and optionally 'children'
*/
static private function _fetch_course_tree_recursion($category_array, &$sortorder) {
- // update the sortorder in db if needed
- //NOTE: This leads to us resetting sort orders every time the categories and items page is viewed :(
- //if ($category_array['object']->sortorder != $sortorder) {
- //$category_array['object']->set_sortorder($sortorder);
- //}
-
if (isset($category_array['object']->gradetype) && $category_array['object']->gradetype==GRADE_TYPE_NONE) {
return null;
}
$gradenode = $coursenode->add(get_string('grades'), $url, self::TYPE_SETTING, null, 'grades', new pix_icon('i/grades', ''));
}
+ // Check if we can view the gradebook's setup page.
+ if (has_capability('moodle/grade:manage', $coursecontext)) {
+ $url = new moodle_url('/grade/edit/tree/index.php', array('id' => $course->id));
+ $coursenode->add(get_string('gradebooksetup', 'grades'), $url, self::TYPE_SETTING,
+ null, 'gradebooksetup', new pix_icon('i/settings', ''));
+ }
+
// Add outcome if permitted
if (!empty($CFG->enableoutcomes) && has_capability('moodle/course:update', $coursecontext)) {
$url = new moodle_url('/grade/edit/outcome/course.php', array('id'=>$course->id));
3) Create a forum 'f2'
4) Create a quiz 'q1' with one question (e.g. true/false question)
5) Create a quiz 'q2' with one question (can use same question)
-6) In gradebook/reports/categories and items, edit q2's grade (show advanced)
+6) In gradebook/reports/gradebook setup, edit q2's grade (show advanced)
to assign a 'grade to pass' of 5.0.
[Note: Due to a bug in gradebook at time of writing, you may have to go into
admin screens and make sure that 'Student' is included on the list of graded
$string['attempthistory'] = 'Previous attempts';
$string['attemptsettings'] = 'Attempt settings';
$string['attemptreopenmethod'] = 'Attempts reopened';
-$string['attemptreopenmethod_help'] = 'Determines how student submission attempts are reopened. The available options are: <ul><li>Never - The student submission cannot be reopened.</li><li>Manually - The student submission can be reopened by a teacher.</li><li>Automatically until pass - The student submission is automatically reopened until the student achieves the grade to pass value set in the Gradebook (Categories and items section) for this assignment.</li></ul>';
+$string['attemptreopenmethod_help'] = 'Determines how student submission attempts are reopened. The available options are: <ul><li>Never - The student submission cannot be reopened.</li><li>Manually - The student submission can be reopened by a teacher.</li><li>Automatically until pass - The student submission is automatically reopened until the student achieves the grade to pass value set in the Gradebook (Gradebook setup section) for this assignment.</li></ul>';
$string['attemptreopenmethod_manual'] = 'Manually';
$string['attemptreopenmethod_none'] = 'Never';
$string['attemptreopenmethod_untilpass'] = 'Automatically until pass';
// The class gradetreebox matches the pages displaying the gradebook
-// "Categories and items" > "Simple view" and "Full view".
+// "Gradebook setup" > "Simple view" and "Full view".
.gradetreebox {
h4 {
// Force back the base font-size to minimise width.