April 23, 2019
https://issues.dlang.org/show_bug.cgi?id=19820

          Issue ID: 19820
           Summary: Add readfln to std.stdio
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P1
         Component: phobos
          Assignee: nobody@puremagic.com
          Reporter: andre@s-e-a-p.de

It is quite hard to use readf for beginners as explained here by Ali and Adam. https://forum.dlang.org/post/agspmmtjrthzxefjbwej@forum.dlang.org

Quote from Ali:
> The solution is to use readln, which regrettably comes too late in the book:

Quote from Adam:
> For "%s" with a string argument, it reads ALL of stdin into that string. This means you need to send an end-of-file indicator to the program. ctrl+z on Windows does this, and ctrl+d can on Linux (you might have to hit it twice there; it doesn't technically send end of file, but can be read as it by the program if there is no other input pending in the buffer).

> This is quite bizarre for new users, I agree, but it isn't technically invalid.

> (my personal feeling though is readf is just a pile of confusion and should > almost never be used. I hate that it is introduced so early in most
> tutorials... I'd rather have it in an appendix for special cases only rather
>  than like page 3.)

I would suggest to add a function readfln which solves the issue of readf. readfln executes readln, strip #10 #13 and then executes formattedRead

Signature of readfln should be similair to readf https://dlang.org/phobos/std_stdio.html#.readf

--