2010-12-21 15 views
0

Die Abkürzung

Dies betrifft SciTE und die Sprache in Windows (insbesondere Windows 7). Dies ist das erste Mal, dass ich SciTE benutze. Wenn es also einen anderen Weg gibt, mein Ziel zu erreichen, ist das auch in Ordnung.Multiline command.go in SciTE

Ziel: Mit einem Tastendruck, Kompilieren, Verknüpfen und Ausführen der neu erstellten Binärdatei.

The Long

ich einrichten möchten die Kompilierung/link/excecute unter dem "go" -Befehl in SciTE. Dies kann etwas verwirrend sein, wie es auch für die go language ist. Hier ist, was ich bisher:

command.compile.*.go=8g $(FileNameExt) 
command.build.*.go=8l -o $(FileName).exe $(FileName).8 
command.go.*.go=$(FileName).exe 

Was Ich mag würde, ist wie etwas zu haben:

command.go.*.go=\ 
8g $(FileNamExt)\ 
8l -o $(FileName).exe $(FileName).8\ 
$(FileName).exe 

Wenn dies die Art und Weise habe ich gedacht, es würde die Datei kompilieren, verknüpfen, und dann führe die ausführbare Datei aus. Was passiert ist:

8g hello.go8l -o hello.exe hello.8hello.exe 

Wenn es sein sollte:

8g hello.go 
8l -o hello.exe hello.8 
hello.exe 

Wenn jede Zeile ausgeführt wird.

Antwort

1

ein Batch-Skript wie so schreiben:

@echo off 
if (%1 == "") (goto end) 

set gofile=%1% 
shift 

8g %gofile%.go 
8l -o %gofile%.exe %gofile%.8 
%gofile%.exe 

:end 

Die Batch-Datei kann überall sein, aber lassen Sie uns sagen, dass es in ist 'C: \ ein \ zwei \ drei \ go.bat' sans die Anführungszeichen. In der SciTE Eigenschaftendatei ändern:

command.go.*.go=$(FileName).exe 

zu

command.go.*.go=C:\one\two\three\GO.bat $(FileName) 

Und wenn Sie F5 treffen, oder klicken Sie auf "Go", wird es kompilieren, Link, und die Datei auszuführen.

0

Haben Sie das versucht?

+0

Ich habe: 8g hello.go && 8l -o hello.exe hello.8 && hello.exe öffnen &&: Keine solche Datei oder Verzeichnis. So ist es gierig. – Coltin

+1

Versuchen Sie, über CMD.exe zu starten: 'command.go. *. Go = cmd.exe/c 8g $ (FileNamExt) && 8l -o $ (Dateiname) .exe $ (FileName) .8 && $ (FileName) .exe ' – devstuff

0

Sie haben Zeile Fortsetzung Escapes ohne Leerzeichen, weshalb es so aussieht.

Ich weiß nicht, Windows, aber in Unix-Shells können Sie mehrere Befehle mit Semikola trennen (oder && als peterSO erwähnt, die hier besser geeignet ist).

Sie können zwar noch einen Zeilenumbruch durchführen, aber erkennen, dass das Umbrechen nicht syntaktisch signifikant ist, fügen Sie daher Trennzeichen entsprechend hinzu.

+0

In Windows, was ich gleichwertig mit dem Semikolon gefunden habe, ist das doppelte Et-Zeichen. SciTE scheint jedoch nicht nett zu sein. Also während '8g% gofile% .go && 8l -o% gofile% .exe% gofile% .8 &&% gofile%.exe 'sans the quotes funktioniert in einer Batch-Datei oder in der Kommandozeile, nicht so in SciTE. – Coltin