Ecco cosa mi piacerebbe fare: quando viene premuto Cc Cl, viene lanciata una nuova finestra di terminale se non c'è già una finestra di terminale, quindi, in quel terminale, gcc viene richiamato con alcune bandiere e il file del buffer corrente. Come potrei farlo?emacs keybinding per compilare il file C
risposta
provare il costruito in:
M-x compile gcc ...
compile
non è legata a nessuna chiavi di default, ma si poteva fare qualcosa di simile:
(add-hook 'c-mode-common-hook
(lambda() (define-key c-mode-base-map (kbd "C-c C-l") 'compile))))
ci sono un sacco di pacchetti persone hanno scritto intorno alla compilazione su Emacs Wiki. Controlla SmartCompile, CompileCommand e la categoria Programmer Utils.
Il vantaggio di utilizzare M-x compile ...
sopra solo in esecuzione in un "terminale" è che si ottiene C-x ` (aka next-error
) che vi passare al file e la linea che ha causato il comando di errore. E c'è il comando M-x ricompilare che fa quello che ti aspetteresti. E, naturalmente, come tutti i comandi di Emacs, il comando compile
mantiene una cronologia delle chiamate di compilazione e puoi scorrere la cronologia con M-p e M-n.
faccio esattamente questo di eseguire il mio test di unità perl in un vicino eshell
: http://github.com/jrockway/elisp/blob/master/_local/cperl-extras.el#L15
La forma generale del codice è:
(defun run-in-eshell (cmd use-hidden-eshell-p)
(with-current-buffer (eproject-eshell-cd-here use-hidden-eshell-p)
(eshell-preinput-scroll-to-bottom)
(goto-char (point-max))
(insert cmd)
(eshell-send-input nil t)
(goto-char (point-max))
(ignore-errors
(set-window-point (get-buffer-window) (point-max)))))
eproject-eshell-cd-here
è ciò che in realtà trova il buffer eshell. Se non si desidera installare eproject, è possibile semplicemente effettuare il ciclo attraverso i buffer e trovarlo da soli.
- 1. Emacs Unbind una modalità di KeyBinding
- 2. per compilare file c con file .a
- 3. C#/WPF: non KeyBinding innescando Comando
- 4. Java swinging keybinding
- 5. Come compilare un solo file in C#?
- 6. D8045: impossibile compilare il file C 'serialcommands.c' con l'opzione/clr
- 7. Impossibile compilare il programma C++
- 8. Come compilare il file .c con OpenSSL include?
- 9. CMake può usare g ++ per compilare i file C?
- 10. Compilare C# nell'obiettivo-C
- 11. Emacs C++, aprendo corrispondente file di intestazione
- 12. Compilare un file binario per collegare OSX
- 13. Compilare codice C++ per AIX su Ubuntu?
- 14. Vim keybinding inside Chrome dev
- 15. Emacs: problema con il file dei tag?
- 16. Compilare in C++ 14
- 17. Compilare C in MIPS
- 18. Alcuni keybinding non funzionano quando si utilizza emacs in un terminale
- 19. Compilare insieme file C e C++ usando GCC
- 20. Override compilare bandiere per i file singoli
- 21. Il file init.el Emacs non viene caricato
- 22. Quando utilizzare Cygwin o MinGW per compilare il codice C?
- 23. Come compilare il codice C++ 14 per Android?
- 24. Compilare C# in Nativo?
- 25. Compilare C per consentire l'overflow del buffer
- 26. Come compilare automaticamente il file Sitemap
- 27. Compilare il file tex XeLaTeX con latexmk
- 28. Emacs: metodi per il debug di python
- 29. Compilare codice C# nell'applicazione
- 30. compilare C++ in programmi "reali"
Si noti che dopo aver eseguito 'M-x compile' una volta è possibile utilizzare' M-x ricompilare' per eseguire lo stesso comando dell'ultima volta. – alternative