help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: how to get around deprecated function


From: B. T. Raven
Subject: Re: how to get around deprecated function
Date: Thu, 30 Apr 2015 13:01:34 -0500
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120907 Thunderbird/15.0.1

Die Tue Apr 28 2015 18:29:45 GMT-0500 (Central Daylight Time) Emanuel
Berg <address@hidden> scripsit:

> B. T. Raven <address@hidden> writes:
> 
>> I am constantly losing short pieces of text left in
>> *scratch* and I wrote this interactive function
>> [...]
>>
>> It "works" but according to the docs
>> mark-whole-buffer shouldn't be used this way.
>> Is there an understandable (to me) right way of
>> doing this or doing something else that can be
>> invoked as easily?
> 
> In the help for `append-to-file', it says
> 
>     (append-to-file START END FILENAME) ... If START
>     is nil, that means to use the entire
>     buffer contents.
> 
> Also, instead of using `switch-to-buffer', use
> `with-current-buffer'. And, instead of using `setq',
> use `let'. Or - as the data doesn't reappear - you
> might as well put the function invocations in the
> append-to-file invocation itself.
> 
> Use the Emacs byte-compiler to get suggestions such as
> these. You already found out they are in the help, but
> the byte-compiler can be a way of not having to check
> the help for every function used...
> 
> Meta hint: Don't quote things that haven't appeared in
> the thread with the angle brackets. Either just yank
> it or make it look like this if it appeals to you:
> 
>     Meta hint: don't quote things that haven't
>     appeared in the thread with the angle brackets.
>     Either just yank it or make it look like this if
>     it appeals to you.
> 
> Dig deep!
> 

Thanks, Emanuel and Rusi. GT signs are there because I copypasted out of
gnus.help where I posted by mistake. I should have stripped them.

I now have:

Not exactly what you do but for the same reason I have:

(defun save-scratchtemp ();; M-x sch
 (interactive)
(save-excursion
 (with-current-buffer "*scratch*"
      (mark-whole-buffer)
   ;;(setq start (point) end (mark))
     (append-to-file nil nil "c:/mydocu~1/scratchtemp.txt")))
)

which also "works." Also I may not need save-excursion even if my
current buffer is not *scratch*. I used nil nil for start, end maybe
unnecessarily if append-to-file renumbers the argument list.

I think that the add-hook won't work for me:

(add-hook 'lisp-interaction-mode-hook
          (function (lambda () (setq buffer-offer-save t))))

because *scratch* would have to be associated with a file name which
would replace the *scratch* buffer. My kludge is pretty hokey but at
least I understand it and the multiple copies of the same -short
stretches of text won't be a cumulative problem if I just delete the
scratchtemp.txt file now and then.

Ed


reply via email to

[Prev in Thread] Current Thread [Next in Thread]