Изменение положения новых приложений в пусковой установке [dубликат]

После того как я обновил свой ubutu до 16.04, у меня возникла проблема с Unity launcher. Всякий раз, когда я открываю приложение, которое не указано в пусковой установке, оно занимает третью позицию вместо последней позиции. У кого-то такая же проблема?

5
задан 8 December 2016 в 21:40

5 ответов

Существует специальный невидимый элемент запуска под названием «Запуск приложений», который всегда присутствует в ваших избранных запусках, и определяет, в какой позиции появляются значки приложений, которые не работают. В вашем случае это, очевидно, как-то дошло до странной позиции, но это легко устранить.

Есть два способа: простой способ и, конечно же, простой путь командной строки; -)

Я хочу, чтобы это было легко сделать и помните!

Самый простой способ - просто перетащить иконки запуска в нужном порядке.

Поэтому откройте одно приложение, которое не прикреплено к панели запуска, например, «Параметры внешнего вида» на скриншоте. Это не должно быть закреплено, иначе это не сработает.

Затем вы не перетаскиваете значок, который не будет закреплен, потому что это не повлияет на положение специального элемента «Запуск приложений», а просто закрепите значок перетаскивания на новое место. Вместо этого перетащите все значки снизу / справа (работает для обеих ориентаций пусковой установки) незакрепленного на прямо выше / слева от него. Таким образом вы перемещаете незакрепленный значок снизу / справа, не касаясь его.

Когда он достиг позиции, в которой вы хотите, чтобы все значки приложений, которые не были добавлены, вы закончили. Вы можете закрыть это окно и снова открыть его или новые, чтобы проверить, что он сработал.

Я хочу, чтобы это было легко сделать и запомнить!

Ваши закрепленные элементы запуска называются «фаворитами» и сохраняются как параметры dconf в вашем профиле пользователя. Вы можете просмотреть список избранных, открыв терминал и запустив

gsettings get com.canonical.Unity.Launcher favorites

. Это может выглядеть как пример ниже (форматирование форматирования, добавленное мной):

$ gsettings get com.canonical.Unity.Launcher favorites ['application://gnome-terminal.desktop', 'application://org.gnome.Nautilus.desktop', 'application://firefox.desktop', 'unity://running-apps', 'unity://desktop-icon', 'unity://devices']

Этот вывод представляет собой минималистичную пусковую установку с только терминальным значком Nautilus и Firefox. Следующий элемент - 'unity://running-apps', который является важным специальным элементом, который служит в качестве заполнителя для значков всех незакрепленных запущенных приложений. После этого появляется больше специальных элементов, а именно значок «Показать рабочий стол» и другой элемент-заполнитель, определяющий, где будут отображаться значки подключенных к съемным устройствам.

Единственный интересный для нас элемент - Запуск приложений ".

Вы делаете это, набрав команду

gsettings set com.canonical.Unity.Launcher favorites []

, но вместо пустого списка [], вам нужно передать , конечно, не перетащите значок в качестве последнего аргумента.

Например, учитывая описанную выше пусковую установку, чтобы отобразить запущенные значки приложений ниже «Показывать рабочий стол», но все еще над значками устройства, запустите это:

$ gsettings set com.canonical.Unity.Launcher favorites "['application://gnome-terminal.desktop', 'application://org.gnome.Nautilus.desktop', 'application://firefox.desktop', 'unity://desktop-icon', 'unity://running-apps', 'unity://devices']"

Изменения вступят в силу немедленно, поэтому запустите несколько незакрепленных приложений, чтобы убедиться, что вы поместили элемент в нужное положение и наслаждаться.

7
ответ дан 18 July 2018 в 11:57

Существует специальный невидимый элемент запуска под названием «Запуск приложений», который всегда присутствует в ваших избранных запусках, и определяет, в какой позиции появляются значки приложений, которые не работают. В вашем случае это, очевидно, как-то дошло до странной позиции, но это легко устранить.

Есть два способа: простой способ и, конечно же, простой путь командной строки; -)

Я хочу, чтобы это было легко сделать и помните!

Самый простой способ - просто перетащить иконки запуска в нужном порядке.

Поэтому откройте одно приложение, которое не прикреплено к панели запуска, например, «Параметры внешнего вида» на скриншоте. Это не должно быть закреплено, иначе это не сработает.

Затем вы не перетаскиваете значок, который не будет закреплен, потому что это не повлияет на положение специального элемента «Запуск приложений», а просто закрепите значок перетаскивания на новое место. Вместо этого перетащите все значки снизу / справа (работает для обеих ориентаций пусковой установки) незакрепленного на прямо выше / слева от него. Таким образом вы перемещаете незакрепленный значок снизу / справа, не касаясь его.

Когда он достиг позиции, в которой вы хотите, чтобы все значки приложений, которые не были добавлены, вы закончили. Вы можете закрыть это окно и снова открыть его или новые, чтобы проверить, что он сработал.

Я хочу, чтобы это было легко сделать и запомнить!

Ваши закрепленные элементы запуска называются «фаворитами» и сохраняются как параметры dconf в вашем профиле пользователя. Вы можете просмотреть список избранных, открыв терминал и запустив

gsettings get com.canonical.Unity.Launcher favorites

. Это может выглядеть как пример ниже (форматирование форматирования, добавленное мной):

$ gsettings get com.canonical.Unity.Launcher favorites ['application://gnome-terminal.desktop', 'application://org.gnome.Nautilus.desktop', 'application://firefox.desktop', 'unity://running-apps', 'unity://desktop-icon', 'unity://devices']

Этот вывод представляет собой минималистичную пусковую установку с только терминальным значком Nautilus и Firefox. Следующий элемент - 'unity://running-apps', который является важным специальным элементом, который служит в качестве заполнителя для значков всех незакрепленных запущенных приложений. После этого появляется больше специальных элементов, а именно значок «Показать рабочий стол» и другой элемент-заполнитель, определяющий, где будут отображаться значки подключенных к съемным устройствам.

Единственный интересный для нас элемент - Запуск приложений ".

Вы делаете это, набрав команду

gsettings set com.canonical.Unity.Launcher favorites []

, но вместо пустого списка [], вам нужно передать , конечно, не перетащите значок в качестве последнего аргумента.

Например, учитывая описанную выше пусковую установку, чтобы отобразить запущенные значки приложений ниже «Показывать рабочий стол», но все еще над значками устройства, запустите это:

$ gsettings set com.canonical.Unity.Launcher favorites "['application://gnome-terminal.desktop', 'application://org.gnome.Nautilus.desktop', 'application://firefox.desktop', 'unity://desktop-icon', 'unity://running-apps', 'unity://devices']"

Изменения вступят в силу немедленно, поэтому запустите несколько незакрепленных приложений, чтобы убедиться, что вы поместили элемент в нужное положение и наслаждаться.

7
ответ дан 24 July 2018 в 19:53

Как правильно объяснил ByteCommander, позиция unity://running-apps в списке схемы com.canonical.Unity.Launcher gsettings влияет на то, где появляются запущенные приложения, поэтому его ответ на вопрос. Чтобы продемонстрировать и протестировать это, я написал небольшой скрипт, результаты которого вы можете увидеть на скриншотах ниже.

Обратите внимание, как скрипт, вызываемый с индексом 1 и индексом 2, показывает, что два приложения терминала перемещаются вместе соответствующая позиция в панели запуска (т. е. запуск приложений, которые не входят в текущий список, сгруппированы вместе). Обратите внимание, что список начинается с индекса 0, который соответствующим образом берется значком хрома.

Примечание: если вы хотите, чтобы приложения были последними, достаточно использовать -1 как аргумент.

Сценарий

from gi.repository import Gio import sys def gsettings_get(schema, path, key): """Get value of gsettings schema""" if path is None: gsettings = Gio.Settings.new(schema) else: gsettings = Gio.Settings.new_with_path(schema, path) return gsettings.get_value(key) def gsettings_set(schema, path, key, value): """Set value of gsettings schema""" if path is None: gsettings = Gio.Settings.new(schema) else: gsettings = Gio.Settings.new_with_path(schema, path) if isinstance(value, list): return gsettings.set_strv(key, value) if isinstance(value, int): return gsettings.set_int(key, value) def main(): schema='com.canonical.Unity.Launcher' key='favorites' current_list = list(gsettings_get(schema,None,key)) running_index = current_list.index('unity://running-apps') position = int(sys.argv[1]) temp = current_list[position] current_list[position] = current_list[running_index] current_list[running_index] = temp gsettings_set(schema,None,key,current_list) if __name__ == '__main__': main()
2
ответ дан 18 July 2018 в 11:57

Как правильно объяснил ByteCommander, позиция unity://running-apps в списке схемы com.canonical.Unity.Launcher gsettings влияет на то, где появляются запущенные приложения, поэтому его ответ на вопрос. Чтобы продемонстрировать и протестировать это, я написал небольшой скрипт, результаты которого вы можете увидеть на скриншотах ниже.

Обратите внимание, как скрипт, вызываемый с индексом 1 и индексом 2, показывает, что два приложения терминала перемещаются вместе соответствующая позиция в панели запуска (т. е. запуск приложений, которые не входят в текущий список, сгруппированы вместе). Обратите внимание, что список начинается с индекса 0, который соответствующим образом берется значком хрома.

Примечание: если вы хотите, чтобы приложения были последними, достаточно использовать -1 как аргумент.

Сценарий

from gi.repository import Gio import sys def gsettings_get(schema, path, key): """Get value of gsettings schema""" if path is None: gsettings = Gio.Settings.new(schema) else: gsettings = Gio.Settings.new_with_path(schema, path) return gsettings.get_value(key) def gsettings_set(schema, path, key, value): """Set value of gsettings schema""" if path is None: gsettings = Gio.Settings.new(schema) else: gsettings = Gio.Settings.new_with_path(schema, path) if isinstance(value, list): return gsettings.set_strv(key, value) if isinstance(value, int): return gsettings.set_int(key, value) def main(): schema='com.canonical.Unity.Launcher' key='favorites' current_list = list(gsettings_get(schema,None,key)) running_index = current_list.index('unity://running-apps') position = int(sys.argv[1]) temp = current_list[position] current_list[position] = current_list[running_index] current_list[running_index] = temp gsettings_set(schema,None,key,current_list) if __name__ == '__main__': main()
2
ответ дан 24 July 2018 в 19:53

Как правильно объяснил ByteCommander, позиция unity://running-apps в списке схемы com.canonical.Unity.Launcher gsettings влияет на то, где появляются запущенные приложения, поэтому его ответ на вопрос. Чтобы продемонстрировать и проверить это, я написал небольшой скрипт, результаты которого вы можете увидеть на скриншотах ниже.

Обратите внимание, как скрипт, названный с индексом 1 и индексом 2, показывает, что два приложения для терминала перемещаются вместе соответствующая позиция в панели запуска (т. е. запуск приложений, которые не входят в текущий список, сгруппированы вместе). Обратите внимание, что список начинается с индекса 0, который соответственно берется значком хрома.

Примечание: если вы хотите, чтобы приложения были последними, достаточно использовать -1 в качестве аргумента.

Script

from gi.repository import Gio
import sys

def gsettings_get(schema, path, key):
    """Get value of gsettings schema"""
    if path is None:
        gsettings = Gio.Settings.new(schema)
    else:
        gsettings = Gio.Settings.new_with_path(schema, path)
    return gsettings.get_value(key)

def gsettings_set(schema, path, key, value):
    """Set value of gsettings schema"""
    if path is None:
        gsettings = Gio.Settings.new(schema)
    else:
        gsettings = Gio.Settings.new_with_path(schema, path)
    if isinstance(value, list):
        return gsettings.set_strv(key, value)
    if isinstance(value, int):
        return gsettings.set_int(key, value)

def main():
    schema='com.canonical.Unity.Launcher' 
    key='favorites'
    current_list = list(gsettings_get(schema,None,key))
    running_index = current_list.index('unity://running-apps')

    position = int(sys.argv[1])

    temp = current_list[position]
    current_list[position] = current_list[running_index]
    current_list[running_index] = temp
    gsettings_set(schema,None,key,current_list)
if __name__ == '__main__': main()
2
ответ дан 9 August 2018 в 02:25

Другие вопросы по тегам:

Похожие вопросы: