From f29c1c6aa3f365c025890fab5fb9efbe88eb1761 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Mon, 10 Sep 2018 21:05:02 +0200 Subject: patch 8.1.0362: cannot get the script line number when executing a function Problem: Cannot get the script line number when executing a function. Solution: Store the line number besides the script ID. (Ozaki Kiichi, closes #3362) Also display the line number with ":verbose set". --- runtime/doc/cmdline.txt | 27 ++++++++++++++++----------- runtime/doc/eval.txt | 6 +++++- 2 files changed, 21 insertions(+), 12 deletions(-) (limited to 'runtime') diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt index df18ec6c45..3b2dd32060 100644 --- a/runtime/doc/cmdline.txt +++ b/runtime/doc/cmdline.txt @@ -832,11 +832,12 @@ it, no matter how many backslashes. \\# \# Also see |`=|. - *:* *:* *:* ** - *:* ** *:* ** - *:* ** *:* ** - *:* ** - ** *E495* *E496* *E497* *E499* *E500* + *:* ** *:* ** + *:* ** *:* ** + *:* ** *:* ** + *:* ** + *:* ** *:* ** + *:* ** *E499* *E500* Note: these are typed literally, they are not special keys! is replaced with the word under the cursor (like |star|) is replaced with the WORD under the cursor (see |WORD|) @@ -849,15 +850,16 @@ Note: these are typed literally, they are not special keys! |gf| uses) When executing autocommands, is replaced with the file name of the buffer being manipulated, or the file for a read or - write. + write. *E495* When executing autocommands, is replaced with the currently effective buffer number (for ":r file" and ":so file" it is the current buffer, the file being read/sourced is not in a - buffer). + buffer). *E496* When executing autocommands, is replaced with the match for - which this autocommand was executed. It differs from - only when the file name isn't used to match with - (for FileType, Syntax and SpellFileMissing events). + which this autocommand was executed. *E497* + It differs from only when the file name isn't used + to match with (for FileType, Syntax and SpellFileMissing + events). When executing a ":source" command, is replaced with the file name of the sourced file. *E498* When executing a function, is replaced with: @@ -867,9 +869,12 @@ Note: these are typed literally, they are not special keys! Note that filename-modifiers are useless when is used inside a function. When executing a ":source" command, is replaced with the - line number. *E842* + line number. *E842* When executing a function it's the line number relative to the start of the function. + When executing a script, is replaced with the line number. + It differs from in that is replaced with + the script line number in any situation. *E961* *filename-modifiers* *:_%:* *::8* *::p* *::.* *::~* *::h* *::t* *::r* *::e* *::s* *::gs* *::S* diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index 21cb4abade..2ff124b691 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -3798,7 +3798,10 @@ expand({expr} [, {nosuf} [, {list}]]) *expand()* autocmd buffer number (as a String!) autocmd matched name sourced script file or function name - sourced script file line number + sourced script line number or function + line number + script file line number, also when in + a function word under the cursor WORD under the cursor the {clientid} of the last received @@ -5931,6 +5934,7 @@ maparg({name} [, {mode} [, {abbr} [, {dict}]]]) *maparg()* (|mapmode-ic|) "sid" The script local ID, used for mappings (||). + "lnum" The line number in "sid", zero if unknown. "nowait" Do not wait for other, longer mappings. (|:map-|). -- cgit v1.2.3