From: Sergey Matveev Date: Wed, 31 Aug 2016 19:12:05 +0000 (+0300) Subject: :cdo команда и подчистка Python импортов неиспользуемых X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=ff389e5c27bede144790b94ba46654a79134383b;p=stargrave-blog.git :cdo команда и подчистка Python импортов неиспользуемых Не редко в Python возникает необходимость перенести какие-то функции/определения в другой файл/модуль. Кроме переноса самих функций нужно ещё и их зависимости прописать. Сегодня обнаружил, как мне кажется, очень простой способ: * просто переносим *все* импорты из исходного как есть * натравливаем pylint, вывод которого должен попасть в quickfix * в quickfix при этом должны быть только сплошные сообщения unused-import * делаем :cdo d Само собой подразумевается что имеется работающий и настроенный на quickfix pylint, подразумевается что используется "каноничный" формат импортов (по импорту на строку, http://git.stargrave.org/cgit.cgi/pyimportcan.git/tree/pyimportcan.pl). Вся "фишка" в :cdo d. Эта команда для каждой строчки quickfix-а выполняет заданную команду. Для unused-import нужно просто удалить строку. Благодаря quickfix -- все смещённые строки будут им учтены и поэтому переход на следующие элементы quickfix проходит как ожидается. ---