tpapp / julia-repl

Run an inferior Julia REPL in a terminal inside Emacs
Other
170 stars 35 forks source link

@eval the code sent to the REPL inside of the module #95

Open cstjean opened 4 years ago

cstjean commented 4 years ago

When I C-c C-d, it does

@doc MyFunction

which fails because MyFunction isn't exported in the module I'm working with.

@eval MyModule @doc MyFunction

would work a lot more often, for all (?) of the commands that send stuff to the REPL. I'm not sure if there's a clean way to get a file's module, but "look at the path for a src, then use the parent directory name" would at least work for packages when no submodules are involved, and it's something I would feel comfortable making a PR for.

What do you think?

tpapp commented 3 years ago

This would make sense.

We could factor out the logic from julia-repl-activate-parent to locate a project, and have it used by another function to find a relative src and grep MyModule.jl for module MyModule, with various fallbacks. It would catch the common use case at least.

NightMachinery commented 2 years ago

@tpapp we can even make this not automatic at all; Just have a variable that can be set to explicitly control the module the code will be evaluated in. The special value 'auto can then delegate detecting the module back to this extension.