# How to change repl keybindings

**URL:** <https://discourse.julialang.org/t/how-to-change-repl-keybindings/135167>\
**Category:** General Usage\
**Tags:** repl\
**Created:** [January 20, 2026, 7:06pm UTC](https://discourse.julialang.org/t/how-to-change-repl-keybindings/135167 "2026-01-20T19:06:01Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![jar1](https://avatars.discourse-cdn.com/v4/letter/j/c0e974/32.png) [@jar1](https://discourse.julialang.org/u/jar1)\
**Post date:** [January 20, 2026, 7:06pm UTC](https://discourse.julialang.org/t/how-to-change-repl-keybindings/135167/1 "2026-01-20T19:06:01Z")

</div>

[REPL: allow editing current input in editor (via Meta-e) by rfourquet · Pull Request #33759 · JuliaLang/julia · GitHub](https://github.com/JuliaLang/julia/pull/33759) uses Meta+e for edit command line in editor.

I want to use Ctrl+xCtrl+e for that because that’s what shells use. So I tried

```julia-auto
atreplinit((repl)-> begin
    @eval import REPL
    @eval import REPL.LineEdit
    repl.interface = REPL.setup_interface(repl; extra_repl_keymap = Dict(
        "^x^e" => (s, o...) -> LineEdit.edit_input(s),
    ))

```

but then on startup Julia says

```julia-auto
WARNING: Detected access to binding `Main.REPL` in a world prior to its definition world.
  Julia 1.12 has introduced more strict world age semantics for global bindings.
  !!! This code may malfunction under Revise.
  !!! This code will error in future versions of Julia.
Hint: Add an appropriate `invokelatest` around the access to this binding.
To make this warning an error, and hence obtain a stack trace, use `julia --depwarn=error`.

```

What’s the right way to do this?

---

<div class="post-metadata">

**Author:** ![matthias314](https://avatars.discourse-cdn.com/v4/letter/m/a88e4f/32.png) [@matthias314](https://discourse.julialang.org/u/matthias314)\
**Post date:** [January 20, 2026, 7:22pm UTC](https://discourse.julialang.org/t/how-to-change-repl-keybindings/135167/2 "2026-01-20T19:22:38Z")

</div>

I’m doing it as described [in the documentation](https://docs.julialang.org/en/v1/stdlib/REPL/#Customizing-keybindings), and it works well.
