Контекстное меню ФМ nemo

Аватара пользователя

Автор темы
root
Сообщения: 647
Зарегистрирован: 16 фев 2017, 17:03
Решено: 3
Откуда: г. Хабаровск
Благодарил (а): 191 раз
Поблагодарили: 152 раза

Контекстное меню ФМ nemo

Сообщение root » 19 фев 2017, 06:29

Доброго времени суток. Хотел бы поделиться информацией о том, как создать контекстное меню (КМ) для файлового менеджера (ФМ) nemo. Когда я только начинал изучать GNU/Linux, в частности Linux Mint 18 Sarah Cinnamon, для меня эта тема стала краеугольным камнем, поскольку ее незнание напрямую сказывалось на удобстве пользования ОС. Простой пример: мне хотелось, как минимум, иметь возможность просканировать файл на вирусы без всяких ухищрений, просто выделив его и нажав соответствующую команду в КМ.

Что ж, это было небольшое вступление, теперь к сути. Файлы с расширением .nemo_action, используемые nemo в качестве файлов обработки КМ, лежат в папках ~/.local/share/nemo/actions и /usr/share/nemo/actions. Если хотите, чтобы добавленное вами КМ было доступно только для текущего пользователя, с которого вы сейчас работаете, то добро пожаловать в папку ~/.local/share/nemo/actions, иначе - /usr/share/nemo/actions, но в последнем случаи понадобится root права (которые несложно получить из контекстного меню nemo, выбрав пункт "открыть как root", или нажав alt+F2 и введя команду gksu nemo <путь до папки>).

Допустим, вы определились с тем, в какой папке вы будете проводить все манипуляции. Теперь мы создадим файл с названием *.nemo_action (где * - любая последовательность символов, если проще, то любое удобное для вас название) и откроем с помощью текстового редактора.

Вобьем следующий шаблон:
[Nemo Action]
#Active=false

Name=
Name[ru]=
Comment=
Comment[ru]=
Exec=
Selection=
Extensions= ;
#Mimetypes= ;
Quote=
Conditions= ;
Icon-Name=
#Dependencies= ;
#EscapeSpaces=true
Затем ознакомимся с более подробный вариантом шаблона (с описанием основных пунктов):
# Знак "#" используется для указания комментариев в коде. 
# В данном случаи, если перед Active его убрать, то .nemo_action не будет работать. 
# Данная команда используется, если, например, скрипт не работает, а вам лень его чинить именно сейчас
#Active=false

# Имя пункта отображаемого в меню (общий случай)
# ОБЯЗАТЕЛЬНЫЙ ПАРАМЕТР
Name=

# Имя пункта отображаемого в меню, если язык системы - русский
Name[ru]=

# Комментарий/подсказка, отображаемая в строке состояния (общий случай)
Comment=

# Комментарий/подсказка, отображаемая в строке состояния, если язык системы - русский
Comment[ru]=

# Путь до файла, который будет обрабатывать действие. 
# Для системных файлов, нах-ся в таких папках, как: /bin, /sbin, /usr/bin, /usr/sbin, как правило, 
# указывать полный путь необязательно, достаточно указать название исполняемого файла
# Для файла, находящегося прямо в папке с  .nemo_action, 
# достаточно указать его название, заключив в такие "кавычки" < >
# ОБЯЗАТЕЛЬНЫЙ ПАРАМЕТР
Exec=

# Способ выделения, при котором пункт будет отображаться в меню:
# "s" - [s]ingle (один), пункт будет отображаться, если выбран только 1 конкретный файл
# "m" - [m]ultiple (несколько), пункт будет отображаться, если выбрано исключительно несколько файлов
# "notnone" - (сочетание single+multiple), пункт будет отображаться, если выбран 1 ИЛИ несколько файлов
# "none" - (фоновый клик), пункт будет отображаться, если совершен только фоновый клик
# "any" - (любой)/(сочетание notnone+none), пункт будет отображаться в любом случаи
#  или просто число, обозначающее, сколько файлов должно быть выбрано, чтобы КМ появилось
# ОБЯЗАТЕЛЬНЫЙ ПАРАМЕТР
Selection=

# Расширение файлов, для которых пункт меню будет отображаться. 
# Одиночные опции, заканчивающиеся точкой с запятой
#     "dir" - для выбранной директории
#     "none" - для файлов без расширения
#     "nodirs" - для любого выбора, но не включая каталоги
#     "any" - для любого типа, включая каталоги
# Отдельные конкретные расширения могут завершать список точкой с запятой
# Расширения НЕ чувствительны к регистру.  jpg будет соответствовать JPG, jPg, jpg, и так далее...
# Этот массив разделяется и заканчивается ";"
# ОБЯЗАТЕЛЬНЫЙ ПАРАМЕТР Extensions или Mimetypes
Extensions= ;

# Какие mime-типы будут отображаться. Этот массив разделяется и заканчивается ";"
# Для архивов -> см. код файла /usr/share/nemo/actions/mount-archive.nemo_action
# Для изображений -> Mimetypes=image/*;
# В общем случаи -> https://goo.gl/0lRMni (ссылка на википедию, статья "Список MIME-типов") :-)
# Также можно использовать терминальную утилиту file, запущенную c параметром --mime-type
# для определения mime-типа какого-то конкретного файла
# Например, file /etc/fstab --mime-type | awk '{print $2}'
# ОБЯЗАТЕЛЬНЫЙ ПАРАМЕТР Extensions или Mimetypes
Mimetypes= ;

# "Ответ с цитированием"  - заключаем пути/URL-адреса в кавычки. 
# По желанию - по умолчанию без кавычек.
# Может быть:  single (одиночные), double (двойные), backtick (обратные кавычки)
Quote=

# Место, где пункт доступен. Этот массив разделяется и заканчивается ";"
# "desktop" - на рабочем столе или в папке, если родительский путь является рабочий стол
# "removable" целевой объект (первый выделенный) является флешкой (съёмное устройство)
# "gsettings <schema> <boolean key>" - является истиной
# "dbus <name>" - указанное имя существует
Conditions= ;

# Путь иконки в формате png. Системные иконки можно посмотреть в папке /usr/share/icons или "украсть"
# из файлов-ярлыков отсюда /usr/share/applications/, открыв их текстовым редактором.
# Для системных иконок достаточно лишь указать их название (без пути)
Icon-Name=

# Зависимости - это программные исполняемые файлы необходимые для работы этих nemo_actions
# Nemo будет искать пути для этих(ой) программ(ы) и не отобразит действия (action), если таковые пропадут
# Вы также можете использовать абсолютный путь к файлу (т.е. /usr/lib/gvfs/gvfsd-archive) для проверки
# вместо или в дополнение к исполняемому в пути.
# Этот массив разделяется и заканчивается ";"
#Dependencies= ;

# Экранирует пробелы в путях, если установлено в true ($U, $F, $P, $D)
# Иногда это избавит от ошибки для путей не заключённых в кавычки.
# По умолчанию false
#EscapeSpaces=true

# *** Также следует упомянуть стандартные маркеры, которые могут быть использованы ***
#     в Имени (Name), Комментариях (Comment) и полях Пути (Exec) :
#       %U - вставить URI выбранного файла
#       %F - вставить список пути выбранного файла
#       %P - вставить путь родительской (текущей) директории
#       %f или %N (устаревшее) - вставить отображаемое имя первого выбранного файла
#       %p - вставить отображение имени родительской директории
#       %D - вставить путь к устройству или файлу (т.е. /dev/sdb1)
#  (У маркеров прямая связь с полем "Selection")
Все просто :smile: Ну, а теперь к практическим примерам.
Зачем это нужно? Ну, знаете, удобно парой создать одним кликом ярлык на к-л папочку или файл, а после переместить его по адресу ул. /usr/share/applications/, предварительно отредактировав текстовым редактором, и указав, в какой каталог меню данный ярлык поместится. Для тех, кто в танке, речь идет про удобное создание ярлыка и перемещение системное меню (которое вызывается клавишей win).
Для начала установим exo-utils, ctr+altl+T и даем команду sudo apt-get install exo-utils
После создаем файл create_item.nemo_action с содержимым:
[Nemo Action]
Name=Create shortcut...
Exec=exo-desktop-item-edit --create-new --type Application --name "Ярлык для %f" --comment "Ярлык для '%F'" --command "exo-open %F" --icon skype_skypeme %P
Selection=s
Extensions=any;
Quote=single
Icon-Name=zim-panel
Dependencies=exo-desktop-item-edit;
Name[ru]=Создать ярлык...
1. Нажимаем "создать ярлык"
1.png
2. Нажимаем на значок
2.png
3. Выбираем понравившийся нам значок и нажимаем кнопку "ОК"
3.png
4. По желанию можете удалить словосочетание "Ярлык для". После нажимаем "Создать"
4.png
5. Создался ярлык, запускаем, жмем кнопку "Сделать доверенной"
5.png
После у ярлыка отобразится иконка
5.1.png
6. Открываем ярлык в текстовом редакторе
6.png
7. Открываем папку /usr/share/applications/, в моем случаи, ярлык нужно переместить в каталог программирование, поэтому я открываю файл, который уже в нем находится и смотрю код
7.png
8. Копируем Categories=Development; в наш ярлык и сохраняем его
8.png
Продемонстрирую перед финальным шагом, что в каталоге программирование, пока нашего ярлыка нет
8.1.png
9. Открываем /usr/share/applications "как root" и копируем наш ярлык в эту папку, profit?!
9.png
(на примере Dr.Web)
Создадим файл Dr.Web.nemo_action и внесем следующий правки:
[Nemo Action]
Name=Scan for viruses files/folders
Comment=Scan for viruses "%F"
Name[ru]=Проверить на вирусы файлы/папки
Comment[ru]=Проверить на вирусы "%F"
Exec=drweb-gui %F
Selection=any
Extensions=any;
Icon-Name=drweb-gui
EscapeSpaces=true
Dependencies=drweb-gui;
Порой хочется посмотреть, сколько места занимают та или иная папка, тот или иной файл в дереве каталогов. Соответствующий пункт в ФМ nemo "Сортировка"->"Размер" корректно сортирует лишь файлы, к папкам он применяет правило: если в папке "а" больше файлов (в количественном отношении), чем в папке "б", то папка "а" занимает больше места на диске... Что ни есть правда. Можете протестировать: создайте 3 папки, в 1-ю добавьте 3 текстовых файла, во 2-ю 2 текстовых файла, в 3-ю - один какой-нибудь фильм или музыкальный файл, отсортируйте по размеру и убедитесь в моих словах... Преступим к созданию соответствующего пункта КМ для более объективной оценки размера файлов и папок :) Для начала нам нужно установить продвинутый вариант программы du: [b]ncdu[/b].

Немного справки: du - позволяет выводить размер файлов и папок в консоль. Установлен из коробки. Конечно, в сочетании с sort -nr (сортировщиком) мы можем достичь желаемого результата в случаи, если запросим у du выводить размер в КБ. Но это не очень удобно... Мы также можем попросить выводить в МБ и КБ, но тогда сортировщик сломается. Поэтому ncdu - более предпочтительный вариант, поскольку выполняет сортировку сам с корректным отображением GB, MB и KB.

Установим ncdu,ctrl+alt+T, вводим команду sudo apt-get install ncdu. Затем создаем файл ncdu.nemo_action в известной папке со следующим содержанием:
[Nemo Action]
Name=Sort by size folder
Name[ru]=Сортировать по ncdu
Exec=gnome-terminal -x sh -c 'ncdu %P'
#Фоновый клик
Selection=none
Extensions=any;
Icon-Name=reload
Quote=double
Dependencies=ncdu;
Скриншот:
Снимок экрана от 2017-02-20 05-02-01.png
Нам понадобится аудио-конвертер SoundConverter (поддерживает конвертирование ogg, flac, wav, opus и mp3 (если хотите, что б конвертировал mp3, то доустанавливаем плагин lame, т.е. sudo apt-get install lame)). Даем команду в терминал sudo apt install soundconverter. Затем создаем файл convert_audio.nemo_action в соответствующей папке со следующим содержимым:
[Nemo Action]
Name=Convert the audio files
Name[ru]=Конвертировать аудио-файлы...
Exec=soundconverter %F
Selection=notnone
Extensions=mp3;ogg;flac;wav;opus;
Icon-Name=soundconverter
Quote=double
Dependencies=soundconverter;
Если мы выберем к-л изображение, нажмем ПКМ, появится КМ "Сделать фоном". Иногда оно работает, иногда нет. Если конкретнее, то, когда файл изображения назван буржуйскими англиЦкими буквами, то оно работает, если русскими - нет. Что ж исправим этот недочет ;) Откроем файл /usr/share/nemo/actions/set-as-background.nemo_action и заменим строку gsettings set org.cinnamon.desktop.background picture-uri "%U" на строку
gsettings set org.cinnamon.desktop.background picture-uri file://"%F"
и сохраним документ.
(на примере gedit)
Парой нужно отредактировать какие-либо системные конфиги, не поддающиеся редактированию в обычном режиме. Конечно, можно запустить терминал или alt+F2 и ввести соответствующую команду, но когда у нас открыт ФМ прямо в папке с интересующим нас конфигом, очень удобно открыть его как root в 1 клик. Я использую в качестве простого текстового редактора - gedit, у вас может быть какой-либо другой, например, xed, который у всех установлен из коробки. Если так, то просто замените в конфиге все слова gedit на xed. Итак, создадим в соответствующей папке файл open_gedit_root.nemo_action со следующим содержимым:
[Nemo Action]
Name=Open the file gedit as a root
Name[ru]=Открыть файл в gedit как root
Comment=Open "%f" using gedit as a root
Comment[ru]=Открыть "%f" в gedit как root
Exec=gksu gedit %F
Selection=notnone
Mimetypes=text/plain;
Icon-Name=accessories-text-editor
EscapeSpaces=true
Dependencies=gedit;
Подробнее о методике можно узнать здесь Работа с буфером обмена в Linux: теория и практика. Я лишь отмечу, что поиск будет производиться из primary буфера-обмена, меню будет доступно при фоновом клике рабочего стола. Первым делом создаем здесь - /usr/share/nemo/actions ИЛИ здесь - ~/.local/share/nemo/actions файл search_browser.nemo_action и вносим следующее содержимое:
[Nemo Action]
Name=Search the internet...
Name[ru]=Искать в интернете...
Exec=<search_browser.sh>
Selection=none
Extensions= any;
Conditions= desktop;
Icon-Name=folder-saved-search-symbolic
Dependencies=xclip;
Внимательный читатель должно быть помнит комментарий, написанный в подробном описании чуть выше поля Exec:
# Для файла, находящегося прямо в папке с .nemo_action,
# достаточно указать его название, заключив в такие "кавычки" < >

Возникает вполне резонный вопрос: а что это за файл search_browser.sh, у меня его, вроде, нет?! Все верно, в качестве примера я решил наглядно показать, что в поле Exec спокойно можно указывать путь до обычного скрипта и что "<>" - действительно работает. Итак, создадим файл search_browser.sh со следующим содержимым:
#!/bin/bash
xclip -o | sed -r '2~1d;s/(^\s+|\s+$)//g;s/%/%25/g;s/#/%23/g;s/\$/%24/g;s/&/%26/g;s/\+/%2B/;s/,/%2C/g;s/:/%3A/g;s/;/%3B/g;s/=/%3D/g;s/\?/%3F/g;s/@/%40/g;s/\s/+/g' | awk '{print "http://www.google.ru/search?hl=ru&q=" $1}' | xargs yandex-browser -new-tab


Повторюсь, узнать, что означает этот код, можно в теме Работа с буфером обмена в Linux: теория и практика. Как видите в строчке xargs yandex-browser -new-tab указан яндекс-браузер, далеко ни все пользуются им, поэтому единственный штрих, который вам нужно будет внести в скрипт - заменить yandex-browser на название своего браузера. И, да, не забудьте сделать скрипт исполняемым: ПКМ->Свойства->Права->Разрешить исполнять как программу, иначе ничего не будет работать!
(на примере яндекс-переводчика)
Основная мысль та же, что и в предыдущем примере (Поиск текста, находящегося в буфере обмена, с помощью браузера). Создаем в соответствующей папке файл translate_yandex.nemo_action со следующим содержимым:
[Nemo Action]
Name=Translate into Yandex...
Name[ru]=Перевести в Яндексе...
Exec=<translate_yandex.sh>
Selection=none
Extensions=any;
Conditions=desktop;
Icon-Name=mail-sent-symbolic
Dependencies=xclip;
В ней же создаем файл translate_yandex.sh, вставляем в него код:
#!/bin/bash
xclip -o | sed -r '2~1d;s/(^\s+|\s+$)//g;s/%/%25/g;s/#/%23/g;s/\$/%24/g;s/&/%26/g;s/\+/%2B/;s/,/%2C/g;s/:/%3A/g;s/;/%3B/g;s/=/%3D/g;s/\?/%3F/g;s/@/%40/g;s/\s/+/g' | awk '{print "translate.yandex.ru/?lang=en-ru&text=" $1}' | xargs yandex-browser -new-tab


Если вы пользуетесь не яндекс-браузером, то в xargs yandex-browser -new-tab словосочетание yandex-browser необходимо заменить на название вашего браузера (т.е. на ту команду, с помощью которой браузер можно запустить из терминала).
Если хотите использовать, например, гугл-переводчик, то следует, вместо print "translate.yandex.ru/?lang=en-ru&text=" $1, написать это print "translate.google.com/translate_t?hl=ru#en|ru|" $1. Сохраняем, ПКМ->Свойства->Права->Разрешить исполнять как программу, profit?!
Следуя традиции, создаем primary_clipboard.nemo_action в соответствующей папке, вносим изменения:
[Nemo Action]
Name=Display the contents of the clipboard...
Name[ru]=Отобразить содержимое буфера обмена...
Exec=<primary_clipboard.sh>
Selection=none
Extensions= any;
Conditions= desktop;
Icon-Name=dialog-information-symbolic
Dependencies=xclip;zenity;
Отмечу, что для работы должны быть установлены пакеты xclip и zenity.
Далее в этой же папке создаем текстовый файл primary_clipboard.sh:
#!/bin/bash
STRING=`xclip -o`&&echo -n "$STRING" | zenity --text-info --editable --width=550 --height=500 --title="Содержимое буфера обмена" --icon-name=dialog-information


Не забываем сделать скрипт primary_clipboard.sh исполняемым (ПКМ->Свойства->Права->Разрешить исполнять как программу). КМ будет доступно при фоновом клике ПКМ по рабочему столу.
primary_clipboard.png
Подробнее о методике можно узнать из темы Скрытие файлов и директорий, выражаю благодарность Chocobo, любезно предоставившего необходимый скрипт. Что ж, создадим текстовый файл hidden.nemo_action здесь - /usr/share/nemo/actions ИЛИ здесь - ~/.local/share/nemo/actions со следующим содержимым:
[Nemo Action]
Name=Make hidden files/folders
Name[ru]=Сделать скрытыми файлы/папки
Comment=Hide %F
Comment[ru]=Скрыть %F
Exec=<hidden.py %F>
Selection=notnone
Extensions= any;
Icon-Name=changes-prevent-symbolic
Далее в этой же папке создаем файл hidden.py:

Код: Выделить всё

#!/usr/bin/python
import sys
import os
i=1
while i < len(sys.argv):
    try:
        while str(sys.argv[i+1])[0] != '/':
            sys.argv[i]=sys.argv[i]+ " "+sys.argv.pop(i+1)
            if sys.argv[i+1][0] == '/':
               i= i+1
        i= i+1
    except IndexError: 
        break
for i in sys.argv[1:]:
    path = i[:i.rfind('/')+1]
    name = i[i.rfind('/')+1:]
    with open(path+".hidden", "a") as hidden:
        hidden.write(name+"\n")
Не забываем сделать скрипт hidden.py исполняемым (ПКМ->Свойства->Права->Разрешить исполнять как программу).
По просьбе пользователя SATORY_RA переношу данный пример/пост в шапку темы. Итак, создадим в соответствующей папке файл *.nemo_action (где * - любое удобное для вас название) со следующим содержимым:
[Nemo Action]
Name=On/Off rest-mode
Name[ru]=Вкл/Выкл ТВ
Conditions= desktop;
Exec=<rw.sh>
Selection=none
Extensions=any;
Icon-Name=display
Далее в этой же папке создаем текстовый файл-скрипт rw.sh:

Код: Выделить всё

#!/bin/bash

IN="HDMI-1"
EXT="HDMI-2"

if (xrandr | grep "$EXT" | cut -d ' ' -f 2- | grep [0-9])
    then
    xrandr --output $EXT --off --output $IN --auto --primary
    SINK=$(pacmd list-sinks|grep '[^*] index'|sed 's/.*: //')
    pacmd set-default-sink ${SINK}
    pacmd list-sink-inputs |grep 'index: '|sed 's/\s*index: //'|while read x
    do
    pacmd move-sink-input "$x" "${SINK}";
    done
    else
            xrandr --output $IN --auto --primary  --output $EXT --auto --left-of $IN
            SINK1=$(pacmd list-sinks|grep '[^*] index'|sed 's/.*: //')
            pacmd set-default-sink ${SINK1}
            pacmd list-sink-inputs |grep 'index: '|sed 's/\s*index: //'|while read x
            do
            pacmd move-sink-input "$x" "${SINK1}";
            done
fi
Не забываем сделать скрипт rw.sh исполняемым (ПКМ->Свойства->Права->Разрешить исполнять как программу).

Подробнее о скрипте, о том, как он работает можно узнать в теме Скрипт на Bash для включения/выключения второго экрана и переброса звука. :smile:
(НА ПРИМЕРЕ CLAMAV)
В этом примере мы напишем КМ для антивируса Clamav. Его прелесть состоит в том, что он свободный, и его антивирусные базы постоянно обновляются. Управление clamav осуществляется через командную строку, но вам вовсе не обязательно ею пользоваться: можно установить простой графический интерфейс clamtk, который, к слову, переведен на русский.

Для установки антивируса введите команду: sudo apt-get install clamav
Для установки GUI: sudo apt-get install clamtk

Следующим шагом мы должны обновить антивирусную базу. Если вы установили GUI, то можно нажать Alt+F2 и ввести команду clamtk, после чего запустится графический интерфейс.
clamtk_main.png
Затем следует перейти в "Помощник по обновлению" и временно отключить автоматическое обновление, переключив radio кнопку на "Обновление сигнатур вручную" и кликнув "Применить". Это делается для того, чтобы на следующем шаге после того, как мы нажмем кнопку "Назад" и перейдем в пункт "Обновления", у нас появилось предложение "Проверить наличие обновлений".
clamtk_update.png
Подтверждаем согласие - "ОК", запускается процесс обновления. По завершению, можно обратно переключиться на обновление в автоматическом режиме.
clamtk_auto.png
Я обновлял сигнатуры именно этим способом, но вам ничего не стоит их обновить с помощью стандартного функционала clamav: sudo freshclam . Этот способ особенно актуален для тех, кто инсталлировал только clamav (без clamtk).

Антивирус с обновленными базами к старту готов. Стойте, подождите, не спешите уходить! Мы еще не закончили, а как же контекстное меню? :crazy: Вы же не хотите для того, чтобы проверить объект, запускать каждый раз терминал или граф. интерфейс и указывать необходимый файл?! Отлично, тогда давайте организуем удобное взаимодействие с ФМ. Для этого в соответствующей папке создадим файл clamav.nemo_action со следующим содержимым:
[Nemo Action]
Name=Scan for viruses files/folders
Comment=Scan for viruses "%F"
Name[ru]=Проверить на вирусы файлы/папки
Comment[ru]=Проверить на вирусы "%F"
Exec=<clamav.sh %F>
Selection=s
Extensions=any;
Icon-Name=catfish
Quote=double
Dependencies=clamscan;zenity;
Рядом с ним - скрипт clamav.sh:

Код: Выделить всё

#!/bin/bash
fullpathname=$@
name=${fullpathname##*/}
path=${fullpathname%/*}

AAA=`zenity --forms --title=clamav --text="Поиск вирусов в $fullpathname" --add-combo="Удалять зараженные файлы" --combo-values="да|нет" --add-combo="Проверять вложенные каталоги" --combo-values="да|нет" --add-combo="Полностью очистить лог" --combo-values="да|нет"`

#i - показывать только зараженные файлы. --remove=yes - удалять зараженные файлы. -r - рекурсивное вхождение
options="-i --remove=yes -r"
clearing_log="нет"

if [ $? = 0 ]
   then
        if [ "$AAA" = "" ]
            then
                zenity --info --title="Отмена" --text="Операция отменена"
                exit
        fi
        remove=$( echo $AAA | awk -F '|' '{print $1}')
        recursive=$( echo $AAA | awk -F '|' '{print $2}')

        if [ "$remove" = "нет" ]
            then
                options="-i -r"
                if [ "$recursive" = "нет" ]
                    then options="-i"
                fi
        else
            if [ "$recursive" = "нет" ]
                then options="-i --remove=yes"
            fi
        fi

        clearing_log=$( echo $AAA | awk -F '|' '{print $3}')
        if [ "$clearing_log" = "да" ]
            then rm $HOME/.clamav_history
        fi

        echo -e "\n###################################################\n       Дата выполнения сканирования: $(date +%B\ %d.%m.%y\ -\ %a\ \|\ %H:%M)\nЗапрос: clamscan $options \"$fullpathname\"\n###################################################" >> $HOME/.clamav_history && clamscan $options "$fullpathname" >> $HOME/.clamav_history
        zenity --text-info --width=700 --height=500 --auto-scroll --title="Результаты сканирования clamav" --filename="$HOME/.clamav_history" 
fi
Не забываем сделать скрипт clamav.sh исполняемым (ПКМ->Свойства->Права->Разрешить исполнять как программу).

Готово! Пользоваться КМ очень просто. При клике "Проверить на вирусы файлы/папки" вызывается zenity, вопрошая следующее:
script_zenity.png
По правде говоря, вы можете ничего не отвечать, сразу нажать кнопку "OK". В таком случаи, скрипт выполнит сканирование с параметрами "по умолчанию":
Удалять зараженные файлы - ДА
Проверять вложенные каталоги - ДА
Полностью очистить лог - НЕТ

Однако, если вам нужно, например, чтобы скрипт clamav не удалял зараженные файлы, вы можете указать соответствующий пункт в всплывшем окне.
script_zenity1.png
Пункт "Проверять вложенные каталоги" актуален, ибо в .nemo_action указано одиночное выделение файла (поскольку скрипт принимает лишь один путь):
Selection=s

Поэтому, если вам нужно, например, проверить только файлы, находящиеся на рабочем столе, без рекурсивного вхождения в папки, хранящиеся там же, то вы можете выделить папку рабочего стола, вызвать КМ, указать "Проверять вложенные каталоги - НЕТ"... Скажете - неудобно?! Что ж, возможно, но мой уровень создания скриптов не позволяет мне сделать бОльшего. Я не волшебник, я только учусь ;) Желающие написать более продвинутый скрипт - код в студию. :smile:

Результаты сканирования записываются в файл ~/.clamav_history, а после вызываются с помощью функционала zenity:
zenity_result.png
Со временем, если вы будете пользоваться данным КМ, лог будет пополняться все новыми результатами сканирования, поэтому, если вы захотите его очистить, во время следующего запуска укажите "Полностью очистить лог".
Для работы данного КМ нам понадобится LibreOffice, который, кстати, говоря, установлен у вас "из коробки"; ведь именно его средствами будет выполняться преобразование.
Создадим в соответствующей папке файл docs_to_pdf.nemo_action:
[Nemo Action]
Name=Convert documents to pdf
Comment=Convert MS Office documents, LibreOffice and txt to pdf
Name[ru]=Конвертировать документы в pdf
Comment[ru]=Конверт. документы MS Office, LibreOffice и txt в pdf
Exec=<docs_to_pdf.sh %F>
Selection=notnone
Extensions=doc;docx;rtf;txt;odt;xls;xsls;ods;odp;pptx;ppt;
EscapeSpaces=true
Icon-Name=application-pdf
Dependencies=loimpress;localc;lowriter;
Рядом с ним, т.е. в той же папке, создадим обрабатывающий события скрипт docs_to_pdf.sh:

Код: Выделить всё

#!/bin/bash
for file in "$@"
do
    output=$output"\n"$file
    path=${file%/*}
    expansion=${file##*.}
    if [ "$expansion" = "xls" ] || [ "$expansion" = "xsls" ] || [ "$expansion" = "ods" ]
        then
            localc --convert-to pdf "$file" --outdir "$path"
        else
            if [ "$expansion" = "odp" ] || [ "$expansion" = "pptx" ] || [ $expansion = "ppt" ]
                then
                    loimpress --convert-to pdf "$file" --outdir "$path"
                else                
                    if [ "$expansion" = "doc" ] || [ "$expansion" = "docx" ] || [ "$expansion" = "odt" ] || [ "$expansion" = "rtf" ] || [ "$expansion" = "txt" ]
                        then
                            lowriter --convert-to pdf "$file" --outdir "$path"
                    fi
            fi
    fi
done
notify-send -t 10000 -i "gtk-ok" "Завершено" "Преобразование в PDF документов:$output"
Не забываем сделать скрипт docs_to_pdf.sh исполняемым (ПКМ->Свойства->Права->Разрешить исполнять как программу
Не знаю, к сожалению или к счастью, но LM-C из КМ имеет возможность вычислить только sha256. Я решил немного переписать файл /usr/share/nemo/actions/mint-sha256sum.nemo_action, дабы расширить функционал. Получилось вот что:
nemo, hash.png
При вызове КМ появляется zenity-окно, в котором можно выбрать интересующую нас функцию. После расчетов появляется окно с результатом:
nemo, hash_2.png
Как видно на скриншоте, теперь можно выделять сразу несколько файлов для проверки их целостности, а не только один.

На этом презентация окончена, если вам приглянулись данные улучшения, тогда
1) Переходим в каталог с КМ, переименовываем файл mint-sha256sum.nemo_action в hash_sum.nemo_action, открываем текстовый редактор:
cd /usr/share/nemo/actions
sudo mv mint-sha256sum.nemo_action hash_sum.nemo_action
gksu xed hash_sum.nemo_action
2) hash_sum.nemo_action должен принять вид:

Код: Выделить всё

[Nemo Action]
Active=true
Name=Check the hash
Name[ru]=Проверить хеш
Comment=Check the hash of the file
Comment[ru]=Проверить хеш-сумму файла
Exec=<hash_sum.sh %F>
Icon-Name=gtk-execute
Selection=notnone
Dependencies=md5sum;sha256sum;sha1sum;sha224sum;sha384sum;sha512sum;zenity;
Extensions=iso;img;
Примечание: если хотите, можете привести строку Extensions=iso;img; к виду Extensions=nodirs; , чтобы иметь в будущем возможность проверять целостность не только iso или img, а в принципе любых файлов...

Сохраняем файл hash_sum.nemo_action, переходим к следующему шагу.

3) Создаем пустой текстовый файл hash_sum.sh, открываем в xed:

Код: Выделить всё

cd /usr/share/nemo/actions
sudo touch hash_sum.sh
gksu xed hash_sum.sh
4) Скрипт hash_sum.sh должен принять вид:

Код: Выделить всё

#!/bin/bash

result=`zenity --list --title="Вычисление хеш-сумм" --text="Что вычислить?" \
	--radiolist --column "" --column "Функция" \
	FALSE "md5" \
	TRUE "sha256" \
	FALSE "sha1" \
	FALSE "sha224" \
	FALSE "sha384" \
	FALSE "sha512" \
	 --height=270 \
	 --width=220`

if [ "$result" = "" ]
then
    zenity --info --title="Отмена" --text="Операция отменена"
    exit
fi

result_sum="$result""sum"

for x in $@
do	
    all="$all<b>$result</b>: $(basename $x) <b>-></b> $($result_sum $x | awk '{print $1}')\n"
	
done

zenity --info --title="Результат" --text="$all"
Сохраняем изменения.

5) Даем права на выполнение:
sudo chmod a+x /usr/share/nemo/actions/hash_sum.sh

Все, можете проверять :smile:
Спасибо за внимание! Не забудьте поделиться своим опытом использования .nemo_action :)
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось пользователем 32 root; всего редактировалось раз: 25
User: adminka
OS: Linux Mint 18.2 Sonya Cinnamon :thumbs:
Kernel: 4.11.0-14-generic
Эмоджи смайлы                  


Аватара пользователя

zuzabrik
Сообщения: 759
Зарегистрирован: 29 авг 2016, 09:08
Решено: 15
Благодарил (а): 48 раз
Поблагодарили: 222 раза

Контекстное меню ФМ nemo

Сообщение zuzabrik » 19 фев 2017, 07:05

Лайк тебе за темку. Сам никогда не использовал штатные ФМ различных ДЕ, но судя по постам на форуме добавление туда всяческих контекстных меню тема актуальная.
Имею желание иметь всех желающих, но не имею желающих.

Аватара пользователя

colonel
Сообщения: 439
Зарегистрирован: 18 дек 2016, 09:08
Решено: 10
Благодарил (а): 18 раз
Поблагодарили: 118 раз

Контекстное меню ФМ nemo

Сообщение colonel » 19 фев 2017, 17:39

Лайкнул, в общем -то направление задано правильное о том как можно добавить строки в меню ,
но блин товарЫщЫ-друзья звиняйте , появились вопросы , однако ...
adminka писал(а): а теперь к практическим примерам. Перед тем, как начать, предложу вам скидывать свои варианты .nemo_action, дабы делиться опытом :)
Добавляем возможность создать ярлык ► Показать

ну добавил , в настройках Nemo Правка-Плагины- окно Действия и появилась строчка для добавления в контекстное меню Создание ярлыка... и после включения даже в контекстном меню по ПКМ имеется такая строка .
вопрос первый - а почему не работает ? (ну не создаётся ярлыка )
вопрос второй - если заработает, то чем этот способ (этот созданный пункт меню ) отличается в работе от стандартного имеющегося пункта Создать ссылку? (что тоже самое кроме разницы в названии и в том что создание ссылки нормально работает )
"Не ты выбираешь Linux, а Linux выбирает тебя"
(с)Себастьян Перейра, торговец чёрным деревом

Аватара пользователя

Автор темы
root
Сообщения: 647
Зарегистрирован: 16 фев 2017, 17:03
Решено: 3
Откуда: г. Хабаровск
Благодарил (а): 191 раз
Поблагодарили: 152 раза

Контекстное меню ФМ nemo

Сообщение root » 19 фев 2017, 18:44

colonel писал(а): ну добавил , в настройках Nemo Правка-Плагины- окно Действия и появилась строчка для добавления в контекстное меню Создание ярлыка... и после включения даже в контекстном меню по ПКМ имеется такая строка .
вопрос первый - а почему не работает ? (ну не создаётся ярлыка )
вопрос второй - если заработает, то чем этот способ (этот созданный пункт меню ) отличается в работе от стандартного имеющегося пункта Создать ссылку? (что тоже самое кроме разницы в названии и в том что создание ссылки нормально работает )
Разница в подходе: ярлык - это не ссылка. Ссылку вы в меню не запихаете, ибо оно использует ярлыки :) Либо вы не установили exo-utils, либо попробуйте перезапустить nemo, и отпишитесь, пож-та, о результате!

ЗЫ: если я правильно понимаю, то ярлык - текстовый файл, который обрабатывается ОС, ссылка - указатель на область в памяти, обрабатываемый файловой системой. Т.е. в первом случаи - высокий уровень, во втором - низкий. +концепция, как я заметил выше, отличается. У ярлыка есть различные параметры, которые задаются исключительно в нем: комментарии, путь файла запуска, иконки. У самой ссылки этого нет. Она ориентируется на объект, на который ссылается...
ЗЫ 2: добавил демонстрацию практического применения в шапке темы
User: adminka
OS: Linux Mint 18.2 Sonya Cinnamon :thumbs:
Kernel: 4.11.0-14-generic
Эмоджи смайлы                  


Аватара пользователя

x230
Сообщения: 655
Зарегистрирован: 02 сен 2016, 19:07
Решено: 3
Благодарил (а): 139 раз
Поблагодарили: 136 раз

Контекстное меню ФМ nemo

Сообщение x230 » 20 фев 2017, 10:48

adminka писал(а): ярлык - текстовый файл, который обрабатывается ОС, ссылка - указатель на область в памяти, обрабатываемый файловой системой
собственно... :thumbs:
. . . .
Но я о другом.
Exo-utils я установил. Ярлык "создается". Но в целом - это не то, чего ожидал.
После клика на пункте "Создать ярлык" появляется это:


Настройки такие:
[Nemo Action]
Name=Create shortcut...
Comment=Creating shortcut
Exec=exo-desktop-item-edit -c -t Application --name "Ярлык для %f" --comment "Ярлык для '%F'" --command "exo-open %F" --icon skype_skypeme %P --url "%f"
Selection=s
Extensions=any;
Quote=single
Stock-Id=gtk-add
Name[ru]=Создать ярлык...
Так вот, хотелось чтоб сразу без посл.указания пути для сохранения и вообще без подобный промежут.шагов.
В параметре -с (--create-new) что-то вообще можно указывать (как в других параметрах)?
моя платформа :
ОС: Linux Mint 18.2 Sonya, 64-bits. DE: Cinnamon 3.4.3 Ядро: 4.10.0-38-generic x86_64 Browser: Pale Moon 27.6.*
Железо: Intel Core i3-3210; CPU 3.20GHz x 2; Mem 4GB; VGA - на борту.

Аватара пользователя

Dja
Сообщения: 2775
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 392 раза
Поблагодарили: 283 раза

Контекстное меню ФМ nemo

Сообщение Dja » 20 фев 2017, 11:20

x230 писал(а): без посл.указания пути для сохранения и вообще без подобный промежут.шагов.
для этого корчитчане юзают среднюю кнопку
Новичок? - ознакомься с правилами

В поисках истины :grabli:

Аватара пользователя

x230
Сообщения: 655
Зарегистрирован: 02 сен 2016, 19:07
Решено: 3
Благодарил (а): 139 раз
Поблагодарили: 136 раз

Контекстное меню ФМ nemo

Сообщение x230 » 20 фев 2017, 11:47

Dja писал(а):юзают среднюю кнопку
В какой момент? Подробней, плиз.
Я долго спал? - Я видно много пропустил.
. . . . .
Потыкал... Понял - Ср.КМ - это копи/пасте оттуда где стоит курсор и туда где кликашь Ср.КМ.
Полезно :thumbs:, но не в данном случае...
. . . . .
x230 писал(а):... параметр -с (--create-new) ...
А этот параметр никак не изменить (комменты к нему)?
. . . . .
моя платформа :
ОС: Linux Mint 18.2 Sonya, 64-bits. DE: Cinnamon 3.4.3 Ядро: 4.10.0-38-generic x86_64 Browser: Pale Moon 27.6.*
Железо: Intel Core i3-3210; CPU 3.20GHz x 2; Mem 4GB; VGA - на борту.

Аватара пользователя

Dja
Сообщения: 2775
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 392 раза
Поблагодарили: 283 раза

Контекстное меню ФМ nemo

Сообщение Dja » 20 фев 2017, 11:58

x230, нет. Зажимаешь средней кнопкой и тянешь туда где хочешь создать ярлык (раб стол например). Отпускаешь и выбираешь левой кнопкой уже "Создать ярлык".
Сам был в шоке когда обнаружил. Это ж сколько надо выкурить чтоб такое учудить :crazy:

P.S. не всегда есть под рукой мышь. Т.е. средняя кнопка. Видимо те, кто пилит cinnamon об этом и не подумали. Действительно....зачем... когда у них то есть мышь.
Новичок? - ознакомься с правилами

В поисках истины :grabli:

Аватара пользователя

x230
Сообщения: 655
Зарегистрирован: 02 сен 2016, 19:07
Решено: 3
Благодарил (а): 139 раз
Поблагодарили: 136 раз

Контекстное меню ФМ nemo

Сообщение x230 » 20 фев 2017, 12:10

Dja писал(а): Зажимаешь средней кнопкой и тянешь туда где хочешь создать ярлык (раб стол например). Отпускаешь и выбираешь левой кнопкой уже "Создать ярлык".
Сенька, беримяч! :thumbs:
моя платформа :
ОС: Linux Mint 18.2 Sonya, 64-bits. DE: Cinnamon 3.4.3 Ядро: 4.10.0-38-generic x86_64 Browser: Pale Moon 27.6.*
Железо: Intel Core i3-3210; CPU 3.20GHz x 2; Mem 4GB; VGA - на борту.

Аватара пользователя

Автор темы
root
Сообщения: 647
Зарегистрирован: 16 фев 2017, 17:03
Решено: 3
Откуда: г. Хабаровск
Благодарил (а): 191 раз
Поблагодарили: 152 раза

Контекстное меню ФМ nemo

Сообщение root » 20 фев 2017, 20:02

x230 писал(а): Так вот, хотелось чтоб сразу без посл.указания пути для сохранения и вообще без подобный промежут.шагов.
В параметре -с (--create-new) что-то вообще можно указывать (как в других параметрах)?
Насколько я понимаю в параметре -c ничего нельзя указывать. Ну, а путь сохранения задается в самом последнем параметре, я его выделю:
exo-desktop-item-edit --create-new --type Application --name "Ярлык для %f" --comment "Ярлык для '%F'" --command "exo-open %F" --icon skype_skypeme %P
Т.е. если вы, например, хотите сохранять ярлык в папку ~/.local/share/applications, то вместо %P, вы должны указать ~/.local/share/applications. Если хотите в /usr/share/applications сразу, то... Я, честно признаюсь, еще не думал, как root из контекстного меню получать, хотя тема интересная, нужно будет глянуть как разрабы реализуют функцию "открыть как root"... Но, как вариант, можно перед exo-desktop-item-edit написать sudo и настроить в системе, чтоб для sudo exo-desktop-item-edit не требовало ввод пароля... :sad:
User: adminka
OS: Linux Mint 18.2 Sonya Cinnamon :thumbs:
Kernel: 4.11.0-14-generic
Эмоджи смайлы                  


Аватара пользователя

Автор темы
root
Сообщения: 647
Зарегистрирован: 16 фев 2017, 17:03
Решено: 3
Откуда: г. Хабаровск
Благодарил (а): 191 раз
Поблагодарили: 152 раза

Контекстное меню ФМ nemo

Сообщение root » 20 фев 2017, 20:33

Dja писал(а): Зажимаешь средней кнопкой и тянешь туда где хочешь создать ярлык (раб стол например). Отпускаешь и выбираешь левой кнопкой уже "Создать ярлык".
Мм, а скрин можно?) Я походу не в теме, кто такие "корчитчане"? :-D
User: adminka
OS: Linux Mint 18.2 Sonya Cinnamon :thumbs:
Kernel: 4.11.0-14-generic
Эмоджи смайлы                  


Аватара пользователя

x230
Сообщения: 655
Зарегистрирован: 02 сен 2016, 19:07
Решено: 3
Благодарил (а): 139 раз
Поблагодарили: 136 раз

Контекстное меню ФМ nemo

Сообщение x230 » 20 фев 2017, 20:42

adminka писал(а): путь сохранения
Получилось, правда с небольшой "промежуточной остановкой"

И хоть поле "Рыбочий каталог" пустое, жмем далее "Создать"и все попадает туда как указано здесь (в пункте Exec=):
[Nemo Action]
Name=Create shortcut...
Comment=Creating shortcut
Exec=exo-desktop-item-edit -c -t Application --name "Ярлык для %f" --comment "Ярлык для '%F'" --command "exo-open %F" --icon skype_skypeme /home/x230/"Рабочий стол"
Selection=s
Extensions=any;
Quote=single
Stock-Id=gtk-add
Name[ru]=Создать ярлык...
. . . .
adminka писал(а): скрин можно?
моя платформа :
ОС: Linux Mint 18.2 Sonya, 64-bits. DE: Cinnamon 3.4.3 Ядро: 4.10.0-38-generic x86_64 Browser: Pale Moon 27.6.*
Железо: Intel Core i3-3210; CPU 3.20GHz x 2; Mem 4GB; VGA - на борту.

Аватара пользователя

Автор темы
root
Сообщения: 647
Зарегистрирован: 16 фев 2017, 17:03
Решено: 3
Откуда: г. Хабаровск
Благодарил (а): 191 раз
Поблагодарили: 152 раза

Контекстное меню ФМ nemo

Сообщение root » 20 фев 2017, 20:48

x230 писал(а): И хоть поле "Рыбочий каталог" пустое, жмем далее "Создать"и все попадает туда как указано здесь (в пункте Exec=)
Рабочий каталог (Patch) необязателен в ярлыке, поэтому мы его и не указываем))))
На скрине "создать ссылку", у меня тоже самое, а Dja про ярлык что-то говорил) Ссылку, кстати, можно создать комбинацией клавиш shift+ctrl, потянув объект в целевую папку, и никакие средние колесики не нужны.
User: adminka
OS: Linux Mint 18.2 Sonya Cinnamon :thumbs:
Kernel: 4.11.0-14-generic
Эмоджи смайлы                  


Аватара пользователя

Dja
Сообщения: 2775
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 392 раза
Поблагодарили: 283 раза

Контекстное меню ФМ nemo

Сообщение Dja » 21 фев 2017, 03:04

adminka писал(а): кто такие "корчитчане"?
Кто использует cinnamon (корицу).
adminka писал(а): Dja про ярлык что-то говорил
Всё верно, немного спутал ярлык и ссылку. Но ведь по сути это одно и тоже. (хоть и отличается по вашему описанию). Смысловая нагрузка у них одна. Кстати "ярлык", описанный Вами в #4 есть ничто иное как кнопка запуска. Так что здесь в определениях немного путанница. А спутал я потому что никогда этим не пользуюсь. Максимум я добавлял объекты (директории) в боковую панель ФМ через пкм. Сами же симлинки делал только для апача в консоли.
В ссылках я смысла не вижу. Рабочий стол для меня - всего лишь папка. Но тем не менее практически неприкасаемая ))) Однако, если рабочий стол - папка, значит и целевой папкой может стать любая другая. Незачем над рабочим столом извращаться. Имхо. :hi3:
Новичок? - ознакомься с правилами

В поисках истины :grabli:

Аватара пользователя

Автор темы
root
Сообщения: 647
Зарегистрирован: 16 фев 2017, 17:03
Решено: 3
Откуда: г. Хабаровск
Благодарил (а): 191 раз
Поблагодарили: 152 раза

Контекстное меню ФМ nemo

Сообщение root » 21 фев 2017, 03:41

Кнопка запуска, запись рабочего стола, да, соглашусь, что ярлык - не совсем корректное название. Зато более знакомое для всех) Думаю, вопросов было бы больше, если б я сказал:"кнопка запуска")))
Dja писал(а): Рабочий стол для меня - всего лишь папка. Но тем не менее практически неприкасаемая ))) Однако, если рабочий стол - папка, значит и целевой папкой может стать любая другая. Незачем над рабочим столом извращаться. Имхо.
Если честно, не понял, к чему вы это сказали и что имели ввиду? :hi3:
User: adminka
OS: Linux Mint 18.2 Sonya Cinnamon :thumbs:
Kernel: 4.11.0-14-generic
Эмоджи смайлы                  


Аватара пользователя

Dja
Сообщения: 2775
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 392 раза
Поблагодарили: 283 раза

Контекстное меню ФМ nemo

Сообщение Dja » 21 фев 2017, 03:48

adminka, о мании людей использовать рабочий стол в качестве помойки :-D
Новичок? - ознакомься с правилами

В поисках истины :grabli:

Аватара пользователя

Автор темы
root
Сообщения: 647
Зарегистрирован: 16 фев 2017, 17:03
Решено: 3
Откуда: г. Хабаровск
Благодарил (а): 191 раз
Поблагодарили: 152 раза

Контекстное меню ФМ nemo

Сообщение root » 21 фев 2017, 03:53

Не по теме
Dja писал(а): о магии людей использовать рабочий стол в качестве помойки
Раньше так делал :-D В Сирене добавили возможность добавлять панели с боку) Сейчас этим не грешу, стоит скрытая боковая панель с таймером задержки перед показом и скрытием. Значки прикрепил, в целом, удобненько, :thumbs:
Последний раз редактировалось пользователем 1 root; всего редактировалось раз: 21
User: adminka
OS: Linux Mint 18.2 Sonya Cinnamon :thumbs:
Kernel: 4.11.0-14-generic
Эмоджи смайлы                  


Аватара пользователя

Dja
Сообщения: 2775
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 392 раза
Поблагодарили: 283 раза

Контекстное меню ФМ nemo

Сообщение Dja » 21 фев 2017, 05:06

Не по теме
adminka, я за полки
app.php/gallery/image/5/source
Кстати в корице их показали. Но вот она сама с практической стороны не очень Xfce VS Cinnamon (Пост Dja #10945)
P.S. подловили :-D
Новичок? - ознакомься с правилами

В поисках истины :grabli:

Аватара пользователя

Автор темы
root
Сообщения: 647
Зарегистрирован: 16 фев 2017, 17:03
Решено: 3
Откуда: г. Хабаровск
Благодарил (а): 191 раз
Поблагодарили: 152 раза

Контекстное меню ФМ nemo

Сообщение root » 21 фев 2017, 05:51

Не по теме
Dja, полки, конечно, тема, но, имхо, они не особо актуальны, ибо в меню все итак отсортировано, а часто используемые приложения можно запихать на панель, часто используемые папки - на боковую панель ФМ. Тут, как говорится, на вкус и цвет)
Хм, странно, у меня Cinnamon 1% процессора кушает...
А справа снизу conky?)
User: adminka
OS: Linux Mint 18.2 Sonya Cinnamon :thumbs:
Kernel: 4.11.0-14-generic
Эмоджи смайлы                  


Аватара пользователя

Dja
Сообщения: 2775
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 392 раза
Поблагодарили: 283 раза

Контекстное меню ФМ nemo

Сообщение Dja » 21 фев 2017, 06:38

Не по теме
adminka писал(а): А справа снизу conky?)
они. только сейчас уже сверху (между панелями)
17-02-21-001.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Новичок? - ознакомься с правилами

В поисках истины :grabli:

Вернуться в «Руководства»