Przekieruj Emacs-w3m przez jego własny wrapper SOCKS
Daj zewnętrznemu procesowi w3m osobną trasę Proxychains bez opakowywania całej sesji Emacs.
Emacs-w3m uruchamia zewnętrzny plik wykonywalny w3m. W Linuxie daje to wygodne miejsce, by zastosować trasę SOCKS tylko do tej przeglądarki.
W istniejącej konfiguracji Proxychains-NG i dynamicznie linkowanego w3m wykonywalny wrapper może zawierać:
#!/bin/sh
exec proxychains4 -f "$HOME/.config/proxychains/w3m.conf" /usr/bin/w3m "$@"
Użyj rzeczywistej ścieżki w3m i podaj nazwaną konfigurację Proxychains. Przykład z jednym proxy ma taki kształt:
strict_chain
proxy_dns
[ProxyList]
socks5 127.0.0.1 1080
Przykład zakłada, że na tym lokalnym porcie działa już nasłuch SOCKS5. Uczyń wrapper wykonywalnym i wybierz go przed wczytaniem emacs-w3m:
(setq w3m-command
(expand-file-name "~/.local/bin/w3m-via-proxy"))
Jeśli podążasz za modelem inicjalizacji z podręcznika, po zmianie polecenia uruchom Emacs ponownie. "$@" w cudzysłowie zachowuje granice argumentów przekazywanych przez emacs-w3m, a exec pozostawia uruchomiony proces jako opakowaną przeglądarkę.
Ta trasa dotyczy przechwytywalnych połączeń TCP procesu zewnętrznego. Nie zmienia EWW, biblioteki URL ani niezwiązanych pobrań pakietów Emacs. Plik binarny w3m, który nie potrafi wczytać biblioteki Proxychains, wymaga innej obsługiwanej metody routingu.