Linux-Mint Maya MateはCompizでAlt-F1メニューとAlt-F2実行ダイアログを失います


2

私が好きなLinuxのミント13メイトの Alt-F1メニューとAlt-F2、実行ダイアログを、しかし、すぐに私はCompizのをインストールしてこれらのキーは、非機能になりました。

ConpizにはGnome互換性設定パネルがあり、これらのキーを設定できますが、Compix設定パネルを使用しても違いはありません(厳密には、MateはGnomeではないためです)。

Compizでこれら2つのショートカットキーをactonに戻す方法はありますか?

回答:


6

MintフォーラムのAlt + F2 http://forums.linuxmint.com/viewtopic.php?f=206&t=104169

要するに(スレッド全体を読み飛ばしたい人向け)。以下のコードをmate-run.cに貼り付けます

#include <stdio.h>
#include <stdlib.h>
#include <X11/Xlib.h>

void die(const char *message)
{
   fputs(message, stderr);
   exit(1);
}

Atom get_atom(Display *display, const char *atom_name)
{
   Atom atom = XInternAtom(display, atom_name, False);
   if (atom == None)
      die("can't find an atom I need");
   return atom;
}

int main()
{
   Display *display;
   Atom gnome_panel_atom, run_atom;
   XClientMessageEvent event;

   display = XOpenDisplay(NULL);
   if (display == NULL)
      die("can't open display");

   gnome_panel_atom = get_atom(display, "_MATE_PANEL_ACTION");
   run_atom = get_atom(display, "_MATE_PANEL_ACTION_RUN_DIALOG");

   event.type = ClientMessage;
   event.window = DefaultRootWindow(display);
   event.message_type = gnome_panel_atom;
   event.format = 32;
   event.data.l[0] = run_atom;
   event.data.l[1] = (Time)(time(NULL) * 1000);

   XSendEvent(display, event.window, False, StructureNotifyMask,
              (XEvent *)&event);

   XCloseDisplay(display);

   return 0;
}

コンパイルしてインストールします:

$ gcc mate-run.c -o mate-run -L/usr/X11R6/lib -lX11
$ chmod 755 mate-run
$ sudo cp mate-run /usr/local/bin

そして、単にCCSM>コマンドで、「mate-run」を「ALT + F2」キーコンボにリンクするコマンドを追加します。

Maya x64で動作します(ビルドエッセンシャルとその他のものがあるので、X11ライブラリとgccをインストールするためにインストールするものをチェックすることをお勧めします)。

フォーラムで発見すること以外、私はこれに賛成に値しません。


1
ありがとうボジャン。私はうまく動作しますが、次の追加のbashステップで焦点を合わせる と、より良く動作することがわかりますmate-run; sleep .1; xdotool windowactivate $(wmctrl -lx | sed -nr 's/^([^ ]+).* mate-panel.Mate-panel .* Run Application/\1/p')
。– Peter.O

おかげで、テキストフィールドをクリックするのを忘れることが多くなり、CCSMにはフォーカス保護Windowsオプションがなくなったため、今ではずっと良くなっています。また、Alt + F1とAlt + F2の両方の問題を、同じように簡単にコンパイルできる1つの実行可能ファイル(forums.linuxmint.com/viewtopic.php?f=219&p=615178
Bojan Markovic)

0

標準的な方法はないように思われるのでAlt-F1、メインメニューを開くことを可能にするスクリプトを作成しました。これは、利用パネルアプレット Main Menu(メインMATEメニュー)

  • 新しいpsanelアプレットを追加します。 Main Menu
  • 上部パネルの左端のアイコンにします。別の位置が必要な場合は、それに応じて最初のマウスムーブ」を変更して、アイコンの画面位置をクリックします。
  • このスクリプトをPATHのどこかに配置します

    #!/bin/bash
    # name: mouse-click-screen
    { eval $(xdotool getmouselocation --shell)  # save current mouse position
      sleep .15               # It needs a delay (?!).. Your Mileage May Vary
      xdotool mousemove --sync ${1:-10} ${2:-10} click 1
      xdotool mousemove --sync $X $Y           # restore saved mouse position
    } 2>/dev/null
    
  • [システム]-> [設定]-> [キーボードショートカット]で、[追加]をクリックします。
    compizはデスクトップマネージャーであるため、以前のAlt-F1との衝突はありません)

    Name:     main-menu    
    Command:  mouse-click-screen
    Shortcut: Alt+F1
    

それでおしまい。Alt+F2まだ保留中です。しかし、少なくともAlt+F1動作します。完璧ではありませんが、かなりうまく機能します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.