Tôi không có câu trả lời cho các truy vấn XPath; lấy làm tiếc. Nhưng bạn có thể thử các phím tìm kiếm Icicles searchM-s M-s x
và M-s M-s X
(lệnh icicle-search-xml-element
và icicle-search-xml-element-text-node
).
Những điều này cho phép bạn tìm kiếm nội dung và các nút tương ứng của các phần tử XML cấp cao nhất có các tên phù hợp với regexp mà bạn cung cấp.
Đối icicle-search-xml-element
, có thể có bất kỳ những hình thức:
<ELEMENTNAME>...</ELEMENTNAME>
<ELEMENTNAME ATTRIBUTE1="..."...>...</ELEMENTNAME>
<ELEMENTNAME/>
<ELEMENTNAME ATTRIBUTE1="...".../>
Hoặc bạn có thể chọn để tìm kiếm, không phải là tìm kiếm các ngữ cảnh là được xác định bằng regexp tên phần tử, nhưng không phải ngữ cảnh, có nghĩa là, văn bản đệm nằm ngoài các phần tử như vậy. Để làm điều này, sử dụng `C-M- ~ ' trong khi hoàn thành. (Đây là nút chuyển và chỉ ảnh hưởng đến các lệnh tìm kiếm trong tương lai tương lai, không ảnh hưởng đến lệnh hiện tại.)
Đối với icicle-search-xml-element-text-node
, các yếu tố kết hợp cấp cao nhất không được có thuộc tính. Chỉ các thành phần cấp cao nhất của biểu mẫu <ELEMENTNAME>...</ELEMENTNAME>
mới là phù hợp.
HTH.
Tôi cũng vậy! Nếu tôi có thời gian, tôi sẽ cố gắng xem mã nxml, nếu có, có để chọn các kết quả XPath. Nếu mã như vậy tồn tại thì tôi sẽ mã hóa một [** Icicles ** search] (http: //www.emacswiki.org/emacs/Icicles _-_ Search_Commands% 2c_Overview) [multi-command] (http://www.emacswiki.org/Icicles_-_Multi-Commands/) để tìm kiếm các vùng như vậy. – Drew
@Drew greping cho xpath trong mã nxml không cho kết quả. Có một [xpath.el implementation] (http://www.emacswiki.org/emacs/xpath.el) nhưng tôi chưa có thời gian để kiểm tra nó. Nó yêu cầu dom.el hoạt động. – manu
Đúng, đó là chính xác những gì tôi tìm thấy khi tôi tìm kiếm hỗ trợ XPath và XQuery trong Emacs lần cuối. Quá tệ. Việc thực hiện hỗ trợ tốt cho những điều như vậy sẽ không nghi ngờ gì là không tầm thường, nhưng nó có thể thực sự hữu ích, IMO. (Ngay cả khi nó đòi hỏi một DOM.) Và có lẽ nó tồn tại (tôi thấy cùng một tài liệu tham khảo), nhưng tôi cũng không có thời gian để thực sự kiểm tra xem nó ra. – Drew