Ihor Radchenko writes: > Hunter Jozwiak writes: > >>>> + (host (cdr (assq :host params))) >>>> + (port (cdr (assq :port params))) >>> >>> Please declare these new scheme-specific header argument in >>> `org-babel-header-args:scheme'. >>> See `org-babel-header-args:C' for an example. >>> This is necessary for header argument completion to work. > >> Okay. Is there a way to tighten these inputs further? I have them set to >> :any for the moment, but I wonder if there is a way to leverage the >> values for `geiser-repl-default-host` and `geiser-repl-default-port`. > > Org-mode currently does not provide completion for header argument > values. (see `pcomplete/org-mode/block-option/src') > > If Org were to support such completion, you could theoretically allow > special values for :host/:port like default: > > #+begin_src scheme :host default :port default > ... > #+end_src > > to use `geiser-repl-default-host'/`...-port'. > > Then, you could add these values as (default :any). > >>>> - (and (not (string= session "none")) session)))) ; session >>>> + (and (not (string= session "none")) session) host port))) ; session >>> >>> This does not look right. Your change will disable session support >>> completely when host and port are not provided. >> Is there a way to test this and pinpoint the problem? > > Hmm. I just realized that I am reading that line wrongly - host and port > are additional arguments passed to > `org-babel-scheme-execute-with-geiser', not a part of > (and (not ...) host port) > > So, my only comment remaining is to put each argument in its own line, > like it is done for all the previous arguments: > > (org-babel-scheme-execute-with-geiser > full-body ; code > (string= result-type "output") ; output? > impl ; implementation > (and (not (string= session "none")) session) ; session > host ; repl host name > port) ; repl port > > That will make the code more readable. Here is an updated patch.