I am using evil (emacs+vim). I am also using Proof General for the theorem prover Coq. I was trying to work with emacs but whenever I do:
:x
or
:q
in my coq .v
file all of emacs closes as well (with all my buffers going down). I tried just pressing q
on it own but it doesn't work.
I did:
C-x C-c
but that also kills everything and emacs it seems.
I also tried C-x 0
but it says:
Attempt to delete minibuffer or sole ordinary window.
Which doesn't mean much to me. I googled the error and got this Attempt to delete minibuffer or sole ordinary window which didn't clarify things to much.
Does anyone know how I can just close the current coq text file .v
without having all of emacs close?
Now I have a new error that after I process part of the Coq script and try to save it and exit, the rest of the panes (buffers? frames?) where the proof context and errors messages are have not been closed...so I end up having to close stuff more times or get stuck...any help?
How do I close a Coq file without it not fully closing and staying within emacs?
To give some more context I am used to using Tmux with Vim + terminal. So doing :x
closed my text file and saved it and sent me back to terminal. Thats why I expected it to close my text file but not close emacs (just like it wouldn't close my terminal). I am not saying I necessarily want this behaviour. Perhaps what the issue is that I don't understand what a typical/recommended emacs workflow looks like with ProofGeneral.
Ok, I tried doing what someone suggested which was not to close buffers. Fine. I tried that but now C-x C-f
doesn't open files anymore cuz of ProofGeneral :(
kill-buffer
normally bound toC-x k
.:x
it would close the file, save it and send me back to my terminal. What puzzles me is why Evil's:x
closes ALL of emacs.M-x kill-buffer
closed the buffer. But then it sends me to the Proof General welcome screen (and didn't save the file I guess). It's close to what I want but not quite. I would have expected that Evil's vim commands would just work as normal as they do in the terminal. Why don't they work here?