Add "whereis" command to xmllint shell

When playing with xpath in the xmllint shell, it's really handy to be
able to ask where the returned nodes live in the tree, in the same
way "pwd" asks where the current node lives.

The feature is actually quite easy to implement by combining the
functionality of the existing dir/ls and pwd commands (see proposed patch).

Example usage:

/ > whereis //last_name
/clinical_study/overall_official/last_name
/clinical_study/location/contact/last_name
/clinical_study/location/investigator/last_name
1 file changed
tree: ba2af8ff305ac3ed5034f38eb0fe456db3c7c013
  1. bakefile/
  2. doc/
  3. example/
  4. include/
  5. macos/
  6. optim/
  7. python/
  8. result/
  9. test/
  10. vms/
  11. VxWorks/
  12. win32/
  13. xstc/
  14. .cvsignore
  15. .gitignore
  16. acinclude.m4
  17. AUTHORS
  18. autogen.sh
  19. build_glob.py
  20. c14n.c
  21. catalog.c
  22. ChangeLog
  23. check-relaxng-test-suite.py
  24. check-relaxng-test-suite2.py
  25. check-xinclude-test-suite.py
  26. check-xml-test-suite.py
  27. check-xsddata-test-suite.py
  28. chvalid.c
  29. chvalid.def
  30. configure.in
  31. Copyright
  32. dbgen.pl
  33. dbgenattr.pl
  34. debugXML.c
  35. dict.c
  36. DOCBparser.c
  37. elfgcchack.h
  38. encoding.c
  39. entities.c
  40. error.c
  41. genChRanges.py
  42. gentest.py
  43. genUnicode.py
  44. global.data
  45. globals.c
  46. HACKING
  47. hash.c
  48. HTMLparser.c
  49. HTMLtree.c
  50. INSTALL.libxml2
  51. legacy.c
  52. libxml-2.0-uninstalled.pc.in
  53. libxml-2.0.pc.in
  54. libxml.3
  55. libxml.h
  56. libxml.m4
  57. libxml.spec.in
  58. libxml2.doap
  59. libxml2.syms
  60. list.c
  61. MAINTAINERS
  62. Makefile.am
  63. Makefile.tests
  64. Makefile.win
  65. nanoftp.c
  66. nanohttp.c
  67. NEWS
  68. parser.c
  69. parserInternals.c
  70. pattern.c
  71. README
  72. README.cvs-commits
  73. README.tests
  74. regressions.py
  75. regressions.xml
  76. relaxng.c
  77. rngparser.c
  78. runsuite.c
  79. runtest.c
  80. runxmlconf.c
  81. SAX.c
  82. SAX2.c
  83. schematron.c
  84. testapi.c
  85. testAutomata.c
  86. testC14N.c
  87. testchar.c
  88. testdict.c
  89. testdso.c
  90. testHTML.c
  91. testModule.c
  92. testOOM.c
  93. testOOMlib.c
  94. testOOMlib.h
  95. testReader.c
  96. testrecurse.c
  97. testRegexp.c
  98. testRelax.c
  99. testSAX.c
  100. testSchemas.c
  101. testThreads.c
  102. testThreadsWin32.c
  103. testURI.c
  104. testXPath.c
  105. threads.c
  106. TODO
  107. TODO_SCHEMAS
  108. tree.c
  109. trio.c
  110. trio.h
  111. triodef.h
  112. trionan.c
  113. trionan.h
  114. triop.h
  115. triostr.c
  116. triostr.h
  117. uri.c
  118. valid.c
  119. xinclude.c
  120. xlink.c
  121. xml2-config.1
  122. xml2-config.in
  123. xml2Conf.sh.in
  124. xmlcatalog.c
  125. xmlIO.c
  126. xmllint.c
  127. xmlmemory.c
  128. xmlmodule.c
  129. xmlreader.c
  130. xmlregexp.c
  131. xmlsave.c
  132. xmlschemas.c
  133. xmlschemastypes.c
  134. xmlstring.c
  135. xmlunicode.c
  136. xmlwriter.c
  137. xpath.c
  138. xpointer.c
  139. xzlib.c
  140. xzlib.h