Agility Kata "CSV Viewer III"

Extend the CSV Viewer application as follows: Add an additional menu item "S)ort". When users press "S", they will be prompted to enter a column name. If a correct column name is entered, the CSV data will be sorted by that column. The current page will be displayed again, as the data to be displayed on this page may have changed due to the sorting.

The display should look like this:

No.|Name |Age|City |
---+-----+---+--------+
 1st |Peter|42 |New York|
 2nd |Paul |57 |London |
 3rd |Mary |35 |Munich |
Page 1 of 3
F)irst page, P)revious page, N)ext page, L)ast page, J)ump to page, S)ort, E)xit

Please enter column name to sort on:
en_USEnglish

Previous iteration edited?

You are currently opening an agility kata. Have you already worked on the previous part?

Please only open this exercise if you have already completed the previous parts. The idea of the Agility Katas is to implement additional requirements on existing code. If you look at all the requirements first, the effect of the Agility Katas will be lost.

Inkremente