в Ubuntu 18.04, когда я открываю второй текстовый файл, он открывается в новом окне из поля.
в Ubuntu 19.10, когда я открываю второй текстовый файл, он открывается в существующем окне новой вкладкой.
Я попробовал ответы в этом сообщении, настраивают gedit, чтобы всегда открыться в новом окне, но никаком успехе.
Как я могу достигнуть этого в Ubuntu 19.10?
Отредактируйте /usr/share/applications/gedit.desktop
путем изменения следующей строки:
Exec=gedit %U
путем добавления --new-window
опция:
Exec=gedit --new-window %U
Это определило бы, чтобы всегда открыться gedit
на новом окне.
P.S.: Вот мое все gedit.desktop
файл с этой опцией, которая работала хорошо над 18,04:
[Desktop Entry]
Name=Text Editor
Comment=Edit text files
Exec=gedit --new-window %U
Terminal=false
Type=Application
StartupNotify=true
Icon=gedit
Categories=GNOME;GTK;Utility;TextEditor;
X-GNOME-DocPath=gedit/gedit.xml
X-GNOME-FullName=gedit Text Editor
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=gedit
X-GNOME-Bugzilla-Component=general
X-GNOME-Bugzilla-Version=3.28.1
X-GNOME-Bugzilla-ExtraInfoScript=/usr/share/gedit/gedit-bugreport.sh
Actions=new-window;new-document;
Keywords=Text;Editor;Plaintext;Write;
X-Ubuntu-Gettext-Domain=gedit
X-AppStream-Ignore=true
[Desktop Action new-window]
Name=New Window
Exec=gedit --new-window
[Desktop Action new-document]
Name=New Document
Exec=gedit --new-document
Можно отметить, что опция New Document не откроет новое окно, можно добавить снова это --new-window
опция к нему (таким образом, это было бы Exec=gedit --new-document --new-window
вместо Exec=gedit --new-document
)
По этой ссылке https://developer.gnome.org/desktop-entry-spec/ Если в файле .desktop для параметра Entry DBusActivatable
установлено значение true
, он будет игнорировать Exec
.
DBusActivatable:
логическое значение, указывающее, поддерживается ли для этого активация D-Bus. применение. Если этот ключ отсутствует, значение по умолчанию равно false. Если значение true, тогда реализации должны игнорировать ключ Exec и отправить сообщение D-Bus для запуска приложения. См. Активация D-Bus для получения дополнительной информации о том, как это работает. Приложения должны по-прежнему включать строки Exec= в файлы рабочего стола для совместимости с реализации, которые не понимают ключ DBusActivatable.
Ubuntu 19.10 имеет эту запись DBusActivatable=true
для файла gedit .desktop, который является файлом org.gnome.gedit.desktop
..
Этот ответ является просто обходным путем, потому что просто чтобы ключ Exec работал в этом случае. Я делаю DBusActivatable=false
, не зная преимуществ этого ключа (https://developer.gnome.org/desktop- entry-spec/#dbus) и его реализация в более новых версиях Ubuntu, начиная с 19.10.
Хорошо, теперь мы устанавливаем DBusActivatable=false
, это означает, что строка Exec=
будет работать.
Так что в моем случае я изменил
Exec = gedit %U
на
Exec = gedit --new-window
с man gedit
, вы можете выбрать параметры для [Desktop Action new-document]
--new-window
Create a new toplevel window in an existing instance of gedit.
--new-document
Create a new document in an existing instance of gedit.
-s, --standalone
Run gedit in standalone mode.