Сигурно в Убунту (и изобщо под Линукс) ви се е случвало да искате да асоциирате определени типове файлове с определена програма – примерно, искате всички видове файлове които досега са ви се отваряли с Eye of Gnome (стандартната програма за преглед на изображения в Убунту), да започнат да ви се отварят с друга програма – да речем GIMP. Стандартния начин е да направите настройката от Nautilus – като цъкнете с десния бутон върху конкретен файл, изберете „Свойства“, и от преградката „Отваряне с“ изберете програмата с която искате да се отваря.
Да обаче, това е доста неудобен начин ако искате да асоциирате всички gif,png,jpg,bmp,svg (и много други типове файлове) с друга програма, защото трябва да направите описаните по-горе действия поотделно за всеки един от тези видове файлове.

Затова ви представям поредната малка програмка създадена от мен – assoc-gtk.
Тя ще ви помогне с няколко цъквания да асоциирате множество типове файлове с избрана от вас програма.
За целта, първо я свалете от assoc-gtk-0.1.deb (9 КБ). След това цъкнете двойно върху файла, и го инсталирайте от бутона „Install package“:

След инсталация, програмата е достъпна от менюто „Програми“ -> „Системни инструменти“ -> „Настройки на файлови асоциации“:

Стартирайте програмата:

Сега, първото нещо което трябва да направите, е да изберете програмата с която ще асоциирате желаните от вас типове файлове (MIME-типове). По описания начин може да асоциирате само програми, за които има .desktop файл с описание. По стандарт, тези файлове се намират в /usr/share/applications/ (глобална директория), или в ~/.local/share/applications/ (само за вашия потребител). Няма да се спирам на това как да създадете собствен .desktop файл ако програмата не притежава такъв, защото обикновенно всички интерактивни програми имат такъв файл (всъщност, всички които виждате в менюто „Програми“ имат – менюто се генерира именно от тях). И така, изберете желаната програма (за примера, ще приемем че искаме да асоциираме файловете които досега са се отваряли с EoG с GIMP). За целта, цъкнете върху бутона за избор на файлове, под надписа „Избор на .desktop файл“:

От следващия прозорец, цъкнете двойно върху папката applications, от там изберете желания .desktop файл (в случая – gimp.desktop), и натиснете бутона „Отваряне“:

След като сте избрали желаната програма, трябва да изберете типовете файлове, които искате да се отварят автоматично с нея. Предвидил съм няколко начина да направите това – първият начин е просто да напишете ръчно MIME-типовете на файловете в полето под надписа „Типове файлове (MIME)“. Кофти, нали?
Другия начин е чрез избор на друг .desktop файл – така ще се прочетат типовете файлове които според него могат да се отварят с програмата описана вътре във файла, и ще се появят в полето „Типове файлове (MIME)“ (като ще презапишат всички въведени типове в списъка). Това се прави от средното бутонче до списъка.
Третият начин е чрез избор на файл от конкретния тип който искате да добавите в списъка – примерно, ако искате да добавите типа на JPG файловете, избирате произволен JPG файл, и неговият MIME тип ще се добави към полето. Това се прави от първото бутонче.
Третото бутонче просто изчиства въведените досега типове.

И така – в случая ще използваме втория начин – избор на друг .desktop файл. За целта цъкнете върху съответното бутонче (второто до списъка), от отворилият се диалогов прозорец за избор на файлове изберете .desktop файла от който искате да прочетете типовете, и натиснете бутона „Отваряне“:

Сега трябва единствено да натиснете бутона „Използване“:

Накрая ще ви се появи съобщение че всичко е готово, и в него с информативна цел ще видите и командата с която можете да свършите същата работа, но в конзолата:

Готово! Отсега нататък всички файлове които се отваряха с EoG ще се отварят с GIMP. Ако искате да върнете предишните настройки – просто повторете всичко, но в началото вместо да изберете файла gimp.desktop, изберете eog.desktop.

За тези от вас които проявяват любопитство, сорс кода също е достъпен. Програмата е писана на C, в работната среда Code::Blocks и използва GTK/Glade за интерфейса си. Може да го свалите от assoc-gtk-0.1.tar.gz (14 КБ). Вътре в архива има инструкции как да го комплирате и да създадете .deb пакет, който след това може да инсталирате.

Успех!