Bis vor kurzem war ich der Ausführung dieser Schönheit + zu bauen ein Projekt mit Stapel laufen:Gibt es einen "Stack Run" ähnlich wie "Cabal Run"?
stack build && .stack-work/install/x86_64-linux/lts-4.1/7.10.3/bin/<project-name>
Ich war im IRC gesagt, dass dies
stack build && stack exec <project-name>
zu
vereinfacht werden kann, kann dies sein noch mehr vereinfacht, umstack run
oder mindestens
stack run <project-name>
?
Wenn ich mich richtig erinnere, war dies mit cabal run
möglich.
Edit:
@ haoformayor Kommentar ist immer in der Nähe:
alias b='stack build --fast --ghc-options="-Wall" && stack exec'
Obwohl dies muss noch den Projektnamen, nicht wahr?
Ich habe angefangen, auch mit
function stack-run() { stack build && stack exec `basename "$PWD"` }
Obwohl funktioniert dies nur nahe zu kommen, wenn der Projektname mit dem Ordnernamen übereinstimmt. Vielleicht können wir cabal/stack nach dem ersten executable
Eintrag in der .cabal Datei abfragen? Oder Vielleicht könnten wir es tun mit sed
...
Ich glaube nicht, es ein Äquivalent Befehl ist. Ich verwende Shell-Aliase, um etwas Ähnliches zu tun. So etwas wie 'alias b = 'stack build --fast --ghc-options =" - Wall "&& stack exec'' – hao
@haoformayor Das kommt dem, wonach ich suche, sehr nahe. Eine Sekunde, ich werde meine Frage ein wenig erweitern. – Wizek
es ist ziemlich einfach, den Namen der ausführbaren Datei zu greifen, wenn Sie es brauchen: 'grep '^ ausführbare Datei * * .cabal | Schnitt -d '' -f 2 | head -n 1' – hao