From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Eric Schulte" Subject: Re: Babel sql code block issue and patch proposal Date: Thu, 03 Mar 2011 12:51:15 -0700 Message-ID: <8762s0kmoc.fsf@gmail.com> References: <87sjv4pcwf.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from [140.186.70.92] (port=49735 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PvEYa-0008HL-CS for emacs-orgmode@gnu.org; Thu, 03 Mar 2011 14:51:29 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PvEYX-0006Rg-Nv for emacs-orgmode@gnu.org; Thu, 03 Mar 2011 14:51:28 -0500 Received: from mail-pv0-f169.google.com ([74.125.83.169]:46418) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PvEYX-0006RI-FW for emacs-orgmode@gnu.org; Thu, 03 Mar 2011 14:51:25 -0500 Received: by pvg4 with SMTP id 4so319788pvg.0 for ; Thu, 03 Mar 2011 11:51:23 -0800 (PST) In-Reply-To: ("Alain =?utf-8?Q?Cl=C3=A9ment=22's?= message of "Thu, 3 Mar 2011 20:34:15 +0100") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Alain =?utf-8?Q?Cl=C3=A9ment?= Cc: emacs-orgmode@gnu.org Hi Alain, Would the following work (escaping "-"s with a backslash)? #+begin_src diff diff --git a/lisp/ob-sql.el b/lisp/ob-sql.el index 364070e..838f013 100644 --- a/lisp/ob-sql.el +++ b/lisp/ob-sql.el @@ -73,7 +73,9 @@ This function is called by `org-babel-execute-src-block= '." (org-babel-process-file-name out-fi= le))) ('mysql (format "mysql %s -e \"source %s\" > %s" (or cmdline "") - (org-babel-process-file-name in-file) + (replace-regexp-in-string + "\\-" "\\\\-" + (org-babel-process-file-name in-file)) (org-babel-process-file-name out-file= ))) ('postgresql (format "psql -A -P footer=3Doff -F \"\t\" -f = %s -o %s %s" #+end_src Best -- Eric Alain Cl=C3=A9ment writes: > Hi Eric, > > Thanks for your prompt answer! Actually, it doesn't work since mysql inte= rprets backslashes as options, even between quotes. The value of my > `org-babel-temporary-directory' is "/var/folders/9E/9EMu+g0oHBSrq-h9sX6i1= U+++TM/-Tmp-/babel-86766893", but "+"'s are escaped with a backslash at som= e stage. > > Thanks, > - Alain > > 2011/3/3 Eric Schulte > > Hi Alain, >=20=20=20=20 > Does the following alternative fix work for you? > > #+begin_src diff
> Changes in HEAD
> Modified lisp/ob-sql.el
> diff --git a/lisp/ob-sql.el b/lisp/ob-sql.el
> index 364070e..604d444 100644
> --- a/lisp/ob-sql.el
> +++ b/lisp/ob-sql.el
> @@ -71,7 +71,7 @@ This function is called by `org-babel-execute-src-bloc= k'."
> (or cmdline "")
> (org-babel-process-file-name in-file)
> (org-babel-process-file-name out-file)))
> - ('mysql (format "mysql %s -e \"source %s\"= > %s"
> + ('mysql (format "mysql %s -e 'source %s' >= ; %s"
> (or cmdline "")
> (org-babel-process-file-name in-file)
> (org-babel-process-file-name out-file)))
> #+end_src
> Also, just out of curiosity would you mind sharing an example result of > `org-babel-temporary-directory' which contains backslashes? > > Thanks -- Eric > > Alain Cl?ment writes: > >> Hi everyone, >> >> The =3Dorg-babel-temp-file=3D string seems to be escaped with backslashe= s on >> some platforms (like MacOSX), which is not very appreciated by the =3Dmy= sql >> -e=3D command. I suggest the following patch for =3Dob-sql.el=3D (Org-mo= de Version >> 7.4 (release_7.4.590.g85d4d)): >> >> 74c74 >> < ? ? ? ? ? ? ? ? ? ? ('mysql (format "mysql %s < %s > %s" >> --- >>> ? ? ? ? ? ? ? ? ? ? ('mysql (format "mysql %s -e \"source %s\" > %s" >> >> Best regards, >> -- Alain >> >> -- >> >> >> >> Alain Cl?ment >> Dr ?s sc. math?matiques >> >> Universit? de Lausanne >> Quartier UNIL-Centre >> B?timent Unicentre >> Bureau 339 >> CH-1015 Lausanne >> >> T. +41 21 692 20 36 (direct) >> T. +41 21 692 20 60 (secr?tariat) >> >> alain.clement@unil.ch > > -- > > [lo_unil05_bleu]=20=20=20=20=20=20=20=20=20=20=20=20=20 > > Alain Cl?ment > Dr ?s sc. math?matiques > > Universit? de Lausanne > Quartier UNIL-Centre > B?timent Unicentre > Bureau 339 > CH-1015 Lausanne > > T. +41 21 692 20 36 (direct) > T. +41 21 692 20 60 (secr?tariat) > > alain.clement@unil.ch