현재 Chrome은 앞치마를 머리 위로 던지고 Firefox를 호출하여 rtorrent와의 링크를 엽니 다. Firefox 단계를 제거하려면 어떻게해야합니까?
/usr/bin/xdg-open
" 토렌트 자석 링크는 새 창을 열지 만 전송은하지 않습니다 "라는 답변에 제안 된대로 패치를함으로써 문제를 해결했습니다 .
현재 Chrome은 앞치마를 머리 위로 던지고 Firefox를 호출하여 rtorrent와의 링크를 엽니 다. Firefox 단계를 제거하려면 어떻게해야합니까?
/usr/bin/xdg-open
" 토렌트 자석 링크는 새 창을 열지 만 전송은하지 않습니다 "라는 답변에 제안 된대로 패치를함으로써 문제를 해결했습니다 .
답변:
Chrome (또는 Chromium) 프로토콜 처리는 Firefox와 다르게 작동합니다. Firefox는 기본적으로 그 자체를 모두 추적 하므로 환경 설정 의 응용 프로그램 부분 에서 자석 처리와 같은 프로토콜 처리를 구성 할 수 있습니다 . 그러나 Chrome은에 의존합니다 xdg-open
.
xdg-open
자석 링크를 올바르게 처리 하려면 몇 가지 작업을 수행해야합니다 .
자석 링크를 처리하려는 프로그램의 데스크탑 파일 이름을 찾으십시오. 프로그램이 Transmission이라고 가정 해 봅시다. 그것은 (평소와 같이) 데스크탑 파일을 가지고 있으며 /usr/share/applications/
실제로 디렉토리 목록을 숙독하여 전송 버전이 실제로 gtk 버전이라는 것을 알았습니다. 따라서 데스크탑 파일이 호출 transmission-gtk.desktop
됩니다.
데스크탑 파일이 엉망 일 수 있습니다. 따라서 다음 /usr/share/applications/transmission-gtk.desktop
줄 이 포함되어 있는지 확인할 수 있습니다.
Exec=transmission-gtk %U
[some lines omitted]
MimeType=application/x-bittorrent;x-scheme-handler/magnet;
%U
실행 줄에 유의하십시오 . 절대적으로 필요합니다. MimeType 줄은 위와 같아야합니다.
이제 xdg-open
Transmission을 사용하여 자석 링크를 열어야 하는 필수 단계 입니다. 터미널에 다음을 입력하십시오.
xdg-mime default transmission-gtk.desktop x-scheme-handler/magnet
( Gnome, KDE, Xfce 또는 LXDE를 사용하는 경우 단계는 필요하지 않습니다. ) 마지막으로 xdg-open
표준 데스크탑 환경 중 하나 인 gnome, kde, xfce 및 lxde를 실행한다고 가정합니다. 그렇지 않으면 xdg-open
자석 링크에서 작동하지 않습니다. 아치 위키 에서 제안한 대로 간단하게 수정할 수 있습니다 /usr/bin/xdg-open
. 파일의 끝에 다음으로 시작하는 부분이 있습니다.
detectDE
if [ x"$DE" = x"" ]; then
DE=generic
변경 generic
중 하나로 gnome
, kde
, xfce
, 또는 lxde
. xfce
실제로 구성하고 가끔 사용하는 Xfce 세션이 있기 때문에 선택했습니다 .
이 방법의 단점 xdg-open
은 업데이트를 받으면 다시 실행해야한다는 것입니다. 아치 위키는이 결함을 피하는 또 다른 접근 방법을 제안합니다 (그러나 자체 단점이 있음).
경고 : 마지막 단계에서 선택하는 것이 생각보다 중요합니다. 피킹이 효과 lxde
가 없었습니다! 에서 xdg-open
, 도우미 기능 open_lxde
에 의존 pcmanfm
(LXDE 파일 관리자) 뭔가는 코드 중 하나에 문제가 있습니다 open_lxde
또는 아마도 그건 pcmanfm
'의 고장.
xdg-mime default deluge.desktop x-scheme-handler/magnet
Deluge와 연결하려고했습니다.
mate
(나는 MATE를 실행하기 때문에 내가 기대 한 것이다) 작동하지 않았다,하지만 gnome
했다.
마그넷 링크를 Transmission 창으로 드래그하면 아무런 조정없이 잘 작동합니다 .... Lubuntu 12.10의 스톡 빌드를 사용하고 있습니다.
xfce를 사용하고 아무것도 엉망으로 만들고 싶지 않으면 내 솔루션을 사용할 수 있습니다. 다음과 같이 xdg-open을 수동으로 편집하여 수정했습니다.
우선 (xdg-mime과 함께 앞에서 설명한 것처럼) mime이 연결되어 있는지 확인하십시오.
그런 다음 xdg-open을 루트로 백업하십시오 (해당되는 경우 스도)
# cp /usr/bin/xdg-open /usr/bin/xdg-open.old
마지막으로 root / usr / bin / xdg-open으로 편집하고 open_xfce ()를 찾은 다음 +로 표시된 줄을 추가하십시오 (예 : nano)
# nano /usr/bin/xdg-open
open_xfce()
+ if [ "\`echo $1 | sed -n 's/\(^[[:alnum:]+\.-]*\):.*$/\1/p'\`" == "magnet" ]; then
+ gnome-open "$1"
+ else
exo-open "$1"
+ fi
자석 링크에 대한 예외 만 추가하므로 exo-open 대신 gnome-open으로 열립니다.
도움이 되길 바랍니다.
내가 찾은 다른 제안 중 어느 것도 나를 위해 일하지 않았지만 Debian / Xfce ( http://fluxcode.net/archives/57 ) 에서 트릭을 수행했습니다 .
/ usr / bin / xdg-open에서 open_xfce ()에 다음 줄을 추가하십시오.
open_xfce()
{
if(echo "$1" | grep -q '^magnet:'); then
transmission-gtk "$1"
if [ $? -eq 0 ]; then
exit_success
fi
fi
exo-open "$1"
alt.os.linux.slackware의 한 사람이 해결책을 찾았습니다.
http://www.void.gr/kargig/blog/2012/01/24/open-magnet-urls-with-xdg-open/
나는 불행히도 나를 위해 일하지 않은 몇 가지 대답을 섞어 매력처럼 작동하게하는 것을 생각해 냈습니다! 어쨌든 XFCE 하에서 Linux Mint 16에서 작동했습니다.
/ usr / bin에서 xdg-open을 백업하고 sudo로 xdg-open을 연 다음 open_xfce () 함수를 다음과 같이 정확하게 만듭니다.
open_xfce()
{
if (echo "$1" | grep -q '^magnet:'); then
gnome-open "$1"
else
exo-open "$1"
fi
}
지저분하고 xdg-open 업데이트마다 편집해야하지만 작동합니다!
몇 년 동안이 문제를 해결하고 Chrome으로 전환하려고했지만 아무것도 작동하지 않는 것 같습니다. 나는 왜 내가 이전에 생각하지 않았고 잘 작동하는지 잘 모르겠다. 나는 민트에서 Tixati를 사용하고 있지만 보편적으로 작동해야합니다. 크롬 포인트 자석 링크 usr / bin / transmission-gtk 그래서 이름을 transmission-gtk.old로 변경하고 tixati를 transmission-gtk로 이름을 바꾸고 크롬에서 옵션을 선택하여 항상이 작업을 수행하고 시작 응용 프로그램을 실행하면 이제 mag 링크가 바로 연결됩니다. Firefox처럼 Tixati. 마침내 문제가 해결되었습니다!
google-chrome -version