templatefilters: add slashpath() to convert path separator to slash
authorYuya Nishihara <yuya@tcha.org>
Sat, 21 Oct 2017 17:19:02 +0900
changeset 35444 dad8a5071b0a
parent 35443 a8478b808f17
child 35445 b86f52426396
templatefilters: add slashpath() to convert path separator to slash Prepares for deprecating the ui.slash option, which isn't always respected.
mercurial/templatefilters.py
tests/test-locate.t
--- a/mercurial/templatefilters.py	Thu Dec 14 22:26:46 2017 +0900
+++ b/mercurial/templatefilters.py	Sat Oct 21 17:19:02 2017 +0900
@@ -349,6 +349,11 @@
     """Date. Returns a date like "2006-09-18"."""
     return util.shortdate(text)
 
+@templatefilter('slashpath')
+def slashpath(path):
+    """Any text. Replaces the native path separator with slash."""
+    return util.pconvert(path)
+
 @templatefilter('splitlines')
 def splitlines(text):
     """Any text. Split text into a list of lines."""
--- a/tests/test-locate.t	Thu Dec 14 22:26:46 2017 +0900
+++ b/tests/test-locate.t	Sat Oct 21 17:19:02 2017 +0900
@@ -151,4 +151,13 @@
   $ hg files .
   [1]
 
+Convert native path separator to slash (issue5572)
+
+  $ hg files -T '{path|slashpath}\n'
+  ../b
+  ../dir.h/foo
+  ../t.h
+  ../t/e.h
+  ../t/x
+
   $ cd ../..