It's way overdue to make another release. There are plenty of bug fixes and a lot of feature improvements. And I'm very glad to see that there are a lot of PR contributions from the community - thanks!
I think the main highlights of this release are:
- The new bib parser in Lua for neovim users. It makes bibtex completion faster - noticably so for those who have large bib files.
:VimtexCompile
now respects options (see #2836 and #2866).- There are a few improvements to the core syntax that should improve performance.
Important: After this release I will bump the version requirements for both Vim and Neovim! That is, starting now, VimTeX will require Vim version 9.1.0 8.2.3995 (see #2934) or Neovim version 0.9.5. This means that anyone who can not or will not update must stay on this version (the v2.15
tag).
Features
- Compile
- Allow options for
:VimtexCompile
(#2836) - Respect
-jobname
option for outfiles in compilers (#2866) - Pass
file_info
argument toout_dir
function (#2888)- This is a breaking change for anyone who uses a vimscript function for the
out_dir
key ofg:vimtex_compiler_latexmk
(or similar), because the function is now passed a single argument.
- This is a breaking change for anyone who uses a vimscript function for the
- Allow options for
- Syntax
- Add option
g:vimtex_syntax_match_unicode
(#2732)- This allows to disable the feature, as it can be slow on large documents.
- Match
<
,>
,|
,/
as operators and don't match.
(#2776) - Add keywords "ISSUE" and "NOTE" to
texCommentTodo
(#2839) - Simplify and improve some regexes to improve performance (#2877)
- Add conceal support for more superscripts (#2886)
- Add match for
\item
labels (#2885) - Add
vimtex#syntax#add_to_mathzone_ignore
(#2929) - Improve
tcolorbox
support (#2789) - Add support for
quantikz
package (#2843, #2842) - Initial support for
biblatex-chicago
package (#2875) - Improve
sagetex
package support (#2926, #2929)
- Add option
- Viewers
viewer.xdo_focus_vim
will move mouse pointer to activated window (#2759)- Add option
g:vimtex_view_skim_no_select
to prevent Skim from selecting the text (#2766) - Use
timer_start
instead of:sleep
before search forxwin_id
(#2802, #2805) - Improve
g:vimtex_view_use_temp_files
(#2819)- The old implementation was not working properly and the docs were inconsistent with the implementation. The docs should now be properly consistent and the implementation should be better and more robust.
- UI, commands and mappings
- Add
g:vimtex_ui_method
for choosing ui backends - Add imap
`vp
for\varpi
(#2797)
- Add
- Other
- Added new (much faster) bib parser in lua (#2786, #2816)
- Also improved the vimscript implementation of the bib parser
- Add warning if latexmain specifier is ignored (#2831)
- Support subsubsubsubsection in toc (#2850)
- Better fail method for cache encoding errors (#2849)
- Completion support for
volcite
s with volume (#2878) - Fold and toc support for
comment
package (#2882)
- Added new (much faster) bib parser in lua (#2786, #2816)
Bug Fixes
- Compile
- Stop compilers when reloading vimtex (#2760)
- latexmk: Don't do timeout in pvc mode after inactivity (#2804)
- By default the
-pvc
mode will stop working after 30 mins of inactivity. To prevent this, we disable inactivity timeout in the pvc mode with-pvctimeout-
. This requires latexmk v4.55 (Jan 2018) or higher.
- By default the
- Fix issue when
VimtexEventCompile*
changes the buffer (#2844) - Call quickfix function before issuing autocmd (#2847)
- Fix regression error in arara compiler (#2862, #2861)
- Don't create the compiler state if it is disabled (#2905)
- Syntax
- Folding
- Properly handle
\item
s in unexpected item environments (#2771)
- Properly handle
- Table of contents (toc)
- Other
- Ensure
globpath_upwards
only returns files (#2763) - Add health check for
zathura_simple
viewer (#2796) - Fix treesitter detection (#2798)
- Fix problem when
g:vimtex_indent_lists
was empty (#2846) - Fix lacking symlinked path resolve (#2865)
vimtex#bib#files
: Ensure data exists before using it- Fix problem with how windows directories are handled in
vimtex#paths#relative
- Ensure
Documentation
- Several minor improvements
- Add docs for
cmp-vimtex
extension tonvim-cmp
(#2818) - Improve Zathura docs for MacOS users (#2824, #2889)
- Add more references to localrc plugins (#2832)
- Clarify some option values that are taken as regular expressions (#2846)
- Add some more info on qpdfview (#2870)
- Add lazy.nvim installer example
- Improve documentation of user events (#2902)
- Document API:
vimtex#syntax#in
(#2929)
Acknowledgements
Again there has been several contributions from the community, and as before I would like to give a special thanks to everyone who contributes with PRs:
- @BertrandSim in #2872 and #2879
- @MithicSpirit in #2797 and #2886
- @ArvinSKushwaha in #2843
- @ax3ghazy in #2759
- @gruelingpine185 in #2772
- @jiangyinzuo in #2839
- @julio-b in #2792
- @mms-neuro in #2862
- @ofseed in #2927
- @shivangp76 in #2926
- @soonsouth in #2899
- @tomtomjhj in #2798
- @tsung-ju in #2766
- @wookayin in #2804
- @xinhangzhou in #2897