Jak zintegrować pep8.py w zaćmieniu?

Trochę tła:

  • PEP 8 jest przewodnikiem stylu dla kodu Pythona . Zawiera konwencje, których powinni przestrzegać wszyscy programiści Pythona.
  • pep8.py jest (bardzo przydatnym) skryptem, który sprawdza formatowanie kodu danego skryptu Pythona, zgodnie z PEP 8.
  • Eclipse to świetne IDE. Z rozszerzeniem Pydev , które może być używane do tworzenia Pythona

I run pep8.py ręcznie podczas pisania skryptów, ale z większe projekty wolę używać Eclipse. Bardzo przydatna byłaby integracja pep8.py w Eclipse/Pydev, więc może być uruchamiany automatycznie we wszystkich plikach w projekcie i wskazywać na linie zawierające Ostrzeżenia. Może jest na to sposób, ale jeszcze go nie znalazłem.

Pytanie brzmi: jak zintegrować pep8.py w zaćmieniu?

Author: AlexA, 2008-12-30

6 answers

Od wersji PyDev 2.3.0, {[0] } jest domyślnie zintegrowany z PyDev, nawet wysyłając z jego domyślną wersją.

Otwórz Okno > Preferencje

Musi być włączona w PyDev > edytor > Analiza kodu > pep8.py

Błędy / ostrzeżenia powinny być pokazywane jako znaczniki (jak inne rzeczy w zwykłej analizie kodu).

W przypadku, gdy plik nie jest analizowany, Zobacz https://stackoverflow.com/a/31001619/832230 .

 88
Author: Fabio Zadrozny,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-10-04 20:44:11

Nie wiem, jak zintegrować go dla całego projektu, ale użyłem go jako zewnętrznego narzędzia do analizy pojedynczego pliku.

Zauważ, że pycodestyle Pakiet jest oficjalnym zamiennikiem i jest nowszą wersją pep8 paczka. Aby go zainstalować, Uruchom:

$ sudo pip install --upgrade pycodestyle

Następny, w Eclipse:

  1. Select Run-External Tools-Konfiguracja Narzędzi Zewnętrznych...
  2. Wybierz Program węzeł główny.
  3. Prasa Nowa uruchom konfigurację przycisk.
  4. wprowadź nazwę dla konfiguracji startowej. Używam pycodestyle.
  5. Wypełnij następujące pola:

    Położenie -- ${system_path:pycodestyle}

    Working directory -- ${container_loc}

    Argumenty -- "${resource_name}" (wykorzystuje aktualnie aktywny plik.)

Przejdź do zakładki Common i potwierdź, że pole wyboru Przydziel konsolę jest zaznaczone.

Zaletą tego podejścia jest to, że możesz korzystać z bardzo aktualnej wersji pakietu i nie są ograniczone do starej wersji dołączonej do PyDev. A jeśli jesteś ciekawy konfiguracji pylint w podobny sposób, zobacz ta odpowiedź .

 25
Author: Dmitry Kochkin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-10-08 19:46:00
  1. Open your Eclipse
  2. Przejdź do pomocy i wybierz opcję Zainstaluj nowe oprogramowanie
  3. Kliknij przycisk Dodaj, a pojawi się okno dialogowe" Dodaj repozytorium "
  4. Możesz użyć dowolnej nazwy. (Użyłem PyDev)
  5. dla lokalizacji wpisz "http://pydev.org/updates"
  6. Kliknij Ok.
  7. Jesteś teraz w trakcie instalacji. Poczekaj, aż się skończy.
  8. po instalacji zamknij Eclipse i otwórz go ponownie.
  9. Teraz, gdy PyDev jest zainstalowany w Twoje zaćmienie, przejdź do okna - > Preferencje
  10. Wybierz PyDev->Edytor - > Analiza Kodu
  11. Idź do pep8.py tab
  12. Wybierz przycisk radiowy ostrzeżenia i kliknij Ok.

To jest to. Twój Eclipse IDE jest teraz zintegrowany z PEP8. Biegać pep8.py automatycznie kliknij prawym przyciskiem myszy na edytorze projektu. Wybierz PyDev i kliknij "Analiza kodu". W zakładce problemy w obszarze roboczym zobaczysz Ostrzeżenia wskazujące na linię, w której dokonano naruszenia w PEP8 (jeśli masz naruszone).

 12
Author: Amazing Angelo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-01-27 16:24:29

ANALIZA KODU:

W Eclipse (PyDev), Jeśli chcesz analizować kod używając stylu pep8 to

Przejdź do:Windows - > Preferencje - > PyDev -> edytor - > Analiza kodu - > pep8.py Zakładka i wybierz Ostrzeżenie Kliknij przycisk Zastosuj i OK.

W Twoim kodzie Pythona, jeśli zatwierdzisz styl kodowania pep8, otrzymasz ostrzeżenie

AUTOMATYCZNE FORMATOWANIE KODU:

W Eclipse ( PyDev ), Jeśli chcesz Auto Sformatuj kod Pythona używając stylu pep8, a następnie

Przejdź do:Windows - > Preferences -> PyDev -> Editor -> Code Style -> Code Formatter- > click on check-box (Use autopep8.py do formatowania konsoli?) Kliknij przycisk Zastosuj i OK.

Jeśli chcesz zwiększyć długość linii (domyślnie pep8 to 79) poniżej użyj autopep8.py możesz ustawić typ parametru--max-line-length=150 Jeśli ustawisz maksymalną długość na 150

Jeśli naciśniesz auto-format skrótu (Ctrl + Shift + f) to automatycznie formatowanie kodu Pythona w stylu pep8

 9
Author: Sagar Pise,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-25 04:54:58

To nie wydaje się być jeszcze w pełni zintegrowane z Pydev.

Zgodnie z sugestią zawartą w tym poście ,

[it] wymagałoby zmiany kodu w pydev - elastyczną opcją byłoby dodanie preferencji pozwalających użytkownikowi wybrać, które wzorce chce dopasować do tworzenia hiperłączy (i powiedzieć, która grupa w dopasowaniu jest linią, A która plikiem)...

Lub, można spróbować hard-kodowane gry z: org.python.pydev.debugowanie.ui.PythonConsoleLineTracker (powinien być dość łatwy do uchwycenia).

A Prośba istnieje tylko w tym celu, ale wydaje się, że nadal jest otwarta rok po jego utworzeniu...

 6
Author: VonC,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-12-31 15:47:42

Nie masz:) zamiast tego korzystasz z bardzo dobrej integracji z PyLint i konfigurujesz PyLint, aby sprawdzał wszystko, co sprawdza PEP8. Zobacz Jak skonfigurować PyLint, aby sprawdzał wszystkie rzeczy sprawdzane przez PEP8?

 -1
Author: Piotr Dobrogost,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:09:54