# Weird (minor) bug in VSCode Unicode font

**URL:** <https://discourse.julialang.org/t/weird-minor-bug-in-vscode-unicode-font/131002>\
**Category:** VS Code\
**Created:** [July 24, 2025, 11:46am UTC](https://discourse.julialang.org/t/weird-minor-bug-in-vscode-unicode-font/131002 "2025-07-24T11:46:08Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![BLI](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bli/32/37206_2.png) [@BLI](https://discourse.julialang.org/u/BLI)\
**Post date:** [July 24, 2025, 11:46am UTC](https://discourse.julialang.org/t/weird-minor-bug-in-vscode-unicode-font/131002/1 "2025-07-24T11:46:08Z")

</div>

[Windows 11, updated today]

I want to use symbol \phi in my code (`\phi` in LaTeX). However, if I type `\phi` and hit Tab in VSCode (both Jupyter Notebook and \*.jl file), the result on the screen is symbol \varphi (`\varphi`).

Similarly, if I type `\varphi`, I get symbol \phi (`\phi` in LaTeX).

* * *

Next, if I copy the symbol `\phi`, which incorrectly appears as \varphi, into the “find” box of VSCode, the symbol suddenly changes and appears (correctly) as \phi.

* * *

There is clearly a bug here. I don’t know whether the bug lies in VSCode itself (i.e., is a Microsoft responsibility), or whether it lies in the Julia modification.

---

<div class="post-metadata">

**Author:** ![stevengj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stevengj/32/71_2.png) [@stevengj](https://discourse.julialang.org/u/stevengj)\
**Post date:** [July 24, 2025, 1:48pm UTC](https://discourse.julialang.org/t/weird-minor-bug-in-vscode-unicode-font/131002/2 "2025-07-24T13:48:05Z")

</div>

What plugin are you using to do unicode tab completion?

You could be seeing [\varphi and \phi are switched · Issue #36 · ojsheikh/unicode-latex · GitHub](https://github.com/ojsheikh/unicode-latex/issues/36), which is reportedly a font issue.

---

<div class="post-metadata">

**Author:** ![Paul\_Soderlind](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/paul_soderlind/32/1753_2.png) [@Paul\_Soderlind](https://discourse.julialang.org/u/Paul_Soderlind)\
**Post date:** [July 24, 2025, 1:52pm UTC](https://discourse.julialang.org/t/weird-minor-bug-in-vscode-unicode-font/131002/3 "2025-07-24T13:52:45Z")

</div>

same in IJulia (notebook)

---

<div class="post-metadata">

**Author:** ![stevengj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stevengj/32/71_2.png) [@stevengj](https://discourse.julialang.org/u/stevengj)\
**Post date:** [July 24, 2025, 1:54pm UTC](https://discourse.julialang.org/t/weird-minor-bug-in-vscode-unicode-font/131002/4 "2025-07-24T13:54:52Z")

</div>

Look at the code points. It should be:

```julia
julia> 'ϕ' # \phi — "straight" form
'ϕ': Unicode U+03D5 (category Ll: Letter, lowercase)

julia> 'φ' # \varphi — "loopy" form
'φ': Unicode U+03C6 (category Ll: Letter, lowercase)

```

If you get these codepoints with the wrong symbols, then it is probably a font issue. Try switching to e.g. [JuliaMono](https://github.com/cormullion/juliamono).

Apparently there is some confusion here because the standard glyphs for these two Unicode codepoints were [swapped in Unicode 3.0](https://www.unicode.org/reports/tr28/tr28-3.html) (in 1999) and some online sources still display them incorrectly, but the standard now clearly states that U+03C6 should now be the “loopy” form if the font is intended to support technical usage:

> Fonts used primarily for Greek text may use either glyph form for U+03C6, but fonts that also intend to support technical use of the Greek letters should use the loopy form to ensure appropriate contrast with the straight form used for U+03D5.

---

<div class="post-metadata">

**Author:** ![Paul\_Soderlind](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/paul_soderlind/32/1753_2.png) [@Paul\_Soderlind](https://discourse.julialang.org/u/Paul_Soderlind)\
**Post date:** [July 24, 2025, 2:07pm UTC](https://discourse.julialang.org/t/weird-minor-bug-in-vscode-unicode-font/131002/5 "2025-07-24T14:07:11Z")

</div>

Confirmed: Consolas has it wrong. U+03D5 looks like what I would call \varphi.

---

<div class="post-metadata">

**Author:** ![stevengj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stevengj/32/71_2.png) [@stevengj](https://discourse.julialang.org/u/stevengj)\
**Post date:** [July 24, 2025, 2:08pm UTC](https://discourse.julialang.org/t/weird-minor-bug-in-vscode-unicode-font/131002/6 "2025-07-24T14:08:17Z")

</div>

> [@Paul\_Soderlind](#):
>
> Consolas has it wrong. U+03D5 looks like what I would call \varphi.

(It’s possible that Consolas doesn’t even have these codepoints, and what you are seeing is a fallback to another font? I’m not sure if there is an easy way to check this? _Update:_ According to [this web page](https://www.fileformat.info/info/unicode/font/consolas/blockview.htm?block=greek_and_coptic), Consolas indeed has the characters and they are swapped.)

---

<div class="post-metadata">

**Author:** ![Paul\_Soderlind](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/paul_soderlind/32/1753_2.png) [@Paul\_Soderlind](https://discourse.julialang.org/u/Paul_Soderlind)\
**Post date:** [July 24, 2025, 2:18pm UTC](https://discourse.julialang.org/t/weird-minor-bug-in-vscode-unicode-font/131002/7 "2025-07-24T14:18:50Z")

</div>

Don’t know. The “Character Map” utility in Win11 shows the same mix-up for Consolas.

---

<div class="post-metadata">

**Author:** ![cormullion](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cormullion/32/49131_2.png) [@cormullion](https://discourse.julialang.org/u/cormullion)\
**Post date:** [July 24, 2025, 3:18pm UTC](https://discourse.julialang.org/t/weird-minor-bug-in-vscode-unicode-font/131002/8 "2025-07-24T15:18:47Z")

</div>

for fun:

> **[GitHub - cormullion/life-of-phi: phi on you](https://github.com/cormullion/life-of-phi)**
>
> phi on you

---

<div class="post-metadata">

**Author:** ![BLI](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bli/32/37206_2.png) [@BLI](https://discourse.julialang.org/u/BLI)\
**Post date:** [July 25, 2025, 7:20am UTC](https://discourse.julialang.org/t/weird-minor-bug-in-vscode-unicode-font/131002/9 "2025-07-25T07:20:46Z")

</div>

More bugs??? [Your solution with JuliaMono works… but…]

VSCode suggested I should sync the settings, so I logged in to GitHub. I was then told there were some conflicts. When I merged the conflicting settings, the following happened:

- Color Theme changed to black (I dislike black background)
- The font changed back from JuliaMono to Consolas
- Possibly other things, but I didn’t notice other changes

Why does this happen, and how can I avoid it? (I try to keep 3 PCs synced…)

---

<div class="post-metadata">

**Author:** ![stevengj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stevengj/32/71_2.png) [@stevengj](https://discourse.julialang.org/u/stevengj)\
**Post date:** [July 25, 2025, 1:08pm UTC](https://discourse.julialang.org/t/weird-minor-bug-in-vscode-unicode-font/131002/10 "2025-07-25T13:08:53Z")

</div>

> [@BLI](#):
>
> When I merged the conflicting settings, the following happened: [..] Why does this happen, and how can I avoid it?

Sounds like you just messed up the merge; you probably should have selected the “merge manually” option. Probably if you change the settings on one machine and merge again it should work now.

In any case, this is straying pretty far off-topic for a Julia forum; if you continue to have problems you should go to a vscode forum.
