Как я могу запустить urxvt как дочерний элемент работающего экземпляра XWin?

1087
Thiago de Arruda

Я настроил XWin для автоматического запуска при входе в систему. Это дает мне иконку в трее, где я могу запускать X-приложения, которые будут дочерними для экземпляра XWin, и им будет задана корректность среды, как я работал в ОС на основе Unix (XWin запущен через оболочку входа в систему, которая настраивает среду).

Проблема в том, что я не могу найти способ запуска приложений x (urxvt) как дочерних элементов этого экземпляра XWin. Это нарушает запуск интерактивных оболочек, так как мне приходится использовать оболочки входа для каждого терминала, который мне нужно открыть.

Как я могу имитировать действие меню приложения иконки в трее XWin? (Например: из ярлыка меню Пуск)

1

1 ответ на вопрос

1
mpy

If you are comfortable with the XWin-Menu, you can expand that by editing /etc/X11/system.XWinrc:

 // Make some menus... menu apps { xterm exec "xterm" "Emacs" exec "emacs" notepad exec notepad xload exec "xload -display %display%" # Comment urxvt exec "urxvt" # <- added by me } 

After saving, don't forget to Reload XWinrc to apply changes.


However, I use the following approach (I wanted to pin URxvt to the taskbar) -- it sounds really cumbersome, and it probably is... but hey it's Windows ;)

First, I created a c:\cygwin\cygwin.bat

@echo off C: chdir C:\cygwin\bin zsh --login -i -c 'urxvt' 

Adapt path and shell to your situation.

To configure the appearance of URxvt I use these lines in .Xdefaults:

URxvt.borderColor: black URxvt.internalBorder: 4 URxvt.background: black URxvt.foreground: orange ! URxvt.inheritPixmap: True ! URxvt.shading: 40 ! URxvt.tintColor: orange URxvt.scrollBar: False URxvt.geometry: 150x60+500+100 URxvt.font: -*-clean-bold-r-normal-*-17-*-*-*-*-*-*-* 

change to your preferences or uncomment with ! if you like the default.

Then I created a shortcut (also in C:\cygwin) so that I can customize the icon and renamed that shortcut to ZSH_tray. This shortcut gets pinned to the taskbar.

My main problem was (and probably yours, too) is, that there is a shell windows in addition to the URxvt window. To prevent that I use Tray-It:

  1. Install & start Tray-It
  2. Start URxvt via the shortcut
  3. In Tray-IT:
    • right click the corresponding entry -> Place in Systray
    • Edit -> Profiles
    • Config according to screenshots
  4. Hide Tray-It itself and start it with windows (Edit -> Options)

config of trayit

Извините, но я не это имел в виду. Моя проблема в том, что я хочу запустить процесс rxvt как дочерний элемент оболочки входа в систему, используемой для запуска XWin, поэтому он будет правильно наследовать среду, которую я обычно настраиваю в Unixes. Кстати, для запуска приложений X без окна DOS просто запустите его с исполняемым файлом cygwin 'run.exe' (man run). Thiago de Arruda 11 лет назад 0
@ThiadodeArruda: О да, я не понял твою точку зрения, извини. Я думаю, что ваш отредактированный вопрос теперь яснее, но, к сожалению, у меня нет решения для этого. - И спасибо за подсказку с `run`, мой представленный обходной путь выглядит теперь глупо ... mpy 11 лет назад 0

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