我想在vimscript中爲任何路徑字符串(不一定是當前文件的路徑)執行與bash dirname
命令或python os.path.split()[0]
相同的操作。如何獲取路徑字符串的父目錄
樣品所需的行爲:
/a/b/
- >/a
/a/b
- >/a
我試圖fnamemodify()
但對我來說它的輸出似乎取決於是否存在或不顯示目錄:
:ec fnamemodify('/usr/idontexist', ':p:h')
給出:
/usr
這是很好的,但是:
:ec fnamemodify('/usr/bin', ':p:h')
給出:
/usr/bin
這不是我想要什麼,我無法弄清楚它是什麼這樣做。
我希望找到一個跨平臺的解決方案。
我認爲這不是我的問題的由來,但我反而問自己,無論如何,所以+1。多麼複雜的行爲... – 2013-05-10 16:14:25
t請回我的最後一條評論,這*是我的問題的主要原因!使用':p'不僅僅是因爲dir可能不存在,而是因爲使用':p:h'不能做我想要的。 ':p'刪除了'idontexist'部分,似乎做了我想要的東西,這些都屬於未定義的行爲,只會讓我感到困惑。 – 2013-05-11 05:33:09