Complemento Vim para organizar declaraciones de importación de Python

Estoy buscando un complemento para Vim, para organizar las declaraciones de importación de Python de acuerdo con PEP 8 :

Las importaciones deben agruparse en el siguiente orden:

  • importaciones de biblioteca estándar
  • importaciones relacionadas de terceros
  • importaciones específicas de bibliotecas/aplicaciones locales

Debe poner una línea en blanco entre cada grupo de importaciones.

Además, me gustaría ordenar alfabéticamente las importaciones, dentro de cada sección.

  • Debe : dividir las importaciones de la biblioteca estándar de todas las demás
  • Sería : Dividir las importaciones que se han instalado (terceros) de las importaciones locales
  • ¿Sería : Ordenar alfabéticamente las importaciones dentro de esa sección
  • Debe : trabajar para Python 2.7
  • Funcionaría para todas las versiones de Python
  • Idealmente sería instalable como .vimball

Si tiene algún tipo de dependencia extraña, entonces debe funcionar en Linux, pero la mayoría de los complementos de Vim funcionan en todo lo que hace Vim.

Respuestas (1)

No sé si hay un mejor complemento para trabajar específicamente con las importaciones, pero una buena apuesta sería usar el complemento Python-mode ( https://github.com/klen/python-mode ).

Hace muchas cosas relacionadas con la codificación en python (mejor resaltado de sintaxis, verificación de código, integración Pydoc, refactorización, etc.).

También puede agregar y organizar automáticamente las importaciones de acuerdo con PEP8, utilizando la biblioteca python-rope.

Para responder a sus puntos más específicos:

  • Divide las importaciones de bibliotecas estándar de otras;
  • No se divide entre importaciones locales y de terceros;
  • Ordena las importaciones alfabéticamente dentro de una sección, y enumera las instrucciones import foo before from foo import bar ;
  • Funciona para Python 2.6+ y 3.2+;
  • No pude encontrar un vimball para él, pero puedes instalarlo:

    • Desde un zip (disponible en http://www.vim.org/scripts/script.php?script_id=3770 )
    • De la fuente
    • Usando su administrador de complementos favorito (el mío es Vundle (gmarik/Vundle.vim en github))
    • Con APT, si usa una distribución de Linux basada en Debian
    • (Puede encontrar enlaces de instalación e instrucciones más detalladas en el repositorio README)
  • La única "dependencia extraña" necesaria para usar el complemento es que su instalación de Vim debe haber sido compilada con soporte de python (que generalmente es cierto, AFAIK)
Bienvenido a SoftwareRec.SE. Esta es una primera respuesta fantástica. Bien hecho.