Papillon6814
Hello. I’m a beginner of vim and I’d like to write elixir with it. I installed vim-elixir for that. But when I open the .heex file, it is not highlighted.
My .vimrc
set nocompatible
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'airblade/vim-gitgutter'
Plugin 'junegunn/fzf.vim'
Plugin 'junegunn/fzf'
Plugin 'mileszs/ack.vim'
Plugin 'racer-rust/vim-racer'
Plugin 'rust-lang/rust.vim'
Plugin 'scrooloose/nerdtree'
Plugin 'sheerun/vim-polyglot'
" Enable to resite easily
Plugin 'simeji/winresizer'
Plugin 'tpope/vim-commentary'
" Enable to run git commands as vim commands
Plugin 'tpope/vim-fugitive'
Plugin 'unblevable/quick-scope'
" Elixir
Plugin 'elixir-editors/vim-elixir'
Plugin 'c-brenn/phoenix.vim'
Plugin 'slashmili/alchemist.vim'
Plugin 'mhinz/vim-mix-format'
Plugin 'mattreduce/vim-mix'
" Colors
Plugin 'ayu-theme/ayu-vim'
Plugin 'dracula/vim'
Plugin 'sickill/vim-monokai'
Plugin 'jacoborus/tender.vim'
call vundle#end()
let mapleader = "\<Space>"
filetype plugin indent on
set termguicolors
colorscheme tender
set number
set clipboard+=unnamed
" Do not break line
set nowrap
nnoremap <silent><C-r> :NERDTreeToggle<CR>
nnoremap <Leader>p :Files<CR>
nnoremap <Leader>u :redo<CR>
set shell=/bin/bash
set hidden
let g:racer_cmd = '~/.cargo/bin/racer'
let g:racer_experimental_completer = 1
set cursorline
syntax on
" Settings about tender colorscheme
" If you have vim >=8.0 or Neovim >= 0.1.5
if (has("termguicolors"))
set termguicolors
endif
" For Neovim 0.1.3 and 0.1.4
let $NVIM_TUI_ENABLE_TRUE_COLOR=1
" Elixir
au BufRead,BufNewFile *.ex,*.exs set filetype=elixir
au BufRead,BufNewFile *.eex,*.heex,*.leex,*.sface,*.lexs set filetype=eelixir
au BufRead,BufNewFile mix.lock set filetype=elixir
" Settings about tender colorscheme ends
" If you have vim >=8.0 or Neovim >= 0.1.5
if (has("termguicolors"))
set termguicolors
endif
" For Neovim 0.1.3 and 0.1.4
let $NVIM_TUI_ENABLE_TRUE_COLOR=1
if has("autocmd")
filetype plugin on
filetype indent on
autocmd FileType yml setlocal sw=2 sts=2 ts=2 et
autocmd FileType yaml setlocal sw=2 sts=2 ts=2 et
endif
func! STL()
let barWidth = &columns / 6
let barWidth = barWidth < 3 ? 3 : barWidth
let n = line('$') > 1 ? line('$') - 1 : line('$')
let buf_top = (line('w0') - 1) * (barWidth - 1) / n
let buf_bottom = (line('w$') ) * (barWidth - 1) / n
let cursor = (line('.') - 1) * (barWidth - 1) / n
let n1 = buf_top
let n2 = cursor - n1
let n2 = n1 + n2 >= barWidth ? barWidth - n1 - 1 : n2
let n3 = buf_bottom - cursor
let n3 = n1 + n2 + n3 >= barWidth ? barWidth - n1 - n2 - 1 : n3
let n4 = barWidth - n1 - n2 - n3 - 1
let bar = '['.repeat(' ', n1).repeat('-', n2).'@'.repeat('-', n3).repeat(' ', n4).']'
let stl_left = ' '
let stl_right = ' %<%F %m%r%h%w%=[%{&fenc},%{&ff},%Y] (%03l/%03L,%03v) '
return stl_left.bar.stl_right
endfunc
set laststatus=2
set statusline=%!STL()
And I have checked this issue:
syntax highlighting broken for `.*eex` files · Issue #562 · elixir-editors/vim-elixir · GitHub
Please help me if you are a vimmer and how to do it. Thank you.
![]()
Trending in Questions
I having some trouble figuring out if I have set myself too strict of standards for my production server. Currently I can handle 75% of r...
New
Hello,
I’m trying to build a basic Phoenix web-app, and I’d like to use Tailwind.
However, when I launch mix phx.server, I get an error...
New
I really like the adapter patterns that ecto, nebulex, waffle, etc. use and would love find something similar for a key management servic...
New
Hello folks!
So at work, we are seeing some situations where we have to define some “fixed” strings that are used across the codebase in...
New
I’m working on a small exercise involving update_in/3, and I came up with this solution:
data = %{
name: "Periodic Table",
category:...
New
How Can I Optimise Compile Time Dependencies
I have been building an elixir application for about 2 years now. Many modules and files ha...
New
Is there any way to avoid the Hologram compiler running when using iex? It seems like the front-end code could potentially be disregarded...
New
Other Trending Topics
Edit: 2026 May 15 - This post is archived.
Mob is alive!!
Main docs: mob v0.7.11 — Documentation
A bit of explanation for the slightly c...
New
Hobbes is a low-level distributed database for the Elixir programming language.
Hobbes provides a simple, safe, and scalable storage lay...
New
A little off-topic, but I feel like people here have a good head on their shoulders.
I used to be quite good at making software. Was luc...
New
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #ai
- #podcasts-by-brainlid
- #ecto-query
- #blog-post
- #elixirconf-us
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #elixirconf-eu
- #api
- #forms
- #security
- #metaprogramming











Showing Posts 1 to 8- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
JohnnyCurran
Add the following to your
~/.vimrc:Credit to syntax highlighting broken for `.*eex` files · Issue #562 · elixir-editors/vim-elixir · GitHub
And make sure when you run
:set filetype?in a.heexfile, it shows asfiletype=eelixirYou may need to resource your
.vimrc(run:source ~/.vimrc) or quit and re-open vimPapillon6814
Hello, thank you for the reply!
Yes I had added the script into
~/.vimrc,I think my vim detects
.heexfile, but it does not highlight html in the file like this:It highlights
<%= %>, but does not highlight tags. Do you know something about that?Thank you.
sbaildon
You could optionally replace
vimwithneovimand install thenvim-treesitterplugin. You’ll get better highlighting with the treesitter grammarsJohnnyCurran
What does
:set filetype?return? For me, it showseelixirI have both HEEx and HTML tags highlighted
Papillon6814
Okay I try it, thanks!
Papillon6814
It shows like yours, but does not highlight the html parts…
ca1989
I would try vim-polyglot, it should improve a little bit (still not perfect though).
Treesitter, on the other hand, works great. I didn’t switch to neovim yet, but I am thinking about it, because I deal with heex daily…
zhabinka
Now Treesitter support heex format.
Сomplete list of languages can be found here –
https://github.com/nvim-treesitter/nvim-treesitter#supported-languages