Vim automatically stores previously yanked texts into registers from 1 to 9
That's not accurate. Registers 1 through 9 are actually used for the previously delete or change commands.
Yank commands store their results in register 0, unless a named register is explicitly specified.
See :help "1
(emphasis mine):
Vim fills these registers with text from yank and delete commands.
Numbered register 0 contains the text from the most recent yank command,
unless the command specified another register with "x
.
Numbered register 1 contains the text deleted by the most recent delete or change command, unless the command specified another register or the text is less than one line (the small delete register is used then). [...]
(And then it goes on to explain exceptions when a delete is less than one line, but it uses "1
instead of "-
anyways...)
How can I configure vim to keep previous yanked texts?
There's no native configuration for this feature, so you'd have to use a plug-in.
A quick search led me to find vim-yoink and YankRing.vim, among a few others, which implement such a feature (not necessarily using the same yank command or the existing numbered registers.) You might want to consider taking a look at some of these if you're interested in such a feature.