Seite 1 von 1

Notepad++ für Linux-Entwicklung konfigurieren

Verfasst: Montag 7. Mai 2018, 08:48
von dirk1312
Hallo zusammen,

könnt ihr mir vielleicht helfen: Ich entwickle meine Python-Skripte aktuell in Notepad++ unter Windows und stelle dort immer Line Breaks "Linux (LF)" ein und als Encoding "UTF-8 ohne BOM". Wenn ich die Dateien per WinScp aber auf meinen Raspberry Pi mit Raspbian schiebe, dann funktionieren die Skripte nicht.

Teilweise sind Zeilen nach oben in die vorherige gezogen, aber selbst wenn ich das anpasse funktionieren sie nicht und ich sehe keinen Unterschied in der Formatierung. Habt ihr Tipps für mich, was ich alles in Notepad++ einstellen muss, um darauf sinnvoll Python-Skripte für meinen Raspberry entwickeln zu können?

Auf meinem Laptop kann ich leider keine echte IDE installieren, da Geschäftslaptop und den würde ich gerne nutzen, da der PC fast immer aus bleibt.

Vielen Dank und viele Grüße

Dirk

Re: Notepad++ für Linux-Entwicklung konfigurieren

Verfasst: Montag 7. Mai 2018, 08:53
von Sirius3
@dirk1312: das sollte eigentlich kein Problem des Editors sein. Hast Du mal unter View -> Show Symbols -> Show All Characters eingeschaltet, dann müßtest Du an den betreffenden Stellen ja sehen, was da an unsichtbaren Zeichen steht.
Ansonsten darauf achten, dass immer mit Leerzeichen eingerückt wird und keine Tabs in der Datei sind.

Re: Notepad++ für Linux-Entwicklung konfigurieren

Verfasst: Montag 7. Mai 2018, 10:34
von dirk1312
Hallo Sirius3,

vielen Dank für deine Antwort.

Show All Characters habe ich aktiviert, genau wie die Verwendung von Leerzeichen anstatt Tabs (ich mache auch einiges mit YAML-Dateien, deshalb war das schon so).

Grundsätzlich sieht die Datei für mich gut aus. Deshalb wundert es mich auch etwas. Dass WinScp noch etwas mit den Dateien macht denke ich auch nicht. Ich muss mir die Dateien nochmal genauer anschauen.

Viele Grüße

Dirk

Re: Notepad++ für Linux-Entwicklung konfigurieren

Verfasst: Montag 7. Mai 2018, 18:09
von nezzcarth
Du könntest mal schauen, was 'file' unter Linux zu deinem Skript sagt.

Code: Alles auswählen

$ file test.py
test.py: Python script, UTF-8 Unicode (with BOM) text executable, with CRLF line terminators

$ ./test.py                                    
./test.py: Zeile 1: #!/usr/bin/env: Datei oder Verzeichnis nicht gefunden
./test.py: Zeile 2: Syntaxfehler beim unerwarteten Wort `"…"'
'/test.py: Zeile 2: `print("…")

$ sed -i 's/^\xEF\xBB\xBF//' test.py ; sed -i 's/\r//g' test.py
$ file test.py
test.py: Python script, UTF-8 Unicode text executable

$ ./test.py
…
Wenn du genauer beschreiben kannst, was (nicht) passiert oder welcher Fehler kommt, kann man vielleicht auch weiterhelfen. Ggf. kannst du dein Skript auch mal durch "dos2unix" jagen (das macht sowas ähnliches wie mein sed Beispiel oben, aber robuster), falls du vermutest, dass Notepad++ nicht richtig konvertiert.

Re: Notepad++ für Linux-Entwicklung konfigurieren

Verfasst: Montag 7. Mai 2018, 18:40
von pyseidon
Wie überträgst Du die Dateien mit WinSCP, Text oder Binär? Doch WinSCP macht da schon noch was mit den Dateien. Zum Beispiel werden die Zeilenumbrüche hin und her konvertiert.

Re: Notepad++ für Linux-Entwicklung konfigurieren

Verfasst: Mittwoch 16. Mai 2018, 05:52
von dirk1312
Guten Morgen,

ich bin gestern endlich mal dazu gekommen, meine Skripte lokal zu bearbeiten und dann auf den Pi zu spielen.

Wenn ich dann ein

Code: Alles auswählen

chmod u+x


darauf ausführe und anschließend

Code: Alles auswählen

file my_local_created_file.py
aufrufe bekomme ich angezeigt

Code: Alles auswählen

my_local_created_file.py: Python script, ASCII executable
Komischerweise funktioniert das Skript auch. Ich muss nochmal das heraus kramen, das die Probleme gemacht hat - wobei ich gestern den Ordner (trotz längeren Suchens) nicht mehr gefunden habe, in dem es liegt. :/

Vielen Dank und viele Grüße

Dirk