Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Restore the default behavior of the <CR> key. #1221

Merged
merged 4 commits into from
Feb 11, 2021
Merged

Restore the default behavior of the <CR> key. #1221

merged 4 commits into from
Feb 11, 2021

Conversation

PhilRunninger
Copy link
Member

@PhilRunninger PhilRunninger commented Feb 11, 2021

Description of Changes

Closes #1220

#1217 was created to address the specific case of the user-specified value 'keepopen':0 in g:NERDTreeCustomOpenArgs. When working on that, I'd forgotten to test the default case. This function restores the correct default behavior of the <CR> key, which is to act the same way as o.


New Version Info

Author's Instructions

  • Derive a new MAJOR.MINOR.PATCH version number. Increment the:
    • MAJOR version when you make incompatible API changes
    • MINOR version when you add functionality in a backwards-compatible manner
    • PATCH version when you make backwards-compatible bug fixes
  • Update CHANGELOG.md, following the established pattern.

Collaborator's Instructions

  • Review CHANGELOG.md, suggesting a different version number if necessary.
  • After merging, tag the commit using these (Mac-compatible) bash commands:
    git checkout master
    git pull
    sed -n "$(grep -n -m2 '####' CHANGELOG.md | cut -f1 -d: | sed 'N;s/\n/,/')p" CHANGELOG.md | sed '$d'
    git tag -a $(read -p "Tag Name: " tag;echo $tag) -m"$(git show --quiet --pretty=%s)";git push origin --tags

There was a bug in the validation logic that caused a valid integer
value of 'keepopen' to always be overwritten with the defaultOpenArgs'
value. It was always comparing its type to the type of a string.

I fixed this by removing all the type validation, and wrapping the code
with a try-catch block. If NERDTreeCustomOpenArgs is not a dictionary,
an error message will print and the defaults will be used instead.
@PhilRunninger PhilRunninger merged commit 3a9d533 into master Feb 11, 2021
@PhilRunninger PhilRunninger deleted the i1220 branch February 11, 2021 03:20
salvadorcunat added a commit to salvadorcunat/scripts-config-dotfiles that referenced this pull request Sep 19, 2021
Syncing log
------------
X11 forwarding request failed on channel 0
Desde git+ssh://github.com/salvadorcunat/scripts-config-dotfiles
 = [actualizado]     master     -> origin/master
Ya está actualizado.
12c12
< I3MSG="$(which i3-msg)"
---
> I3MSG="$(command -v i3-msg)"
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.i3/init_ws
'/home/boret/.i3/init_ws' -> '/home/boret/src/scripts-config-dotfiles/.i3/init_ws'
--------------------------------
8c8
< _TERMITE="$(which termite)"
---
> _TERMITE="$(command -v termite)"
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.i3/termite_wrap
'/home/boret/.i3/termite_wrap' -> '/home/boret/src/scripts-config-dotfiles/.i3/termite_wrap'
--------------------------------
10,11c10,11
< I3MSG=$(which i3-msg)
< NOTIFY=$(which notify-send)
---
> I3MSG=$(command -v i3-msg)
> NOTIFY=$(command -v notify-send)
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.i3/Cmus
'/home/boret/.i3/Cmus' -> '/home/boret/src/scripts-config-dotfiles/.i3/Cmus'
--------------------------------
25c25
< _sleep="$(which sleep)"
---
> _sleep="$(command -v sleep)"
27c27
< _notify="$(which notify-send)"		# notify command or simple echo if not installed
---
> _notify="$(command -v notify-send)"		# notify command or simple echo if not installed
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.i3/fehbg_new
'/home/boret/.i3/fehbg_new' -> '/home/boret/src/scripts-config-dotfiles/.i3/fehbg_new'
--------------------------------
19c19
< I3MSG=$(which i3-msg)
---
> I3MSG=$(command -v i3-msg)
21,22c21,22
< CONKY=$(which conky)
< NOTIFY=$(which notify-send)
---
> CONKY=$(command -v conky)
> NOTIFY=$(command -v notify-send)
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.i3/vim_ws
'/home/boret/.i3/vim_ws' -> '/home/boret/src/scripts-config-dotfiles/.i3/vim_ws'
--------------------------------
26c26,27
< 			"$_CRT" -e wicd-curses &
---
> 			nmcli device wifi rescan
> 			"$_CRT" -e nmtui &
29c30
< 			"$_TERMINATOR" -b -T "Mpstat" -p floating -e 'gotop' &
---
> 			"$_TERMINATOR" -b --geometry 800x600 -T "Mpstat" -p floating -e 'bpytop' &
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.i3/lemonbar/i3_lemonbar_output_parser.sh
'/home/boret/.i3/lemonbar/i3_lemonbar_output_parser.sh' -> '/home/boret/src/scripts-config-dotfiles/.i3/lemonbar/i3_lemonbar_output_parser.sh'
--------------------------------
157c157
< 			wifi="%{F${bg_col}}${sep_left}%{F${fg_col} B${bg_col} T2}%{A:wifi_ap:}$(pad_str "${icon_wap}" 3)%{T1}$(pad_str "${wifi_ap}" 16)%{A}"
---
> 			wifi="%{F${bg_col}}${sep_left}%{F${fg_col} B${bg_col} T2}%{A:wifi_ap:}$(pad_str "${icon_wap}" 3)%{T1}$(pad_str "${wifi_ap}" 16) %{A}"
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.i3/lemonbar/i3_lemonbar_parser.sh
'/home/boret/.i3/lemonbar/i3_lemonbar_parser.sh' -> '/home/boret/src/scripts-config-dotfiles/.i3/lemonbar/i3_lemonbar_parser.sh'
--------------------------------
5c5
< font="Arimo for Powerline-8"
---
> #font="Arimo for Powerline-8"
6a7
> font="Terminess for Powerline-8"
11c12
< geometry="${res_w}x16"
---
> geometry="${res_w}x15"
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.i3/lemonbar/i3_lemonbar_config
'/home/boret/.i3/lemonbar/i3_lemonbar_config' -> '/home/boret/src/scripts-config-dotfiles/.i3/lemonbar/i3_lemonbar_config'
--------------------------------
99a100
> /home/boret/Descargas/Computer-Science-Pictures.jpg
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.i3/wallpapers.txt
'/home/boret/.i3/wallpapers.txt' -> '/home/boret/src/scripts-config-dotfiles/.i3/wallpapers.txt'
--------------------------------
3,4c3,4
< # Find if an instance of compton is running and launch a new instance if it's not.
< # Use parameter -f or --force to re-launch compton
---
> # Find if an instance of picom is running and launch a new instance if it's not.
> # Use parameter -f or --force to re-launch picom
11,12c11,12
< COMPTON="$(which compton)"
< COMPTONPROC=$(pgrep -l compton |grep -v wrap); COMPTONPROC=${COMPTONPROC%\ *}
---
> COMPTON="$(command -v picom)"
> COMPTONPROC=$(pgrep -l picom |grep -v wrap); COMPTONPROC=${COMPTONPROC%\ *}
27c27
< 					report_msg "${0##*/}" "killing compton, PID $COMPTONPROC" && \
---
> 					report_msg "${0##*/}" "killing picom, PID $COMPTONPROC" && \
42,43c42,43
< 	$COMPTON -b --config "$HOME"/.config/compton/compton.conf && \
< 	report_msg "${0##*/}" "Running compton"
---
> 	$COMPTON -b --config "$HOME"/.config/picom/picom.conf && \
> 	report_msg "${0##*/}" "Running picom"
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.i3/compton_wrap
'/home/boret/.i3/compton_wrap' -> '/home/boret/src/scripts-config-dotfiles/.i3/compton_wrap'
--------------------------------
68c68
< /usr/local/bin/i3 -V >>"$HOME"/.i3/i3log 2>&1
---
> /usr/local/bin/i3 -V >"$HOME"/.i3/i3log 2>&1
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.i3/i3-wrapper.sh
'/home/boret/.i3/i3-wrapper.sh' -> '/home/boret/src/scripts-config-dotfiles/.i3/i3-wrapper.sh'
--------------------------------
/usr/bin/diff: /home/boret/LICENSE: No existe el fichero o el directorio
--------------------------------
/usr/bin/diff: /home/boret/.vim/doc/tags: No existe el fichero o el directorio
--------------------------------
85c85
<     " If you cancel and quit window resize mode by `z` (keycode 122)
---
>     " If you want to cancel and quit window resize mode by `z` (keycode 122)
86a87,91
>
>     " To expand your window size toward upper using upper arrow (instead of k)
>     let g:winresizer_keycode_up = "\<UP>"
>     " To expand your window size toward lower using down arrow (instead of j)
>     let g:winresizer_keycode_down = "\<DOWN>"
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/winresizer/README.md
'/home/boret/.vim/bundle/winresizer/README.md' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/winresizer/README.md'
--------------------------------
Los ficheros binarios /home/boret/src/scripts-config-dotfiles/.vim/bundle/dracula/screenshot.png y /home/boret/.vim/bundle/dracula/screenshot.png son distintos
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/dracula/screenshot.png
'/home/boret/.vim/bundle/dracula/screenshot.png' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/dracula/screenshot.png'
--------------------------------
43a44,63
> " GitGutter / gitsigns: {{{
> if exists('g:loaded_gitgutter')
>   hi! link GitGutterAdd    DiffAdd
>   hi! link GitGutterChange DiffChange
>   hi! link GitGutterDelete DiffDelete
> endif
> if has('nvim-0.5') && luaeval("pcall(require, 'gitsigns')")
>   " https://github.com/lewis6991/gitsigns.nvim requires nvim > 0.5
>   " has('nvim-0.5') checks >= 0.5, so this should be future-proof.
>   hi! link GitSignsAdd      DiffAdd
>   hi! link GitSignsAddLn    DiffAdd
>   hi! link GitSignsAddNr    DiffAdd
>   hi! link GitSignsChange   DiffChange
>   hi! link GitSignsChangeLn DiffChange
>   hi! link GitSignsChangeNr DiffChange
>   hi! link GitSignsDelete   DiffDelete
>   hi! link GitSignsDeleteLn DiffDelete
>   hi! link GitSignsDeleteNr DiffDelete
> endif
> " }}}
44a65,69
> " The nvim-treesitter library defines many global highlight groups that are
> " linked to the regular vim syntax highlight groups. We only need to redefine
> " those highlight groups when the defaults do not match the dracula
> " specification.
> " https://github.com/nvim-treesitter/nvim-treesitter/blob/master/plugin/nvim-treesitter.vim
71a97,99
>   " HTML and JSX tag attributes. By default, this group is linked to TSProperty,
>   " which in turn links to Identifer (white).
>   hi! link TSTagAttribute DraculaGreenItalic
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/dracula/after/plugin/dracula.vim
'/home/boret/.vim/bundle/dracula/after/plugin/dracula.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/dracula/after/plugin/dracula.vim'
--------------------------------
12a13,14
> hi! link jsBuiltins                DraculaCyan
> hi! link jsClassDefinition         DraculaCyan
19a22
> hi! link jsFuncArgs                DraculaOrangeItalic
20a24,26
> hi! link jsNull                    Constant
> hi! link jsObjectColon             DraculaPink
> hi! link jsSuper                   DraculaPurpleItalic
21a28,29
> hi! link jsThis                    DraculaPurpleItalic
> hi! link jsUndefined               Constant
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/dracula/after/syntax/javascript.vim
'/home/boret/.vim/bundle/dracula/after/syntax/javascript.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/dracula/after/syntax/javascript.vim'
--------------------------------
14d13
< hi! link texRefZone       DraculaBgDarker
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/dracula/after/syntax/tex.vim
'/home/boret/.vim/bundle/dracula/after/syntax/tex.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/dracula/after/syntax/tex.vim'
--------------------------------
235c235
< hi! link TabLineFill  DraculaBgDarker
---
> hi! link TabLineFill  DraculaBgDark
252a253,255
>   hi! link LspReferenceText DraculaSelection
>   hi! link LspReferenceRead DraculaSelection
>   hi! link LspReferenceWrite DraculaSelection
262c265
<   hi! link SpecialKey DraculaSubtle
---
>   hi! link SpecialKey DraculaPink
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/dracula/colors/dracula.vim
'/home/boret/.vim/bundle/dracula/colors/dracula.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/dracula/colors/dracula.vim'
--------------------------------
9a10,11
>
> - \*nix:
14,15c16,19
< If you use vim 8.0 (and not 8.2), you may need to use
< `~/.vim/pack/themes/opt` instead.
---
> - Windows: create directory `$HOME\vimfiles\pack\themes\start`
>
> If you use vim 8.0 (and not 8.2), you may need to use `~/.vim/pack/themes/opt`
> or `$HOME\vimfiles\pack\themes\opt` instead.
18a23,24
>
> - \*nix:
22a29,30
> - Windows: navigate to `$HOME\vimfiles\pack\themes\start`
>
27a36
> (Or use your favorite GUI client, or download the ZIP)
29,35c38
< 4. Create configuration file (in case you don't have yet):
<
< ```
< touch ~/.vimrc
< ```
<
< 5. Edit the `~/.vimrc` file with the following content:
---
> 4. Edit your `vimrc` file with the following content:
42a46,49
> The location of the `vimrc` varies between platforms:
> - \*nix: `~/.vim/vimrc` or `~/.vimrc`
> - Windows: `$HOME\vimfiles\vimrc` or `$HOME\_vimrc`
>
45c52,54
< If you [use vim + pathogen](http://vimcasts.org/episodes/synchronizing-plugins-with-git-submodules-and-pathogen/):
---
> - If you [use vim + pathogen + submodules](http://vimcasts.org/episodes/synchronizing-plugins-with-git-submodules-and-pathogen/):
>
> Navigate to your vim directory (\*nix: `~/.vim`; Windows: `$HOME\vimfiles`)
47d55
<     cd ~/.vim
52c60
< If you [use vim + vundle](https://github.com/VundleVim/Vundle):
---
> - If you [use vim + vundle](https://github.com/VundleVim/Vundle):
59c67
< If you [use vim-plug](https://github.com/junegunn/vim-plug) (\`as\` will install
---
> - If you [use vim-plug](https://github.com/junegunn/vim-plug) (\`as\` will install
67c75
< If you [use spacevim](https://spacevim.org), put the
---
> - If you [use spacevim](https://spacevim.org), put the
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/dracula/INSTALL.md
'/home/boret/.vim/bundle/dracula/INSTALL.md' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/dracula/INSTALL.md'
--------------------------------
27a28
>
42a44,63
>     * base16_atelier_cave
>     * base16_atelier_cave_light
>     * base16_atelier_dune
>     * base16_atelier_dune_light
>     * base16_atelier_estuary
>     * base16_atelier_estuary_light
>     * base16_atelier_forest
>     * base16_atelier_forest_light
>     * base16_atelier_heath
>     * base16_atelier_heath_light
>     * base16_atelier_lakeside
>     * base16_atelier_lakeside_light
>     * base16_atelier_plateau
>     * base16_atelier_plateau_light
>     * base16_atelier_savanna
>     * base16_atelier_savanna_light
>     * base16_atelier_seaside
>     * base16_atelier_seaside_light
>     * base16_atelier_sulphurpool
>     * base16_atelier_sulphurpool_light
47a69
>     * base16_atlas
48a71,81
>     * base16_black_metal
>     * base16_black_metal_bathory
>     * base16_black_metal_burzum
>     * base16_black_metal_dark_funeral
>     * base16_black_metal_gorgoroth
>     * base16_black_metal_immortal
>     * base16_black_metal_khold
>     * base16_black_metal_marduk
>     * base16_black_metal_mayhem
>     * base16_black_metal_nile
>     * base16_black_metal_venom
50a84,86
>     * base16_brogrammer
>     * base16_brushtrees
>     * base16_brushtrees_dark
51a88
>     * base16_circus
52a90,91
>     * base16_classic_dark
>     * base16_classic_light
54a94,97
>     * base16_cupcake
>     * base16_cupertino
>     * base16_darktooth
>     * base16_decaf
55a99,103
>     * base16_default_dark
>     * base16_default_light
>     * base16_dracula
>     * base16_edge_dark
>     * base16_edge_light
57a106
>     * base16_espresso
58a108,111
>     * base16_framer
>     * base16_fruit_soda
>     * base16_gigavolt
>     * base16_github
59a113,114
>     * base16_google_dark
>     * base16_google_light
60a116,117
>     * base16_grayscale_dark
>     * base16_grayscale_light
62a120,125
>     * base16_gruvbox_dark_medium
>     * base16_gruvbox_dark_pale
>     * base16_gruvbox_dark_soft
>     * base16_gruvbox_light_hard
>     * base16_gruvbox_light_medium
>     * base16_gruvbox_light_soft
63a127,131
>     * base16_harmonic_dark
>     * base16_harmonic_light
>     * base16_heetch
>     * base16_heetch_light
>     * base16_helios
64a133,140
>     * base16_horizon_dark
>     * base16_horizon_light
>     * base16_horizon_terminal_dark
>     * base16_horizon_terminal_light
>     * base16_ia_dark
>     * base16_ia_light
>     * base16_icy
>     * base16_irblack
66a143
>     * base16_macintosh
67a145,152
>     * base16_materia
>     * base16_material
>     * base16_material_darker
>     * base16_material_lighter
>     * base16_material_palenight
>     * base16_material_vivid
>     * base16_mellow_purple
>     * base16_mexico_light
70a156
>     * base16_nova
72a159,163
>     * base16_one_light
>     * base16_onedark
>     * base16_outrun_dark
>     * base16_papercolor_dark
>     * base16_papercolor_light
73a165,166
>     * base16_phd
>     * base16_pico
74a168
>     * base16_porple
75a170,171
>     * base16_rebecca
>     * base16_sandcastle
77a174,175
>     * base16_snazzy
>     * base16_solarflare
78a177,178
>     * base16_solarized_dark
>     * base16_solarized_light
80a181,183
>     * base16_summerfruit_dark
>     * base16_summerfruit_light
>     * base16_synth_midnight_dark
81a185,187
>     * base16_tomorrow_night
>     * base16_tomorrow_night_eighties
>     * base16_tube
83a190,194
>     * base16_unikitty_dark
>     * base16_unikitty_light
>     * base16_woodland
>     * base16_xcode_dusk
>     * base16_zenburn
128a240,241
>     * selenized
>     * selenized_bw
137a251
>     * supernova
224c338
< Highlight when the buffer is modified.
---
> Highlight when the buffer is modified. >
298a413,429
> ==============================================================================
> Base16 Themes Generation *airline-themes-base16-generation*
>
> Base16 is a curated list of themes you can find here:
> https://github.com/chriskempson/base16.
>
> Each theme defines 16 colors, and each editor creates a template .mustache
> file to create the themes for their application.
>
> You can find the .mustache files for vim-airline themes here:
> https://github.com/dawikur/base16-vim-airline-themes.
> If the .mustache file is given to a Base16 builder,
> it will generate every included base16 theme.
>
> These themes were generated using the Python builder which is available here:
> https://github.com/InspectorMustache/base16-builder-python
>
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline-themes/doc/airline-themes.txt
'/home/boret/.vim/bundle/vim-airline-themes/doc/airline-themes.txt' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline-themes/doc/airline-themes.txt'
--------------------------------
/usr/bin/diff: /home/boret/.vim/bundle/vim-airline-themes/.travis.yml: No existe el fichero o el directorio
--------------------------------
172c172
<     let newNodeName = input(prompt, curDirNode.path.str() . nerdtree#slash(), 'file')
---
>     let newNodeName = substitute(input(prompt, curDirNode.path.str() . nerdtree#slash(), 'file'), '\(^\s*\|\s*$\)', '', 'g')
209c209
<         let newNodePath = input(prompt, curNode.path.str(), 'file')
---
>         let newNodePath = substitute(input(prompt, curNode.path.str(), 'file'), '\(^\s*\|\s*$\)', '', 'g')
340c340
<     let newNodePath = input(prompt, currentNode.path.str(), 'file')
---
>     let newNodePath = substitute(input(prompt, currentNode.path.str(), 'file'), '\(^\s*\|\s*$\)', '', 'g')
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/nerdtree/nerdtree_plugin/fs_menu.vim
'/home/boret/.vim/bundle/nerdtree/nerdtree_plugin/fs_menu.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/nerdtree/nerdtree_plugin/fs_menu.vim'
--------------------------------
252c252
<          Open selected bookmark directory in current NERDTree
---
>          Find selected bookmark directory in current NERDTree
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/nerdtree/doc/NERDTree.txt
'/home/boret/.vim/bundle/nerdtree/doc/NERDTree.txt' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/nerdtree/doc/NERDTree.txt'
--------------------------------
39,40c39,40
<     exec 'syn match NERDTreeExecFile #^.*'.g:NERDTreeNodeDelimiter.'\*\($\| \)# contains=NERDTreeRO,NERDTreeBookmark'
<     exec 'syn match NERDTreeFile  #^[^"\.'.s:dirArrows.'] *[^'.s:dirArrows.']*# contains=NERDTreeLink,NERDTreeRO,NERDTreeBookmark,NERDTreeExecFile'
---
>     exec 'syn match NERDTreeExecFile #^.*'.g:NERDTreeNodeDelimiter.'\*\($\| \)# contains=NERDTreeRO,NERDTreeBookmarkName'
>     exec 'syn match NERDTreeFile  #^[^"\.'.s:dirArrows.'] *[^'.s:dirArrows.']*# contains=NERDTreeLink,NERDTreeRO,NERDTreeBookmarkName,NERDTreeExecFile'
43,44c43,44
<     exec 'syn match NERDTreeExecFile #[^'.g:NERDTreeNodeDelimiter.']\{-}'.g:NERDTreeNodeDelimiter.'\*\($\| \)# contains=NERDTreeRO,NERDTreeBookmark'
<     exec 'syn match NERDTreeFile     #^.*'.g:NERDTreeNodeDelimiter.'.*[^\/]\($\|'.g:NERDTreeNodeDelimiter.'.*\)# contains=NERDTreeLink,NERDTreeRO,NERDTreeBookmark,NERDTreeExecFile'
---
>     exec 'syn match NERDTreeExecFile #[^'.g:NERDTreeNodeDelimiter.']\{-}'.g:NERDTreeNodeDelimiter.'\*\($\| \)# contains=NERDTreeRO,NERDTreeBookmarkName'
>     exec 'syn match NERDTreeFile     #^.*'.g:NERDTreeNodeDelimiter.'.*[^\/]\($\|'.g:NERDTreeNodeDelimiter.'.*\)# contains=NERDTreeLink,NERDTreeRO,NERDTreeBookmarkName,NERDTreeExecFile'
48c48
< exec 'syn match NERDTreeRO #.*'.g:NERDTreeNodeDelimiter.'\zs.*\ze'.g:NERDTreeNodeDelimiter.'.*\['.g:NERDTreeGlyphReadOnly.'\]# contains=NERDTreeIgnore,NERDTreeBookmark,NERDTreeFile'
---
> exec 'syn match NERDTreeRO #.*'.g:NERDTreeNodeDelimiter.'\zs.*\ze'.g:NERDTreeNodeDelimiter.'.*\['.g:NERDTreeGlyphReadOnly.'\]# contains=NERDTreeIgnore,NERDTreeBookmarkName,NERDTreeFile'
55c55
< syn match NERDTreeBookmark # {.*}#hs=s+1
---
> syn match NERDTreeBookmarkName # {.*}#hs=s+2,he=e-1
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/nerdtree/syntax/nerdtree.vim
'/home/boret/.vim/bundle/nerdtree/syntax/nerdtree.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/nerdtree/syntax/nerdtree.vim'
--------------------------------
151c151
< ### How can I close Vim automatically when NERDTree is the last window?
---
> ### How can I close Vim or a tab automatically when NERDTree is the last window?
154,156c154,160
< " Exit Vim if NERDTree is the only window left.
< autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() |
<     \ quit | endif
---
> " Exit Vim if NERDTree is the only window remaining in the only tab.
> autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif
> ```
> ---
> ```vim
> " Close the tab if NERDTree is the only window remaining in it.
> autocmd BufEnter * if winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif
171c175
< autocmd BufWinEnter * silent NERDTreeMirror
---
> autocmd BufWinEnter * if getcmdwintype() == '' | silent NERDTreeMirror | endif
185a190,221
>
> ### Can NERDTree access remote files via scp or ftp?
>
> Short answer: No, and there are no plans to add that functionality. However, Vim ships with a plugin that does just that. It's called netrw, and by adding the following lines to your `.vimrc`, you can use it to open files over the `scp:`, `ftp:`, or other protocols, while still using NERDTree for all local files. The function seamlessly makes the decision to open NERDTree or netrw, and other supported protocols can be added to the regular expression.
>
> ```vim
> " Function to open the file or NERDTree or netrw.
> "   Returns: 1 if either file explorer was opened; otherwise, 0.
> function! s:OpenFileOrExplorer(...)
>     if a:0 == 0 || a:1 == ''
>         NERDTree
>     elseif filereadable(a:1)
>         execute 'edit '.a:1
>         return 0
>     elseif a:1 =~? '^\(scp\|ftp\)://' " Add other protocols as needed.
>         execute 'Vexplore '.a:1
>     elseif isdirectory(a:1)
>         execute 'NERDTree '.a:1
>     endif
>     return 1
> endfunction
>
> " Auto commands to handle OS commandline arguments
> autocmd StdinReadPre * let s:std_in=1
> autocmd VimEnter * if argc()==1 && !exists('s:std_in') | if <SID>OpenFileOrExplorer(argv()[0]) | wincmd p | enew | wincmd p | endif | endif
>
> " Command to call the OpenFileOrExplorer function.
> command! -n=? -complete=file -bar Edit :call <SID>OpenFileOrExplorer('<args>')
>
> " Command-mode abbreviation to replace the :edit Vim command.
> cnoreabbrev e Edit
> ```
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/nerdtree/README.markdown
'/home/boret/.vim/bundle/nerdtree/README.markdown' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/nerdtree/README.markdown'
--------------------------------
8c8,14
< - **.8**: Put `Callback` function variables in local scope. [#1230](https://github.com/preservim/nerdtree/pull/1230)
---
> - **.14**:  Replace trim() with a version-compatible alternative. (PhilRunninger) [#1265](https://github.com/preservim/nerdtree/pull/1265)
> - **.13**: Change highlighting of bookmarks in the tree. (PhilRunninger) [#1261](https://github.com/preservim/nerdtree/pull/1261)
> - **.12**: Answer the question about accessing files over scp or ftp. (PhilRunninger) [#1259](https://github.com/preservim/nerdtree/pull/1259)
> - **.11**: Trim filenames created via the fs_menu (elanorigby) [#1243](https://github.com/preservim/nerdtree/pull/1243)
> - **.10**: Improve F.A.Q. Answers and Issue Templates (PhilRunninger) [#1249](https://github.com/preservim/nerdtree/pull/1249)
> - **.9**: `go` on a bookmark directory will NERDTreeFind it. (PhilRunninger) [#1236](https://github.com/preservim/nerdtree/pull/1236)
> - **.8**: Put `Callback` function variables in local scope. (PhilRunninger) [#1230](https://github.com/preservim/nerdtree/pull/1230)
10c16
< - **.6**: Restore the default behavior of the <CR> key. (PhilRunninger) [#1221](https://github.com/preservim/nerdtree/pull/1221)
---
> - **.6**: Restore the default behavior of the `<CR>` key. (PhilRunninger) [#1221](https://github.com/preservim/nerdtree/pull/1221)
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/nerdtree/CHANGELOG.md
'/home/boret/.vim/bundle/nerdtree/CHANGELOG.md' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/nerdtree/CHANGELOG.md'
--------------------------------
575c575,579
<     call a:bookmark.activate(b:NERDTree, !a:bookmark.path.isDirectory ? {'stay': 1, 'where': 'p', 'keepopen': 1} : {})
---
>     if a:bookmark.path.isDirectory
>         execute 'NERDTreeFind '.a:bookmark.path.str()
>     else
>         call a:bookmark.activate(b:NERDTree, {'stay': 1, 'where': 'p', 'keepopen': 1})
>     endif
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/nerdtree/autoload/nerdtree/ui_glue.vim
'/home/boret/.vim/bundle/nerdtree/autoload/nerdtree/ui_glue.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/nerdtree/autoload/nerdtree/ui_glue.vim'
--------------------------------
233c233
<   if exists("s:timer") && a:timer == s:timer
---
>   if exists("s:timer") && a:timer == s:timer && exists('#airline')
242c242
<   let files = split(globpath(&rtp, "autoload/airline/extensions/*.vim"), "\n")
---
>   let files = split(globpath(&rtp, 'autoload/airline/extensions/*.vim', 1), "\n")
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/plugin/airline.vim
'/home/boret/.vim/bundle/vim-airline/plugin/airline.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/plugin/airline.vim'
--------------------------------
74,75c74,76
<            percentage % ☰ current line/number of lines ln : column
<            So this: 10% ☰ 10/100 ln : 20   means: >
---
>            percentage % ln: current line/number of lines ☰ cn: column
>            So this: 10% ln:10/100☰ cn:20
> 	   means: >
77,79c78,81
<               ☰ 10    - current line 10
<               /100 ln - of 100 lines
<               : 20    - current column 20
---
> 	      ln:     - line number is
>               10/100☰ - 10 of 100 total lines
> 	      cn:     - column number is
>               20      - 20
120a123,126
> * enable experimental features >
>   " Currently: Enable Vim9 Script implementation
>   let g:airline_experimental = 1
>
175,176c181,182
<     hi CursorLine ctermbg=none guibg=none
<     hi VertSplit ctermbg=none guibg=none
---
>     hi CursorLine ctermbg=none guibg=NONE
>     hi VertSplit ctermbg=none guibg=NONE
274c280
<   let g:airline_focuslost_inactive = 1
---
>   let g:airline_focuslost_inactive = 0
298a305,307
> * Display a only file name in statusline: >
>   let g:airline_section_c_only_filename = 1
> >
338a348,357
> Note: Some additional characters like spaces and colons may be included in the
> default. Including them within the symbol definitions rather than outside of
> them allows you to eliminate or otherwise alter them.
>
> Note: Be aware that some of these glyphs are defined as ligatures, so they may
> show up different (usually bigger) if followed by a space. This only happens
> if both the font and terminal implementation used support ligatures. If you
> want to follow a glyph with a space _without_ the alternate ligature being
> rendered, follow it with a non-breaking-space character.
>
350a370,371
>   let g:airline_symbols.colnr = ' ㏇:'
>   let g:airline_symbols.colnr = ' ℅:'
353,354c374,375
<   let g:airline_symbols.linenr = '␊'
<   let g:airline_symbols.linenr = '␤'
---
>   let g:airline_symbols.linenr = ' ␊:'
>   let g:airline_symbols.linenr = ' ␤:'
371a393
>   let g:airline_symbols.colnr = ' :'
373,374c395,396
<   let g:airline_symbols.linenr = '☰'
<   let g:airline_symbols.maxlinenr = ''
---
>   let g:airline_symbols.linenr = ' :'
>   let g:airline_symbols.maxlinenr = '☰ '
761c783
< "[git]" to be able do distinguish between fugitive and non-fugitive buffers.
---
> "[git]" to be able to distinguish between fugitive and non-fugitive buffers.
834c856
< * set name for default lauout (empty to disable it completely) >
---
> * set name for default layout (empty to disable it completely) >
896c918
<   Prevents heavy operation when using a language server that sends frequent progress notifications.
---
>   Prevents heavy operation when using a language server that sends frequent progress notifications.
1347a1370,1375
> -------------------------------------                      *airline-scrollbar*
>
> Displays an Ascii Scrollbar for active windows with a width > 200.
>
> * enable/disable scrollbar integration >
>   let g:airline#extensions#scrollbar#enabled = 1 (default: 0)
1531a1560,1562
>
>   " this can also be configured for an individual buffer
>   let b:airline_whitespace_trailing_regexp = '\s$'
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/doc/airline.txt
'/home/boret/.vim/bundle/vim-airline/doc/airline.txt' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/doc/airline.txt'
--------------------------------
/usr/bin/diff: /home/boret/.vim/bundle/vim-airline/.travis.yml: No existe el fichero o el directorio
--------------------------------
22a23,36
>   it 'should be same &columns'
>     let g:airline_statusline_ontop = 1
>     Expect airline#util#winwidth() == &columns
>   end
>
>   it 'should be same winwidth(0)'
>     let g:airline_statusline_ontop = 0
>     Expect airline#util#winwidth() == winwidth(0)
>   end
>
>   it 'should be same winwidth(30)'
>     Expect airline#util#winwidth(30, 0) == winwidth(30)
>   end
>
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/t/util.vim
'/home/boret/.vim/bundle/vim-airline/t/util.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/t/util.vim'
--------------------------------
37a38,57
>
>   it 'value should be blank'
>     Expect airline#parts#filetype() == ''
>   end
>
>   it 'can overwrite a filetype'
>     set ft=aaa
>     Expect airline#parts#filetype() == 'aaa'
>   end
>
>   it 'can overwrite a filetype'
>     "GitHub actions's vim's column is smaller than 90
>     set ft=aaaa
>     if &columns >= 90
>       Expect airline#parts#filetype() == 'aaaa'
>     else
>       Expect airline#parts#filetype() == 'aaa…'
>     endif
>   end
>
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/t/parts.vim
'/home/boret/.vim/bundle/vim-airline/t/parts.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/t/parts.vim'
--------------------------------
33a34,38
>
>   it 'should have a extensions command'
>     Expect exists(':AirlineExtensions') to_be_true
>   end
>
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/t/commands.vim
'/home/boret/.vim/bundle/vim-airline/t/commands.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/t/commands.vim'
--------------------------------
35a36,42
>   it 'section c should be path and coc_status'
>     set autochdir
>     call s:clear()
>     call airline#init#sections()
>     Expect g:airline_section_c == '%<%F%m %#__accent_red#%{airline#util#wrap(airline#parts#readonly(),0)}%#__restore__#%#__accent_bold#%#__restore__#%#__accent_bold#%#__restore__#'
>   end
>
37c44
<     Expect g:airline_section_x == '%{airline#util#prepend("",0)}%{airline#util#prepend("",0)}%{airline#util#prepend("",0)}%{airline#util#prepend("",0)}%{airline#util#prepend("",0)}%{airline#util#wrap(airline#parts#filetype(),0)}'
---
>     Expect g:airline_section_x == '%#__accent_bold#%#__restore__#%{airline#util#prepend("",0)}%{airline#util#prepend("",0)}%{airline#util#prepend("",0)}%{airline#util#prepend("",0)}%{airline#util#prepend("",0)}%{airline#util#wrap(airline#parts#filetype(),0)}'
50a58,66
>   it 'section gutter should be blank unless csv extension is installed'
>     " Note: the csv extension uses only the window local variable
>     Expect g:airline_section_gutter =~ '%='
>   end
>
>   it 'section warning should be blank'
>     Expect g:airline_section_warning =~ ''
>   end
>
83a100
>     Expect airline#parts#get('coc_current_function').raw == ''
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/t/init.vim
'/home/boret/.vim/bundle/vim-airline/t/init.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/t/init.vim'
--------------------------------
20a21
>     - Ascii Scrollbar support
23c24
<   - coc extensions can also show additional status messages
---
>   - coc extensions can also show additional status messages as well as the current function
24a26
>   - rewrote parts using Vim9 Script for performance improvements
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/CHANGELOG.md
'/home/boret/.vim/bundle/vim-airline/CHANGELOG.md' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/CHANGELOG.md'
--------------------------------
6a7
> let g:airline_inactive_funcrefs = get(g:, 'airline_inactive_statusline_funcrefs', [])
9d9
< let s:inactive_funcrefs = []
16,17c16,18
< function! airline#add_statusline_func(name)
<   call airline#add_statusline_funcref(function(a:name))
---
> function! airline#add_statusline_func(name, ...)
>   let warn = get(a:, 1, 1)
>   call airline#add_statusline_funcref(function(a:name), warn)
20c21,27
< function! airline#add_statusline_funcref(function)
---
> function! airline#add_inactive_statusline_func(name, ...)
>   let warn = get(a:, 1, 1)
>   call airline#add_inactive_statusline_funcref(function(a:name), warn)
> endfunction
>
>
> function! airline#add_statusline_funcref(function, ...)
22c29,32
<     call airline#util#warning(printf('The airline statusline funcref "%s" has already been added.', string(a:function)))
---
>     let warn = get(a:, 1, 1)
>     if warn > 0
>       call airline#util#warning(printf('The airline statusline funcref "%s" has already been added.', string(a:function)))
>     endif
35,36c45,53
< function! airline#add_inactive_statusline_func(name)
<   call add(s:inactive_funcrefs, function(a:name))
---
> function! airline#add_inactive_statusline_funcref(function, ...)
>   if index(g:airline_inactive_funcrefs, a:function) >= 0
>     let warn = get(a:, 1, 1)
>     if warn > 0
>       call airline#util#warning(printf('The airline inactive statusline funcref "%s" has already been added.', string(a:function)))
>     endif
>     return
>   endif
>   call add(g:airline_inactive_funcrefs, a:function)
55a73,74
>
>   call airline#util#doautocmd('AirlineAfterTheme')
96,97d114
<   call airline#util#doautocmd('AirlineAfterTheme')
<
171c188
<     call s:invoke_funcrefs(context, s:inactive_funcrefs)
---
>     call s:invoke_funcrefs(context, g:airline_inactive_funcrefs)
206,225c223,242
<     let l:m = mode(1)
<     if l:m ==# "i"
<       let l:mode = ['insert']
<     elseif l:m[0] ==# "i"
<       let l:mode = ['insert']
<     elseif l:m ==# "Rv"
<       let l:mode =['replace']
<     elseif l:m[0] ==# "R"
<       let l:mode = ['replace']
<     elseif l:m[0] =~# '\v(v|V|�|s|S|�)'
<       let l:mode = ['visual']
<     elseif l:m ==# "t"
<       let l:mode = ['terminal']
<     elseif l:m[0] ==# "c"
<       let l:mode = ['commandline']
<     elseif l:m ==# "no"   " does not work, most likely, Vim does not refresh the statusline in OP mode
<       let l:mode = ['normal']
<     elseif l:m[0:1] ==# 'ni'
<       let l:mode = ['insert']
<       let l:m = 'ni'
---
>     let m = mode(1)
>     if m ==# "i"
>       let mode = ['insert']
>     elseif m[0] ==# "i"
>       let mode = ['insert']
>     elseif m ==# "Rv"
>       let mode =['replace']
>     elseif m[0] ==# "R"
>       let mode = ['replace']
>     elseif m[0] =~# '\v(v|V|�|s|S|�)'
>       let mode = ['visual']
>     elseif m ==# "t"
>       let mode = ['terminal']
>     elseif m[0] ==# "c"
>       let mode = ['commandline']
>     elseif m ==# "no"   " does not work, most likely, Vim does not refresh the statusline in OP mode
>       let mode = ['normal']
>     elseif m[0:1] ==# 'ni'
>       let mode = ['insert']
>       let m = 'ni'
227c244
<       let l:mode = ['normal']
---
>       let mode = ['normal']
231c248
<       let l:m = 'multi'
---
>       let m = 'multi'
233,234c250,251
<     if index(['Rv', 'no', 'ni', 'ix', 'ic', 'multi'], l:m) == -1
<       let l:m = l:m[0]
---
>     if index(['Rv', 'no', 'ni', 'ix', 'ic', 'multi'], m) == -1
>       let m = m[0]
236c253
<     let w:airline_current_mode = get(g:airline_mode_map, l:m, l:m)
---
>     let w:airline_current_mode = get(g:airline_mode_map, m, m)
238c255
<     let l:mode = ['inactive']
---
>     let mode = ['inactive']
243c260
<     call add(l:mode, 'modified')
---
>     call add(mode, 'modified')
247c264
<     call add(l:mode, 'paste')
---
>     call add(mode, 'paste')
251c268
<     call add(l:mode, 'crypt')
---
>     call add(mode, 'crypt')
255c272
<     call add(l:mode, 'spell')
---
>     call add(mode, 'spell')
259c276
<     call add(l:mode, 'readonly')
---
>     call add(mode, 'readonly')
262c279
<   let mode_string = join(l:mode)
---
>   let mode_string = join(mode)
265c282
<     call airline#highlighter#highlight(l:mode, context.bufnr)
---
>     call airline#highlighter#highlight(mode, string(context.bufnr))
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline.vim'
--------------------------------
44,59c44,83
< function! airline#msdos#round_msdos_colors(rgblist)
<   " Check for values from MSDOS 16 color terminal
<   let best = []
<   let min  = 100000
<   let list = s:basic16
<   for value in list
<     let t = abs(value[0] - a:rgblist[0]) +
<           \ abs(value[1] - a:rgblist[1]) +
<           \ abs(value[2] - a:rgblist[2])
<     if min > t
<       let min = t
<       let best = value
<     endif
<   endfor
<   return index(s:basic16, best)
< endfunction
---
> if !exists(":def") || !airline#util#has_vim9_script()
>
> 	function! airline#msdos#round_msdos_colors(rgblist)
> 		" Check for values from MSDOS 16 color terminal
> 		let best = []
> 		let min  = 100000
> 		let list = s:basic16
> 		for value in list
> 			let t = abs(value[0] - a:rgblist[0]) +
> 						\ abs(value[1] - a:rgblist[1]) +
> 						\ abs(value[2] - a:rgblist[2])
> 			if min > t
> 				let min = t
> 				let best = value
> 			endif
> 		endfor
> 		return index(s:basic16, best)
> 	endfunction
>
> 	finish
>
> else
>
>   def airline#msdos#round_msdos_colors(rgblist: list<number>): string
>     # Check for values from MSDOS 16 color terminal
>     var best = []
>     var min  = 100000
>     var t = 0
>     for value in s:basic16
>       t = abs(value[0] - rgblist[0]) +
>           abs(value[1] - rgblist[1]) +
>           abs(value[2] - rgblist[2])
>       if min > t
>         min = t
>         best = value
>       endif
>     endfor
>     return string(index(s:basic16, best))
>   enddef
> endif
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/msdos.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/msdos.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/msdos.vim'
--------------------------------
264a265,269
>   if get(g:, 'airline#extensions#scrollbar#enabled', 0)
>     call airline#extensions#scrollbar#init(s:ext)
>     call add(s:loaded_ext, 'scrollbar')
>   endif
>
468c473
<     for file in split(globpath(&rtp, "autoload/airline/extensions/*.vim"), "\n")
---
>     for file in split(globpath(&rtp, 'autoload/airline/extensions/*.vim', 1), "\n")
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions.vim'
--------------------------------
19c19
< function! airline#util#winwidth(...)
---
> function! airline#util#winwidth(...) abort
176a177,180
>   if !exists('#airline') && a:event !=? 'AirlineToggledOff'
>     " airline disabled
>     return
>   endif
181c185
<   let files = split(globpath(&rtp, 'autoload/airline/themes/'.a:match.'*.vim'), "\n")
---
>   let files = split(globpath(&rtp, 'autoload/airline/themes/'.a:match.'*.vim', 1), "\n")
210a215,221
> endfunction
>
> function! airline#util#has_vim9_script()
>   " Returns true, if Vim is new enough to understand vim9 script
>   return (exists(":def") &&
>     \ v:versionlong >= 8022844 &&
>     \ get(g:, "airline_experimental", 0))
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/util.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/util.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/util.vim'
--------------------------------
75c75
<     else
---
>     elseif !empty(g:airline_symbols.spell)
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/parts.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/parts.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/parts.vim'
--------------------------------
89c89,92
<     " ro=, ws=☲, lnr=☰, mlnr=, br=, nx=Ɇ, crypt=🔒, dirty=⚡
---
>     " ro=, ws=☲, lnr=, mlnr=☰, colnr=, br=, nx=Ɇ, crypt=🔒, dirty=⚡
>     "  Note: For powerline, we add an extra space after maxlinenr symbol,
>     "  because it is usually setup as a ligature in most powerline patched
>     "  fonts. It can be over-ridden by configuring a custom maxlinenr
93,94c96,98
<           \ 'linenr': "\u2630 ",
<           \ 'maxlinenr': " \ue0a1",
---
>           \ 'maxlinenr': "\u2630 ",
>           \ 'linenr': " \ue0a1:",
>           \ 'colnr': " \ue0a3:",
106c110
<     " ro=⊝, ws=☲, lnr=☰, mlnr=㏑, br=ᚠ, nx=Ɇ, crypt=🔒
---
>     " ro=⊝, ws=☲, lnr=㏑, mlnr=☰, colnr=℅, br=ᚠ, nx=Ɇ, crypt=🔒
110,111c114,116
<           \ 'linenr': "\u2630 ",
<           \ 'maxlinenr': " \u33D1",
---
>           \ 'maxlinenr': "\u2630",
>           \ 'linenr': " \u33d1:",
>           \ 'colnr': " \u2105:",
126,127c131,133
<           \ 'linenr': 'ln ',
<           \ 'maxlinenr': ' :',
---
>           \ 'linenr': ' ln:',
>           \ 'maxlinenr': '',
>           \ 'colnr': ' cn:',
148c154,158
<   call airline#parts#define_raw('file', airline#formatter#short_path#format('%f%m'))
---
>   if get(g:, 'airline_section_c_only_filename',0)
>     call airline#parts#define_raw('file', '%t%m')
>   else
>     call airline#parts#define_raw('file', airline#formatter#short_path#format('%f%m'))
>   endif
155a166,168
>   call airline#parts#define('colnr', {
>         \ 'raw': '%{g:airline_symbols.colnr}%v',
>         \ 'accent': 'bold'})
166a180,183
>   call airline#parts#define('coc_current_function', {
>         \ 'raw': '',
>         \ 'accent': 'bold'
>         \ })
175c192
<         \ 'lsp_error_count', 'lsp_warning_count',
---
>         \ 'lsp_error_count', 'lsp_warning_count', 'scrollbar',
178a196
>
214c232
<     let g:airline_section_x = airline#section#create_right(['bookmark', 'tagbar', 'vista', 'gutentags', 'gen_tags', 'omnisharp', 'grepper', 'filetype'])
---
>     let g:airline_section_x = airline#section#create_right(['coc_current_function', 'bookmark', 'scrollbar', 'tagbar', 'vista', 'gutentags', 'gen_tags', 'omnisharp', 'grepper', 'filetype'])
221c239
<       let g:airline_section_z = airline#section#create(['windowswap', 'obsession', '%p%%'.spc, 'linenr', 'maxlinenr', ':%v'])
---
>       let g:airline_section_z = airline#section#create(['windowswap', 'obsession', '%p%%', 'linenr', 'maxlinenr', 'colnr'])
223c241
<       let g:airline_section_z = airline#section#create(['%p%%'.spc, 'linenr',  ':%v'])
---
>       let g:airline_section_z = airline#section#create(['%p%%', 'linenr', 'colnr'])
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/init.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/init.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/init.vim'
--------------------------------
327a328,331
>   if !exists('#airline')
>     " airline disabled
>     return
>   endif
348a353,358
> function! s:sh_autocmd_handler()
>   if exists('#airline')
>     unlet! b:airline_head b:airline_do_mq_check
>   endif
> endfunction
>
352,353c362,363
<   autocmd ShellCmdPost,CmdwinLeave * unlet! b:airline_head b:airline_do_mq_check
<   autocmd User AirlineBeforeRefresh unlet! b:airline_head b:airline_do_mq_check
---
>   autocmd ShellCmdPost,CmdwinLeave * call s:sh_autocmd_handler()
>   autocmd User AirlineBeforeRefresh call s:sh_autocmd_handler()
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/branch.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/branch.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/branch.vim'
--------------------------------
74c74
<       if s:lsp_progress['message'] !=# '' && s:lsp_progress['percentage'] !=# 100
---
>       if s:lsp_progress['message'] !=# ''
76c76
<         if s:lsp_progress['percentage'] >= 0
---
>         if has_key(s:lsp_progress, 'percentage') && s:lsp_progress['percentage'] >= 0
81c81
<         return s:lsp_progress['server'] . ':' . s:title . ' ' . message
---
>         return s:lsp_progress['server'] . ': ' . s:title . ' ' . message
90a91,94
>   if !exists('#airline')
>     " airline disabled
>     return
>   endif
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/lsp.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/lsp.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/lsp.vim'
--------------------------------
15c15
< function! airline#extensions#fugitiveline#bufname()
---
> function! airline#extensions#fugitiveline#bufname() abort
36a37,39
>     if empty(bufname('%'))
>       return &buftype ==# 'nofile' ? '[Scratch]' : '[No Name]'
>     endif
43c46,52
< function! airline#extensions#fugitiveline#init(ext)
---
> function! s:sh_autocmd_handler()
>   if exists('#airline')
>     unlet! b:fugitive_name
>   endif
> endfunction
>
> function! airline#extensions#fugitiveline#init(ext) abort
46c55,59
<     call airline#parts#define_raw('path', '%<%{airline#extensions#fugitiveline#bufname()}%m')
---
>     if get(g:, 'airline_stl_path_style', 'default') ==# 'short'
>       call airline#parts#define_raw('path', '%<%{pathshorten(airline#extensions#fugitiveline#bufname())}%m')
>     else
>       call airline#parts#define_raw('path', '%<%{airline#extensions#fugitiveline#bufname()}%m')
>     endif
48c61,65
<     call airline#parts#define_raw('file', '%<%{airline#extensions#fugitiveline#bufname()}%m')
---
>     if get(g:, 'airline_stl_path_style', 'default') ==# 'short'
>       call airline#parts#define_raw('file', '%<%{pathshorten(airline#extensions#fugitiveline#bufname())}%m')
>     else
>       call airline#parts#define_raw('file', '%<%{airline#extensions#fugitiveline#bufname()}%m')
>     endif
50,51c67,68
<   autocmd ShellCmdPost,CmdwinLeave * unlet! b:fugitive_name
<   autocmd User AirlineBeforeRefresh unlet! b:fugitive_name
---
>   autocmd ShellCmdPost,CmdwinLeave * call s:sh_autocmd_handler()
>   autocmd User AirlineBeforeRefresh call s:sh_autocmd_handler()
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/fugitiveline.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/fugitiveline.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/fugitiveline.vim'
--------------------------------
109a110,113
>   if !exists('#airline')
>     " airline disabled
>     return
>   endif
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/cursormode.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/cursormode.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/cursormode.vim'
--------------------------------
11c11,15
<   if (&ft =~# 'gina' && &ft !~# 'blame') || &ft ==# 'diff'
---
>   " gina.vim seems to set b:gina_initialized = 1 in diff buffers it open,
>   " where get(b:, 'gina_initialized', 0) returns 1.
>   " In diff buffers not opened by gina.vim b:gina_initialized is not set,
>   " so get(b:, 'gina_initialized', 0) returns 0.
>   if (&ft =~# 'gina' && &ft !~# 'blame') || (&ft ==# 'diff' && get(b:, 'gina_initialized', 0))
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/gina.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/gina.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/gina.vim'
--------------------------------
130a131,134
>   if !exists('#airline')
>     " airline disabled
>     return
>   endif
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/ale.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/ale.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/ale.vim'
--------------------------------
79c79
< function! airline#extensions#default#apply(builder, context)
---
> function! airline#extensions#default#apply(builder, context) abort
86,89c86
<     let text = s:get_section(winnr, 'c')
<     if empty(text)
<       let text = ' %f%m '
<     endif
---
>     let text = !empty(s:get_section(winnr, 'c')) ? s:get_section(winnr, 'c') : ' %f%m '
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/default.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/default.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/default.vim'
--------------------------------
45a46,49
>   if !exists('#airline')
>     " airline disabled
>     return
>   endif
53a58,63
> function! s:autocmd_handler()
>   if exists('#airline')
>     unlet! b:airline_po_stats
>   endif
> endfunction
>
58c68
<     autocmd airline BufWritePost * unlet! b:airline_po_stats
---
>     autocmd airline BufWritePost * call s:autocmd_handler()
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/po.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/po.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/po.vim'
--------------------------------
55c55
<   if &ft is# 'rst'
---
>   if match(['rst', 'markdown'], &ft) >= 0
81c81,82
<         let regexp = get(g:, 'airline#extensions#whitespace#trailing_regexp', '\s$')
---
>         let regexp = get(b:, 'airline_whitespace_trailing_regexp',
>               \ get(g:, 'airline#extensions#whitespace#trailing_regexp', '\s$'))
185a187,190
>   if !exists('#airline')
>     " airline disabled
>     return
>   endif
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/whitespace.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/whitespace.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/whitespace.vim'
--------------------------------
37a38,41
>   if !exists('#airline')
>     " airline disabled
>     return
>   endif
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/languageclient.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/languageclient.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/languageclient.vim'
--------------------------------
2c2
< " vim: et ts=2 sts=2 sw=2
---
> " vim: et ts=2 sts=2 sw=2 et
6,21c6,17
< function! airline#extensions#tabline#formatters#default#format(bufnr, buffers)
<   let fnametruncate = get(g:, 'airline#extensions#tabline#fnametruncate', 0)
<   let fmod = get(g:, 'airline#extensions#tabline#fnamemod', ':~:.')
<   let _ = ''
<
<   let name = bufname(a:bufnr)
<   if empty(name)
<     let _ .= '[No Name]'
<   elseif name =~ 'term://'
<     " Neovim Terminal
<     let _ = substitute(name, '\(term:\)//.*:\(.*\)', '\1 \2', '')
<   else
<     if get(g:, 'airline#extensions#tabline#fnamecollapse', 1)
<       " Does not handle non-ascii characters like Cyrillic: 'D/Учёба/t.c'
<       "let _ .= substitute(fnamemodify(name, fmod), '\v\w\zs.{-}\ze(\\|/)', '', 'g')
<       let _ .= pathshorten(fnamemodify(name, fmod))
---
> if !exists(":def") || !airline#util#has_vim9_script()
>   function! airline#extensions#tabline#formatters#default#format(bufnr, buffers)
>     let fnametruncate = get(g:, 'airline#extensions#tabline#fnametruncate', 0)
>     let fmod = get(g:, 'airline#extensions#tabline#fnamemod', ':~:.')
>     let _ = ''
>
>     let name = bufname(a:bufnr)
>     if empty(name)
>       let _ = '[No Name]'
>     elseif name =~ 'term://'
>       " Neovim Terminal
>       let _ = substitute(name, '\(term:\)//.*:\(.*\)', '\1 \2', '')
23c19,28
<       let _ .= fnamemodify(name, fmod)
---
>       if get(g:, 'airline#extensions#tabline#fnamecollapse', 1)
>         " Does not handle non-ascii characters like Cyrillic: 'D/Учёба/t.c'
>         "let _ .= substitute(fnamemodify(name, fmod), '\v\w\zs.{-}\ze(\\|/)', '', 'g')
>         let _ = pathshorten(fnamemodify(name, fmod))
>       else
>         let _ = fnamemodify(name, fmod)
>       endif
>       if a:bufnr != bufnr('%') && fnametruncate && strlen(_) > fnametruncate
>         let _ = airline#util#strcharpart(_, 0, fnametruncate)
>       endif
25,26c30,42
<     if a:bufnr != bufnr('%') && fnametruncate && strlen(_) > fnametruncate
<       let _ = airline#util#strcharpart(_, 0, fnametruncate)
---
>
>     return airline#extensions#tabline#formatters#default#wrap_name(a:bufnr, _)
>   endfunction
>
>   function! airline#extensions#tabline#formatters#default#wrap_name(bufnr, buffer_name)
>     let buf_nr_format = get(g:, 'airline#extensions#tabline#buffer_nr_format', '%s: ')
>     let buf_nr_show = get(g:, 'airline#extensions#tabline#buffer_nr_show', 0)
>
>     let _ = buf_nr_show ? printf(buf_nr_format, a:bufnr) : ''
>     let _ .= substitute(a:buffer_name, '\\', '/', 'g')
>
>     if getbufvar(a:bufnr, '&modified') == 1
>       let _ .= g:airline_symbols.modified
28c44,71
<   endif
---
>     return _
>   endfunction
>   finish
> else
>   " Vim9 Script implementation
>   def airline#extensions#tabline#formatters#default#format(bufnr: number, buffers: list<number>): string
> 		var fnametruncate = get(g:, 'airline#extensions#tabline#fnametruncate', 0)
>     var fmod = get(g:, 'airline#extensions#tabline#fnamemod', ':~:.')
>     var result = ''
>
>     var name = bufname(bufnr)
>     if empty(name)
>       result = '[No Name]'
>     elseif name =~ 'term://'
>       # Neovim Terminal
>       result = substitute(name, '\(term:\)//.*:\(.*\)', '\1 \2', '')
>     else
>       if get(g:, 'airline#extensions#tabline#fnamecollapse', 1)
>          result = pathshorten(fnamemodify(name, fmod))
>       else
>          result = fnamemodify(name, fmod)
>       endif
>       if bufnr != bufnr('%') && fnametruncate && strlen(result) > fnametruncate
>         result = airline#util#strcharpart(result, 0, fnametruncate)
>       endif
>     endif
>     return airline#extensions#tabline#formatters#default#wrap_name(bufnr, result)
>   enddef
30,31c73,75
<   return airline#extensions#tabline#formatters#default#wrap_name(a:bufnr, _)
< endfunction
---
>   def airline#extensions#tabline#formatters#default#wrap_name(bufnr: number, buffer_name: string): string
>     var buf_nr_format = get(g:, 'airline#extensions#tabline#buffer_nr_format', '%s: ')
>     var buf_nr_show = get(g:, 'airline#extensions#tabline#buffer_nr_show', 0)
33,45c77,85
< function! airline#extensions#tabline#formatters#default#wrap_name(bufnr, buffer_name)
<   let buf_nr_format = get(g:, 'airline#extensions#tabline#buffer_nr_format', '%s: ')
<   let buf_nr_show = get(g:, 'airline#extensions#tabline#buffer_nr_show', 0)
<   let buf_modified_symbol = g:airline_symbols.modified
<
<   let _ = buf_nr_show ? printf(buf_nr_format, a:bufnr) : ''
<   let _ .= substitute(a:buffer_name, '\\', '/', 'g')
<
<   if getbufvar(a:bufnr, '&modified') == 1
<     let _ .= buf_modified_symbol
<   endif
<   return _
< endfunction
---
>     var result = buf_nr_show ? printf(buf_nr_format, bufnr) : ''
>     result ..= substitute(buffer_name, '\\', '/', 'g')
>
>     if getbufvar(bufnr, '&modified') == 1
>       result ..= g:airline_symbols.modified
>     endif
>     return result
>   enddef
> endif
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/formatters/default.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/formatters/default.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/formatters/default.vim'
--------------------------------
25c25,27
<   let s:current_bufnr = -1
---
>   if exists('#airline')
>     let s:current_bufnr = -1
>   endif
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/tabs.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/tabs.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/tabs.vim'
--------------------------------
10a11,14
>   if !exists('#airline')
>     " airline disabled
>     return
>   endif
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/buflist.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/buflist.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/buflist.vim'
--------------------------------
47c47
<         autocmd BufEnter  * let g:xtabline_changing_buffer = 0
---
>         autocmd BufEnter  * if exists('#airline') | let g:xtabline_changing_buffer = 0 | endif
182a183,186
>     if !exists('#airline')
>       " airline disabled
>       return
>     endif
353a358,361
>     if !exists('#airline')
>       " airline disabled
>       return
>     endif
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/xtabline.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/xtabline.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/xtabline.vim'
--------------------------------
33c33
<         autocmd TabEnter  * call <sid>show_tabline(s:tab_min_count, tabpagenr('$'))
---
>         autocmd TabNew,TabClosed  * call <sid>show_tabline(s:tab_min_count, tabpagenr('$'))
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/autoshow.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/autoshow.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/autoshow.vim'
--------------------------------
26a27,29
>   if !exists('#airline')
>     return
>   endif
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/ctrlspace.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/ctrlspace.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/ctrlspace.vim'
--------------------------------
27,28c27,30
<   let s:current_bufnr = -1
<   let s:current_tabnr = -1
---
>   if exists('#airline')
>     let s:current_bufnr = -1
>     let s:current_tabnr = -1
>   endif
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/tabws.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/tabws.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/tabline/tabws.vim'
--------------------------------
41c41
<     let lnum = printf('(L%d)', (info.lnums)[0])
---
>     let lnum = printf('(L%d)', (info.lnums)[is_err ? 0 : 1])
50a51,54
> function! airline#extensions#coc#get_current_function() abort
>   return get(b:, 'coc_current_function', '')
> endfunction
>
54a59
>   call airline#parts#define_function('coc_current_function', 'airline#extensions#coc#get_current_function')
 -- auto-sync.sh --> Updating /home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/coc.vim
'/home/boret/.vim/bundle/vim-airline/autoload/airline/extensions/coc.vim' -> '/home/boret/src/scripts-config-dotfiles/.vim/bundle/vim-airline/autoload/airline/extensions/coc.vim'
--------------------------------
2c2
< " vim: et ts=2 sts=2 sw=2
---
> " vim: et ts=2 sts=2 sw=2 et
12a13,16
> let s:current_tabcnt = -1
>
> " Dictionary functions are not possible in Vim9 Script,
> " so use the legacy Vim Script implementation
15c19
<   if has('gui_running')
---
>   if has('gui_running') && match(&guioptions, 'e') > -1
26,34c30,33
< function! s:toggle_off()
<   call airline#extensions#tabline#autoshow#off()
<   call airline#extensions#tabline#tabs#off()
<   call airline#extensions#tabline#buffers#off()
<   if s:ctrlspace
<     call airline#extensions#tabline#ctrlspace#off()
<   endif
<   if s:tabws
<     call airline#extensions#tabline#tabws#off()
---
> function! airline#extensions#tabline#add_label(dict, type, right)
>   if get(g:, 'airline#extensions#tabline#show_tab_type', 1)
>     call a:dict.add_section_spaced('airline_tablabel'. (a:right ? '_right' : ''),
>           \ get(g:, 'airline#extensions#tabline#'.a:type.'_label', a:type))
38,51c37,42
< function! s:toggle_on()
<   if get(g:, 'airline_statusline_ontop', 0)
<     call airline#extensions#tabline#enable()
<     let &tabline='%!airline#statusline('.winnr().')'
<     return
<   endif
<   call airline#extensions#tabline#autoshow#on()
<   call airline#extensions#tabline#tabs#on()
<   call airline#extensions#tabline#buffers#on()
<   if s:ctrlspace
<     call airline#extensions#tabline#ctrlspace#on()
<   endif
<   if s:tabws
<     call airline#extensions#tabline#tabws#on()
---
> function! airline#extensions#tabline#add_tab_label(dict)
>   let show_tab_count = get(g:, 'airline#extensions#tabline#show_tab_count', 1)
>   if show_tab_count == 2
>     call a:dict.add_section_spaced('airline_tabmod', printf('%s %d/%d', "tab", tabpagenr(), tabpagenr('$')))
>   elseif show_tab_count == 1 && tabpagenr('$') > 1
>     call a:dict.add_section_spaced('airline_tabmod', printf('%s %d/%d', "tab", tabpagenr(), tabpagenr('$')))
53,54d43
<
<   set tabline=%!airline#extensions#tabline#get()
57,77d45
< function! s:update_tabline(forceit)
<   if get(g:, 'airline#extensions#tabline#disable_refresh', 0)
<     return
<   endif
<   " loading a session file
<   " On SessionLoadPost, g:SessionLoad variable is still set :/
<   if !a:forceit && get(g:, 'SessionLoad', 0)
<     return
<   endif
<   let match = expand('<afile>')
<   if pumvisible()
<     return
<   elseif !get(g:, 'airline#extensions#tabline#enabled', 0)
<     return
<   " return, if buffer matches ignore pattern or is directory (netrw)
<   elseif empty(match) || airline#util#ignore_buf(match) || isdirectory(match)
<     return
<   endif
<   call airline#util#doautocmd('BufMRUChange')
<   call airline#extensions#tabline#redraw()
< endfunction
79,90c47
< function! airline#extensions#tabline#redraw()
<   " sometimes, the tabline is not correctly updated see #1580
<   " so force redraw here
<   if exists(":redrawtabline") == 2
<     redrawtabline
<   else
<   " Have to set a property equal to itself to get airline to re-eval.
<   " Setting `let &tabline=&tabline` destroys the cursor position so we
<   " need something less invasive.
<     let &ro = &ro
<   endif
< endfunction
---
> if !exists(":def") || !airline#util#has_vim9_script()
92,96c49
< function! airline#extensions#tabline#enable()
<   if &lines > 3
<     set showtabline=2
<   endif
< endfunction
---
>   " Legacy Vim Script Implementation
98,145c51,61
< function! airline#extensions#tabline#load_theme(palette)
<   if pumvisible()
<     return
<   endif
<   let colors    = get(a:palette, 'tabline', {})
<   let tablabel  = get(colors, 'airline_tablabel', a:palette.normal.airline_b)
<   " Theme for tabs on the left
<   let tab     = get(colors, 'airline_tab', a:palette.inactive.airline_c)
<   let tabsel  = get(colors, 'airline_tabsel', a:palette.normal.airline_a)
<   let tabtype = get(colors, 'airline_tabtype', a:palette.visual.airline_a)
<   let tabfill = get(colors, 'airline_tabfill', a:palette.normal.airline_c)
<   let tabmod  = get(colors, 'airline_tabmod', a:palette.insert.airline_a)
<   let tabhi…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

When opening a file Nerdtree disappear (only if i open the file with enter)
1 participant