web-dev-qa-db-ja.com

Nemoをフォアグラウンドで開始する方法は?

Ubuntu 13.10 SaucyリポジトリからNemoをインストールし、Nautilusを here のように置き換えました。

$ xdg-mime default nemo.desktop inode/directory application/x-gnome-saved-search
$ gsettings set org.gnome.desktop.background show-desktop-icons false
$ gsettings set org.nemo.desktop show-desktop-icons true

さて、UnityランチャーからNemoを起動すると、そのウィンドウが画面上の他のウィンドウの下に配置されます。私は、NemoがNautilusや他のすべてのアプリケーションと同じようにフォアグラウンドで起動するようにしたいと考えています。

3
Tamás Barta

私は後で他のアプリで問題を経験し始め、その後、Nemoではなく一般的に解決策を探し始め、 buntu Forums 、および two = on buntuに質問 も同様。

これはCompizが原因であるため、compizconfig-settings-managerSudo apt-get install compizconfig-settings-managerを使用し、Alt + F2でccsmコマンドを開始するか、端末から、または "CompizConfig Settings Manager"を検索する必要があります。ダッシュ)。

  1. 「一般オプション」を開きます
  2. [フォーカスとレイズビヘイビア]タブで、フォーカス防止レベルをオフに設定します

これらの手順を実行すると、新しく開いたすべてのウィンドウが期待どおりにフォアグラウンドに表示されます。

8
Tamás Barta

バックグラウンドで起動するnemo(およびその他のアプリケーション)に関する質問は、Ubuntu 14.04でも有効です。

自分で提供した解決策(BartaTamás、回答1)も14.04でこの問題を解決しています。

  1. (インストールして)compizconfig-settings-managerを開きます
  2. 「一般」で「一般オプション」を開きます
  3. 「フォーカスと行動を上げる」タブを選択します
  4. 「焦点防止レベル」を「オフ」に設定します

そして、新しく開いたすべてのアプリケーションが前面に表示されます。

2
GAJ

より一般的な(しかしはるかに柔軟な)ソリューションは、devilspie2を使用することです。

パッケージをインストールしますdevilspie2、コマンド/usr/bin/devilspie2スタートアップアプリケーションに、ファイルを作成します~/.config/devilspie2/window_open.luaそして、次の内容を入力します。

if (get_application_name() == "nemo") then
  focus_window()
end

他のコマンドを簡単に追加できるので、画面の中央にNemoも表示したい場合は、これを試してください:

if (get_application_name() == "nemo") then
  focus_window()
  center()
end

これは、Compizをサポートしているウィンドウマネージャーだけでなく、ほとんどのウィンドウマネージャーで動作するはずです。

デバッグ用(devilspie2 --debugシェルから)、おそらく次のようなものを持つことをお勧めします。

function debug_output(header, window_information)
  if window_information == "" then
    debug_print(header .. "---")
  else
    debug_print(header .. window_information)
  end
end

debug_output("Application:   ", get_application_name())
debug_output("Window Name:   ", get_window_name())
debug_output("Window Type:   ", get_window_type())
debug_output("Window Class:  ", get_window_class())
debug_output("Window Role:   ", get_window_role())

geometry = string.format("x=%d, y=%d, width=%d, height=%d",
                         get_window_geometry())
debug_output("Geometry:      ", geometry)

if (get_application_name() == "nemo") then
  focus_window()
end
0
mzuther