'Open With'노틸러스 대화에서 중복 항목을 제거하는 방법은 무엇입니까?


14

이 눈꺼풀을 제거하는 데 도움이되는 마술 버튼이 표시되는 것이 좋을 것입니다.

대체 텍스트

데비안 의 노틸러스 2.30 입니다 (그리고 내가 기억할 수있는 한 이전 버전에있었습니다).

답변:


9

이 목록은 다음 위치에있는 .desktop 파일을 분석하여 생성됩니다.

/usr/share/applications
~/.local/share/applications

응용 프로그램 당 둘 이상의 사용 사례가있을 수 있습니다. 예를 들어 banshee기본적으로 3 개의 .desktop 파일이 있는 미디어 플레이어를 예로들 수 있습니다 .

$ ls -1 /usr/share/applications/banshee*
/usr/share/applications/banshee-1-audiocd.desktop
/usr/share/applications/banshee-1.desktop
/usr/share/applications/banshee-1-media-player.desktop

이 파일들 간의 유일한 차이점은 시작 매개 변수와 MimeType 목록입니다.

  • banshee-1.desktop: 일반 미디어 파일
  • banshee-1-audiocd.desktop: 오디오 CD
  • banshee-1-media-player.desktop오디오 플레이어 (또한 의해 사용 rhythmbox, vlc및 기타)

따라서 'Open with'목록과 'Main Menu'에 3 개의 'Banshee Media Player'가 있습니다.

이 공간을 채우는 다른 방법은에 개인 .desktop 파일을 만드는 것입니다 ~/.local/share/applications. 수동으로 또는 도구를 사용하여. alacarte(또는 '주 메뉴'-> '메뉴 편집'을 마우스 오른쪽 버튼으로 클릭)는 그 중 하나입니다.

응용 프로그램을 만들거나 이동할 때마다 alacarte새 .desktop 파일이 내부에 배치됩니다 ~/.local/share/applications. 응용 프로그램을 비활성화하면 '기본 메뉴'에서 '제거'되지만 '연결 프로그램'목록에서는 제거되지 않습니다.
그러나 '삭제'버튼에서 동일한 복사본을 생성하여,하지 /usr/share/applications~/.local/share/applications하고 추가 Hidden=true따라서 시스템 전체의 유전 값을 "덮어 쓰기"는 파일의 .desktop.

해당 항목 중 두 항목을 삭제 alacarte하면

$ ls -1 ~/.local/share/applications/banshee*
/home/user/.local/share/applications/banshee-1-audiocd.desktop
/home/user/.local/share/applications/banshee-1-media-player.desktop

에서 항목을 제거 ~/.local/share/applications하면 기존 상태 (세 banshee항목)로 되돌아 갑니다.

이 두 폴더에 복제본이없는 경우 해당 .desktop 파일에서 복제본을 제거 alacarte하거나 Hidden=true해당 옵션을 사용하여 재생 해보십시오 .


7

당신은에서 보면 ~/.local/share/applications그리고 /usr/share/applications당신은 그 두 곳에서 중복을 제거 할 수 있습니다. 그것은 나를 위해 그것을했다.


난 단지 가지고 주 jhbuild.desktopmimeapps.list에서 / 응용 프로그램을 ~ / .local의 / 공유를 . 그리고 / usr / share / applications에 듀프가 없으며 여전히 문제가 발생합니다.
tshepang

2

나는이 실이 오래되었다는 것을 알고 있지만 이것은 많은 사람들에게 와인으로 인해 발생합니다.

rm ~/.local/share/applications/wine-extension*

나를 위해이 혼란을 정리했습니다.


1

이 스레드가 오래되었다는 것을 인정 하면서이 문제로 인해 당황했습니다. 나는 개인적으로 파일을 삭제하거나 "정리"를하는 것이 불필요하다고 느꼈다. 단지 현재 사용자를 위해 물건을 조정하는 것과 같다. .desktop 파일이 두 개 이상인 경우 각각 고유 한 설명을 가질 수 없습니까? 리눅스가 등장하는 한, 특정 앱 개발자들이 이와 같은 간단한 것을 간과 했습니까?

텍스트 편집기에서 .desktop 파일을 열면 이름 필드가 "연결 프로그램"메뉴에 표시됩니다. 그래서 필자는 문제를 일으키는 것으로 알고있는 .desktop 파일 (예 : 3 Banshee 파일)을 찾았습니다. 각각을 보면, 그 차이는 거의 항상 지름길이 처리하는 mimetype과 관련이 있습니다. 일부 프로그램은 mimetype에 따라 다른 매개 변수를 전달하는 것을 선호하기 때문입니다. 하나의 인스턴스에서만 응용 프로그램 업그레이드 결과가 오래된 .desktop 파일을 정리하지 않아 중복 항목을 찾았습니다.

그 발견으로 무장 한 것으로 알려진 중복 항목 의 이름 필드를 변경 했습니다. 예를 들어 Banshee가 오디오 CD 를 처리하기 위해 .desktop 파일을 편집 하면 이름을 다음과 같이 읽었습니다.

밴시 (오디오 CD)

Rhythmbox도 CD의 + MP3 플레이어 를 처리하기위한 별도의 .desktop 파일을 가지고 있지만 각각 동일하게 표시 되므로 좋은 예 입니다. 내 생각에 1 파일은 응용 프로그램을로드하고 라이브러리가 아닌 장치에 초점을 둡니다. 따라서 MP3 / OGG 파일을 처리 할 때 이런 일이 발생하지 않도록하려면 이름을 바꿔야합니다.

어쨌든, 이것이 유용한 것으로 보이는 파일을 삭제하지 않고 연결 프로그램 메뉴를 깨끗하게 보이게합니다. 이러한 변경 사항이 응용 프로그램 업데이트간에 유지되는지 여부는 아직 표시되지 않았지만 스크립트로 작성 될 수있는 간단하고 빠른 편집입니다. 이 경우 쉘은 엄청나게 도움이됩니다. 예를 들어, 중복 항목이있는 모든 파일 이름 (경로 포함)을 보려면 :

grep -rl "^Name=Banshee$" /usr/share/applications

"Banshee"는 물론 Open With 메뉴에 두 번 이상 나타납니다. 위에 제공된 예제에서 앱을 Geany라고했습니다.

이를 통해 결과 파일을 편집기로 바로 보낼 수 있습니다. reg 표현식의 전문가가 아닌 경우 ^와 $는 각각 줄의 시작과 줄의 끝을 지정합니다. 이렇게하면 시스템이 다음과 같은 행을 찾지 XGnome-FullName=Banshee Media Player 못하게됩니다. 또한 이미 수정 한 항목을 찾지 못합니다.


0

어둠 속에서 촬영했지만, 항목 중 하나를 클릭하고 스크린 샷에서 볼 수 있듯이 제거 버튼을 클릭 해 보셨습니까? 이렇게하면 모든 항목이 제거되면 다시 추가하면됩니다.


0

Gnome의 "응용 프로그램"메뉴 편집기를보고 여기에서 복제본을 제거 할 수도 있습니다.


거기에서 복제본을 본 적이 있습니까?
tshepang

예. 일부 응용 프로그램은 geany와 같은 "열기"대화 상자에 나타나는 복제본을 생성하고 그놈의 응용 프로그램 메뉴 (편집되어 있지만 숨겨져 있음)를 편집하여 여기에서 제거 할 수 있습니다. 메뉴, 편집기에서만).
gentledevil
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.