Re: [jasspa] Wierd read-file behaviour in ME09
The problem is caused by your use of read-file, this command replaces the current buffer with the loaded file, i.e. this command is equivalent to a delete-buffer followed by a find-file. Problem is you have already deleted the current buffer using delete-buffer, so in effect you are calling delete-buffer twice and then find-file - not what you meant, try changing read-file with find-file.
As a side note, the macro does not check that the current buffer has got a file name associated with it which is dangerous, I suggest you take a copy of reread-file from tools.emf and modify that to meet your requirement.
Gomes, Pedro (NSN - PT/Amadora) wrote:
I got some 'weird' behaviour in Micro Emacs 2009 (0909).
If I define the macro above and press C-f12 to reread the current buffer, it re-read the current buffer, but it removes some other buffer from the buffer list. If I have 10 buffers besides the one I want to reread and I press the C-f12 combination 10 times I will be left with only the current buffer and nothing else (and the scratch buffer of course).
Initially I thought it was due to 'delete-buffer' which I believe its irrelevant since the read-file rewrites the current buffer.
Can you explain what might be happening ?
P.S. - By the way, congrats on the new release, looks quite stable!! :P
define-macro reread-file- with-prompt
set-variable #l1 $window-aline
set-variable #l2 $buffer-fname
0x1 delete-buffer $buffer-bname ; force destroy (prompting user doesn't work in macro)
ml-write &spr "[Rereading %s]" #l2
!force global-bind- key reread-file- with-prompt "C-f12"