python - Cómo ejecutar Pylint con PyCharm
python-3.x (6)
Quiero configurar pylint como una herramienta externa en todo el directorio de mi proyecto para un proyecto de python en el que estoy trabajando. He intentado usar el repositorio como módulo con __init__.py
y sin, y no funciona de ninguna manera.
Estoy teniendo dificultades para configurar pylint para ejecutar con PyCharm. Sé que debería ejecutarlo como una herramienta externa, sin embargo, la configuración me confunde.
La fuente autorizada en su documentación está rota, por lo que tampoco puedo verificar eso.
Al principio instale el pylint con pip:
pip install pylint
Tiene que abrir "Configuración> Herramientas> Herramientas externas" y presionar el botón "+" en PyCharm.
Aquí hay un example con buenos ajustes.
Debido a que no encontré una configuración preparada que funcione, estas son las configuraciones que uso en PyCharm CE 2018.1 en macOS:
1 - pip install pylint
en tu proyecto virtualenv o globalmente
2 - Añadir nueva herramienta externa y configurar:
Program: pylint
Arguments: "--msg-template=''{abspath}:{line:5d},{column:2d}: {msg} ({symbol})''" --output-format=colorized "$FilePath$"
Working directory: $ProjectFileDir$
Output filters: $FILE_PATH$:/s*$LINE$/,/s*$COLUMN$:
Observe las comillas dobles requeridas para la plantilla msg y los caracteres de escape para los filtros de salida. El filtro de salida permite hacer clic en la ruta del archivo y abrir la ubicación en el editor de fuente IDE.
La única característica faltante serían los filtros de salida para trazar las descripciones de pelusa directamente en la vista de origen, como se hace con el relevo incorporado. Sin embargo, no hay tal característica en este momento.
Puede configurar pylint
para que funcione con PyCharm siguiendo los siguientes pasos:
Instalar
pylint
:$ pip install pylint
Localice su carpeta de instalación
pylint
:$ which pylint # MacOS/Linux /usr/local/bin/pylint # this is just a possible output check yours
$ where pylint # Windows %LocalAppData%/Programs/Python/Python36-32/Scripts/pylint.exe # possible location
Abra la ventana de configuración de PyCharm con
File -> Settings
, luego navegue hastaTools -> External Tools
en la barra lateral. (O busque " herramientas externas ")Configure una herramienta externa haciendo clic en el signo + y rellenando los campos correspondientes. En
Program
use la ruta que obtuvo al ejecutarwhich pylint
, para los otros valores puede usar el mismo de la imagen.Ejecutar
pylint
desdeTools -> External Tools -> pylint
:Mira tu salida en la terminal de PyCharm.
Para más detalles, refiérase a Pylinting con PyCharm .
Actualizar:
Si desea usar pylint
para verificar todo su proyecto o un archivo o directorio en particular, puede hacer clic derecho en la raíz, archivo o directorio de su proyecto, luego en External Tools -> pylint
como se muestra a continuación.
Puedes probar este plugin Pylint PyCharm :
proporciona análisis en tiempo real y bajo demanda de archivos de Python con Pylint desde PyCharm / IDEA.
Una vez que lo tiene instalado, la inspección en tiempo real funciona automáticamente. Para la demanda, tiene varias opciones que van desde solo revisar el archivo abierto actual para escanear todo el proyecto:
(Solo por el bien de la transparencia, yo soy el desarrollador)
Un colega me señaló el pylint-pycharm en GitHub. Es una envoltura alrededor de pylint con salida formateada para PyCharm. Así es como lo configuro:
git clone https://github.com/perses76/pylint-pycharm.git
cd pylint-pycharm
python setup.py build
Esto crea build/scripts-2.7/pylint-pycharm
Luego, en PyCharm, crea una nueva herramienta externa con estos ajustes:
Program: path to your installation of pylint-pycharm
Arguments: --virtualenv=$PyInterpreterDirectory$/.. $FileName$
Working directory: $FileDir$
Output filters: $FILE_PATH$/:$LINE$/:$COLUMN$/:.*
Ahora ejecútelo desde Herramientas -> Herramientas externas -> PyLintPyCharm. Cada línea de salida estará hipervinculada a la posición relevante en el código fuente.
Una nota sobre las respuestas anteriores. Estaba buscando un método para que PyCharm fuera consciente de la sintaxis de salida para poder saltar directamente a las ubicaciones de los archivos. Eso funciona sin usar herramientas adicionales.
Pylint puede configurarse para enviar mensajes en un formato específico utilizando la opción msg-template
en el archivo pylintrc o la opción CLI --msg-template
.
Lo puse en: msg-template=''{abspath}:{line}:{column}: {msg_id} {msg}''
En la configuración de Herramientas externas, los Output filters:
se pueden establecer en $FILE_PATH$:$LINE$:$COLUMN$: .*
lo que PyCharm muestra enlaces para saltar directamente a las ubicaciones informadas. Esto se puede combinar con output-format=colorized
así que obtengo esto: PyCharm no reconoce la columna a pesar de haberla configurado. Pero tener el archivo y la línea es suficiente para mí.