在 Vim 中打乱列表的最佳方法是什么?
我正在尝试对 vim 中的行进行随机排序(使用 vimscript)。
我为此创建了一个包含所有行号的列表(在我的选择中)。
体育课如果我从第 10 行到第 20 行中选择,我的列表将是:
mylist = ['10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20']
我想对行进行随机排序,并使用 for 循环将它们放回新序列中的相同选择中。
为了实现这一点,我想多次洗牌,但不知道如何洗牌。
另一种解决方案是从我的最后一个随机选择一个索引。
无法找出最好的方法。
我知道我可以使用 python、ruby 或其他语言对行进行排序,但我不想安装它们。
我想使用 vimscript 实现上面的内容。
最佳答案
您可以使用“UNIX 风格”并使用 shuf
来自 coreutils
的命令包裹:
:10,20!shuf<CR>
关于list - 如何在vim中随机播放列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17643039/