On 23-Mar-13 20:21:58 +0100, Christian Brabandt wrote: > Hi Ingo! > > On Sa, 23 Mär 2013, Ingo Karkat wrote: > >> On 23-Mar-13 17:26:13 +0100, Bram Moolenaar wrote: >> >>> Christian Brabandt wrote: >>> >>>> On Sa, 23 Mär 2013, Marcin Szamotulski wrote: >>>> >>>>> Dear Vim_Dev, >>>>> >>>>> If one is in the directory of the current file '%:h:h' expands to '.', >>>>> while it should expand tas '%:p:h:h' does. This is probably is not very >>>>> useful case since using '../' is much simpler, though it might be used >>>>> in a plugin (I've never been hit by this though). Expansion of '%:h:h' >>>>> works fine when the current directory is not where the current file is. >>>>> >>>>> Another, similar issue is when the current file is: >>>>> /home/user/directory/file.txt >>>>> and the current directory is >>>>> /home/user >>>>> >>>>> Then both '%:h:h' and '%:h:h:h' expand to '.'. >>>> >>>> I think this patch fixes it. It does so, by noticing, whether *fnamep >>>> has been set to '.' and if so and we are still trying to resolve one >>>> level up, will resolve '.' to an absolute path. >>> >>> I don't really like this. If one wants to go above the current >>> directory you can use ":p". > > Indeed and I really don't mind here. Current version is ok for me.
Granted, it's a corner case, but why not make it more consistent? One trap less, one thing less to code around in plugins. >> Can't we change the patch so that it turns into the relative upwards >> move ".." (then "../..", etc.)?! This way, it stays relative, and one >> has to use :p to get absolute paths. > > You might end up with many ../../../../ and I don't think this help. It's certainly not nice to look at, but expand() will probably mostly be used in custom functions, anyway. I can imagine use cases where one wants to go programatically to a parent-parent-parent, and maybe stay in relative addressing (though I would prefer absolute addresses with :p then, too). -- regards, ingo -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
