Я собираюсь предположить, что Вы имеете список файлов открытый внутренний Vim и хотите моделировать команду "gf" через целый список...
Редактирование Ваш .vimrc для включения этой функции:
function Openall()
edit <cfile>
bfirst
endfunction
можно тогда выделить весь файл (или набор путей, которые Вы хотите открыть), использование визуального режима (1G, Shift-V, G) и ввод ": назовите Openall ()". Впоследствии строка команды покажет это:
:'<,'>call Openall()
Это выполнит новый Openall () функция через все выделенные строки.
Нажимают Enter, и все файлы будут открыты в фоновых буферах. Можно тогда получить доступ к ним использующий обычные буферные команды.: ls отобразит их как список.
Я написал приблизительный алгоритм для описываемого вами случая, т. Е. Трехмерных прямоугольных блоков с ортогональным вращением, на C ++. Вы можете найти результаты и алгоритм в опубликованной статье: http://www.cs.ukzn.ac.za/publications/erick_dube_507-034.pdf
Эта проблема является NP-сложной. Лучше всего подходит алгоритм приближения (до тех пор, пока гений не решит какую-либо проблему NP или очень удачливый парень не наткнется на решение). К сожалению, я не знаю ни одного хорошо известного алгоритма приближения для этой проблемы.