Matt <m...@excalamus.com> writes: > ---- On Thu, 26 Jan 2023 04:51:19 -0500 Ihor Radchenko wrote --- > > > This will add a newline to "cmdproxy.exe" command -> "cmdproxy.exe\n". > > You should instead look into `org-babel--write-temp-buffer-input-file'. > > I made the change in `org-babel--shell-command-on-region' based on your > recommendation in https://list.orgmode.org/orgmode/87bkmttv2h.fsf@localhost/ > > I'd be happy to put it in `org-babel--write-temp-buffer-input-file'. > Unfortunately, I don't understand why you suggest the change be made there. > Wouldn't it make more sense to insert the newline into the temp buffer that > `org-babel--write-temp-buffer-input-file' writes from?
I just thought that it is the most logical place to add trailing newline. `org-babel--write-temp-buffer-input-file' deletes the buffer contents anyway, so modification will not cause any undesired side effects. > ;; 99.999% sure this isn't what you meant > (defun org-babel--write-temp-buffer-input-file (input-file) > "Write the contents of the current temp buffer into INPUT-FILE." > (let ((start (point-min)) > (end (point-max))) > (goto-char start) > (push-mark (point) 'nomsg) > (write-region start end input-file) > + (with-temp-buffer > + (insert "\n") > + (write-region (point-min) (point-max) input-file)) > (delete-region start end) > (exchange-point-and-mark))) I meant inserting newline in current buffer at the beginning. > AFAICT, `org-babel--write-temp-buffer-input-file' is only called by > `org-babel--shell-command-on-region' and that's only ever called by > `org-babel-eval'. That's where the query (the block source) is inserted into > a temp buffer. Maybe something like this? > > modified lisp/ob-eval.el > @@ -64,7 +64,7 @@ Writes QUERY into a temp-buffer that is processed with > (let ((error-buffer (get-buffer-create " *Org-Babel Error*")) exit-code) > (with-current-buffer error-buffer (erase-buffer)) > (with-temp-buffer > - (insert query "\n") > + (insert (concat query "\n")) The original is just (insert query). (insert query "\n") is also ok. I don't have strong preference here. -- Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at <https://orgmode.org/>. Support Org development at <https://liberapay.com/org-mode>, or support my work at <https://liberapay.com/yantar92>