Многострочный command.go в SciTE - PullRequest
       30

Многострочный command.go в SciTE

0 голосов
/ 22 декабря 2010

Короткая

Это касается SciTE и языка go в Windows (в частности, Windows 7). Это мой первый раз, когда я использую SciTE, так что если есть другой способ достичь моей цели, это тоже хорошо.

Цель: Одним нажатием клавиши скомпилировать, связать и выполнить вновь созданный двоичный файл.

Длинный

Я хочу настроить compile / link / excecute с помощью команды "go" в SciTE. Это может немного сбивать с толку, поскольку это также относится к go language . Вот что у меня есть:

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

Я хотел бы иметь что-то вроде:

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

Если бы это работало так, как я задумал, он скомпилировал бы файл, связал его, а затем запустил исполняемый файл. Что происходит, это:

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

Когда это должно быть:

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

Где выполняется каждая строка.

Ответы [ 2 ]

1 голос
/ 22 декабря 2010

Напишите пакетный скрипт следующим образом:

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

set gofile=%1%
shift

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

:end

Пакетный файл может быть где угодно, но, скажем, он находится в C: \ one \ two \ three \ GO.bat без кавычек.В файле свойств SciTE измените:

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

на

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

И когда вы нажмете F5 или нажмете «Go», он скомпилирует, скомпонует и выполнит файл.

0 голосов
/ 22 декабря 2010

У вас есть продолжения строки без пробелов, поэтому это выглядит так.

Я не знаю Windows, но в оболочках Unix вы можете разделять несколько команд точкой с запятой (или &&, как упоминает peterSO, что более уместно здесь).

Вы все еще можете переносить, но понимаете, что это не будет считать синтаксически значимым переносом, поэтому добавьте разделительные символы в зависимости от ситуации.

...