Прекарайте Emacs-w3m през собствената му SOCKS обвивка
Дайте на външния процес w3m отделен маршрут през Proxychains, без да обвивате цялата сесия на Emacs.
Emacs-w3m стартира външен изпълним файл w3m. В Linux това е удобно място да приложите SOCKS маршрут само към този браузър.
При вече налична настройка на Proxychains-NG и динамично свързан w3m изпълнимата обвивка може да съдържа:
#!/bin/sh
exec proxychains4 -f "$HOME/.config/proxychains/w3m.conf" /usr/bin/w3m "$@"
Използвайте действителния път до w3m и подайте посочената конфигурация на Proxychains. Пример с един прокси изглежда така:
strict_chain
proxy_dns
[ProxyList]
socks5 127.0.0.1 1080
Примерът предполага, че на този локален порт вече слуша SOCKS5. Направете обвивката изпълнима и я изберете, преди да заредите emacs-w3m:
(setq w3m-command
(expand-file-name "~/.local/bin/w3m-via-proxy"))
Рестартирайте Emacs след промяната на командата, ако следвате модела за инициализация от ръководството. Заключеното в кавички "$@" запазва границите на аргументите, подадени от emacs-w3m, а exec оставя стартирания процес като обвития браузър.
Този маршрут засяга прихващаемите TCP връзки на външния процес. Той не променя EWW, библиотеката за URL или несвързани изтегляния на пакети за Emacs. Изпълним файл w3m, който не може да зареди библиотеката на Proxychains, се нуждае от друг поддържан метод за маршрутизиране.