1
0
forked from aniani/vim

patch 8.2.4838: checking for absolute path is not trivial

Problem:    Checking for absolute path is not trivial.
Solution:   Add isabsolutepath(). (closes #10303)
This commit is contained in:
LemonBoy
2022-04-28 15:26:33 +01:00
committed by Bram Moolenaar
parent 68a573ce2b
commit dca1d40cd0
7 changed files with 55 additions and 0 deletions

View File

@@ -295,6 +295,7 @@ inputsecret({prompt} [, {text}]) String like input() but hiding the text
insert({object}, {item} [, {idx}]) List insert {item} in {object} [before {idx}]
interrupt() none interrupt script execution
invert({expr}) Number bitwise invert
isabsolutepath({path}) Number |TRUE| if {path} is an absolute path
isdirectory({directory}) Number |TRUE| if {directory} is a directory
isinf({expr}) Number determine if {expr} is infinity value
(positive or negative)
@@ -4672,6 +4673,24 @@ invert({expr}) *invert()*
< Can also be used as a |method|: >
:let bits = bits->invert()
isabsolutepath({directory}) *isabsolutepath()*
The result is a Number, which is |TRUE| when {path} is an
absolute path.
< On Unix, a path is considered absolute when it starts with '/'.
On MS-Windows, it is considered absolute when it starts with an
optional drive prefix and is followed by a '\' or '/'. UNC paths
are always absolute.
Example: >
echo isabsolutepath('/usr/share/') " 1
echo isabsolutepath('./foobar') " 0
echo isabsolutepath('C:\Windows') " 1
echo isabsolutepath('foobar') " 0
echo isabsolutepath('\\remote\file') " 1
Can also be used as a |method|: >
GetName()->isabsolutepath()
isdirectory({directory}) *isdirectory()*
The result is a Number, which is |TRUE| when a directory
with the name {directory} exists. If {directory} doesn't

View File

@@ -904,6 +904,7 @@ System functions and manipulation of files:
getfperm() get the permissions of a file
setfperm() set the permissions of a file
getftype() get the kind of a file
isabsolutepath() check if a path is absolute
isdirectory() check if a directory exists
getfsize() get the size of a file
getcwd() get the current working directory