Каков наилучший способ перетасовать список в Vim?Как перетасовать список в vim?
Я пытаюсь случайным образом сортировать строки в vim (используя vimscript). Я создал для этого список со всеми номерами строк (в моем выборе).
p.e. если выбрать из строки 10 до 20 мой список будет:
mylist = ['10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20']
Я хотел бы отсортировать строки в случайном порядке и для цикла положить их обратно в том же выборе в новой последовательности. Чтобы реализовать это, я бы хотел перетасовать список много раз, но не знаю, как перетасовать список.
Другим решением было бы выбрать индекс из моего последнего случайного числа.
Невозможно выяснить, что является лучшим способом.
Я знаю, что могу сортировать строки, используя python, ruby или с другими языками, но я не хочу их устанавливать. Я хотел бы реализовать выше, используя vimscript.
Полезное: [Native Vim Random номер сценария] (http://stackoverflow.com/q/12737977). Я вижу, вы уже знаете об этом алгоритме. – glts
Для более тяжелого генератора случайных чисел в скрипте Vim существует также [Rndm] (http://www.drchip.org/astronaut/vim/index.html#RNDM). – glts
Вчера я проверил случайный скрипт Native Vim, но выяснил, что значения не создаются случайным образом (см. Мой комментарий на этой странице). Я также проверил скрипт Rndm из Chip Campbell, но выяснил, что сортировка также не случайна (и, кроме того, в ней есть много кода) – Reman