Truyền các liên kết được nhấp trong rxvt vào tập lệnh


7

Tôi bắt đầu trình duyệt của mình vimprobable trong tab như vậy:

"`tabbed -d > /tmp/tabbed.xid`; vimprobable2 -e `cat /tmp/tabbed.xid`" [1][1]

Sau đó, tôi có thể gửi tất cả các phiên bản mới của vimprobable tới tab (và không có cửa sổ chính mới mở), trong các ứng dụng khác, ví dụ: mutt, bởi:

vimprobable2 -e $(cat /tmp/tabbed.xid) %s

Tôi muốn đạt được điều tương tự trong Urxvt.

Hiện tại của tôi .Xdefaultscó chứa các đối số phù hợp:

URxvt.perl-ext-common: default,matcher
URxvt.urlLauncher: vimprobable2
URxvt.matcher.button: 1

Tôi đã thay đổi dòng launcher để trỏ đến một tập lệnh bao bọc:

URxvt.urlLauncher: vimprobtab.sh

Đó chỉ là:

vimprobable2 -e $(cat /tmp/tabbed.xid) %s &

nhưng điều này chỉ mở một phiên bản trình duyệt theo tab với kết quả của công cụ tìm kiếm mặc định cho &(hoặc %snếu tôi loại bỏ ký hiệu).

Tôi đã thử với các biến rõ ràng khác, như "$1""$@"- chúng cũng không hoạt động.

Làm cách nào để chuyển URL sang tập lệnh bao bọc?

[1] Điều này cũng cảm thấy giống như việc sử dụng mèo vô dụng , vì vậy những đề xuất thay thế sẽ được hoan nghênh

Câu trả lời:


5

Các văn bản trợ giúp cho các khớp mở rộng PERL để urxvt trạng thái:

Khi được nhấp bằng nút chuột được chỉ định trong matcher.button tài nguyên (mặc định 2 hoặc giữa), chương trình được chỉ định trong matcher.launchertài nguyên (mặc định, urlLaunchertài nguyên sensible-browser) sẽ được bắt đầu với văn bản phù hợp làm đối số đầu tiên.

do đó, bạn cần phải đặt URxvt.matcher.launcherthành một tập lệnh có một đối số duy nhất (trong shell sh-type, đây là chính tả $1) và mở nó. Ví dụ:

#! /bin/sh

exec vimprobable2 -e $(cat /tmp/tabbed.xid) "$1"

Lưu ý: Đó là khuyến khích để trích dẫn những $1lý lẽ để ngăn chặn vỏ từ giải thích meta-nhân vật có thể xuất hiện trong URL (ví dụ, &hoặc ;).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.