1
0
forked from aniani/vim

patch 9.0.0253: a symlink to an autoload script results in two entries

Problem:    A symlink to an autoload script results in two entries in the list
            of scripts, items expected in one are actually in the other.
Solution:   Have one script item refer to the actually sourced one.
            (closes #10960)
This commit is contained in:
Bram Moolenaar
2022-08-24 16:30:36 +01:00
parent f5240b96f7
commit 753885b6c5
11 changed files with 124 additions and 21 deletions

View File

@@ -253,7 +253,7 @@ getreg([{regname} [, 1 [, {list}]]])
String or List contents of a register
getreginfo([{regname}]) Dict information about a register
getregtype([{regname}]) String type of a register
getscriptinfo() List list of sourced scripts
getscriptinfo() List list of sourced scripts
gettabinfo([{expr}]) List list of tab pages
gettabvar({nr}, {varname} [, {def}])
any variable {varname} in tab {nr} or {def}
@@ -4089,17 +4089,20 @@ getregtype([{regname}]) *getregtype()*
Can also be used as a |method|: >
GetRegname()->getregtype()
getscriptinfo() *getscriptinfo()*
getscriptinfo() *getscriptinfo()*
Returns a |List| with information about all the sourced Vim
scripts in the order they were sourced. (|:scriptinfo|)
scripts in the order they were sourced, like what
`:scriptnames` shows.
Each item in the returned List is a |Dict| with the following
items:
autoload set to TRUE for a script that was used with
|import autoload| but was not actually sourced
yet.
`import autoload` but was not actually sourced
yet (see |import-autoload|).
name vim script file name.
sid script ID |<SID>|.
sourced if this script is an alias this is the script
ID of the actually sourced script, otherwise zero
gettabinfo([{tabnr}]) *gettabinfo()*
If {tabnr} is not specified, then information about all the

View File

@@ -417,6 +417,10 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
For a script that was used with `import autoload` but
was not actually sourced yet an "A" is shown after the
script ID.
For a script that was referred to by one name but
after resolving symbolic links got sourced with
another name the other script is after "->". E.g.
"20->22" means script 20 was sourced as script 22.
{not available when compiled without the |+eval|
feature}