# Tab-completion during readline() function call

**URL:** <https://discourse.julialang.org/t/tab-completion-during-readline-function-call/85420>\
**Category:** New to Julia\
**Tags:** question, repl, ui\
**Created:** [August 6, 2022, 11:02pm UTC](https://discourse.julialang.org/t/tab-completion-during-readline-function-call/85420 "2022-08-06T23:02:52Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![jlawrie](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jlawrie/32/26283_2.png) [@jlawrie](https://discourse.julialang.org/u/jlawrie)\
**Post date:** [August 6, 2022, 11:02pm UTC](https://discourse.julialang.org/t/tab-completion-during-readline-function-call/85420/1 "2022-08-06T23:02:52Z")

</div>

Hello,

I observe that tab-completion is not available during calls to [`readline()`](https://docs.julialang.org/en/v1/base/io-network/#Base.readline), or at least it appears to behave this way for me.

Sometimes, the user being able to use tab completion to write special characters when requested to input to some code using the stdin, for example a capital delta Δ (written by typing \Delta[TAB]), is nice to have.

I also tried pasting a special character such as Δ after running ‘readline()’, which the function accepted and returned as it does with any other character.

I noted when reading the documenation for [tab completion](https://docs.julialang.org/en/v1/stdlib/REPL/#Tab-completion):

> In both the Julian and help modes of the REPL

I wanted to ask the community:

1. Does this mean that readline() goes to a mode of the REPL which is neither the Julian nor help mode?
2. If so, which of the [modes](https://docs.julialang.org/en/v1/stdlib/REPL/#The-different-prompt-modes) is it?

Thanks for your thoughts!

* * *

I found a related [post](https://discourse.julialang.org/t/why-is-there-a-difference-in-tab-completion-for-names-made-available-through-using-vs-import-in-the-repl/62888) on this forum, which noticed that tab-complete’s behaviour seemed to depend on the choice between _using_ and _import_, though I don’t think this is exactly the same.

* * *

Minimum working example in the Julian REPL:

```julia
readline()

```

Then try and type a character using tab-complete such as Δ (\Delta[TAB])

* * *

Julia Version information

```julia
julia> versioninfo()
Julia Version 1.7.2
Commit bf53498635 (2022-02-06 15:21 UTC)
Platform Info:
  OS: macOS (x86_64-apple-darwin19.5.0)
  CPU: Intel(R) Core(TM) i5-5250U CPU @ 1.60GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-12.0.1 (ORCJIT, broadwell)

```

* * *

---

<div class="post-metadata">

**Author:** ![jlawrie](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jlawrie/32/26283_2.png) [@jlawrie](https://discourse.julialang.org/u/jlawrie)\
**Post date:** [August 19, 2022, 9:58am UTC](https://discourse.julialang.org/t/tab-completion-during-readline-function-call/85420/2 "2022-08-19T09:58:51Z")

</div>

Hello;

Just to be thorough, I just checked this behaviour in the recently released version of Julia (1.8.0) and the behaviour remains unchanged.

Julia Version information:

```julia
julia> versioninfo()
Julia Version 1.8.0
Commit 5544a0fab76 (2022-08-17 13:38 UTC)
Platform Info:
  OS: macOS (x86_64-apple-darwin21.4.0)
  CPU: 4 × Intel(R) Core(TM) i5-5250U CPU @ 1.60GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-13.0.1 (ORCJIT, broadwell)
  Threads: 1 on 2 virtual cores
Environment:
  JULIA_EDITOR = code
  JULIA_NUM_THREADS = 

```

Thanks!
