Ich möchte ein Bausystem erstellen, um Haskell-Dateien zu kompilieren; Beachten Sie, dass ich nicht die gängige Verknüpfung "STRG + B" ersetzen möchte, die die aktuelle Datei in einem ST-Fenster ausführt.sublime text 3 auf ubuntu: wie macht man ein haskell build system?
so nach this messages, ich diese Datei erstellt, die sich im Verzeichnis "/ opt/sublime_text":
import sublime, sublime_plugin
class MakeHaskellCommand(sublime_plugin.TextCommand):
def run(self, edit):
self.view.window().run_command('exec', {"working_dir":"${project_path:${folder}}",'cmd': ["ghc","$file"]})
dann, modifizierte ich den Benutzerschlüssel des Erhabenen-haskell Paket Bindung:
[
{
"keys": ["f1"],
"context": [
{ "key": "haskell_source" },
{ "key": "scanned_source" } ],
"command": "MakeHaskellCommand"
}
]
aber nach einem Neustart des ST, passiert nichts, als ich FN + F1 getroffen.
können Sie mir helfen?
EDIT Dank für Ihre erste Nachricht! Es funktioniert, aber jetzt habe ich ein anderes Problem: Ich möchte alle Dateien im Verzeichnis löschen, mit Ausnahme der Quelldatei und der Binärdatei. Ich kann dieses Plugin starten:
import sublime
import sublime_plugin
class MakeHaskell2Command(sublime_plugin.WindowCommand):
def run(self):
variables = self.window.extract_variables()
args = sublime.expand_variables({
"working_dir": "${project_path:${file_path}}",
"cmd": ["rm", "*.hi"],
"cmd": ["rm", "*.o"]
}, variables)
self.window.run_command('exec', args)
aber nicht entfernen Sie die Dateien. Kannst du mir nochmal helfen?