如何让rxvt以全屏方式启动?

时间:2012-03-20 08:00:38

标签: rxvt

我无法在手册页中找到它 我正在使用debian squeeze mirror的rxvt-unicode-256color Gnome 3环境,在xorg.conf中启用了复合。

5 个答案:

答案 0 :(得分:16)

  1. 安装wmctrl

    $ sudo apt-get install wmctrl
    
  2. 创建扩展目录

    $ mkdir -p ~/.urxvt/ext/
    
  3. 为Rxvt

    创建一个插件
    $ vi ~/.urxvt/ext/fullscreen
    #!perl
    sub on_user_command {
        my ($self, $cmd) = @_;
        if ($cmd eq "fullscreen:switch") {
            my $dummy = `wmctrl -r :ACTIVE: -b toggle,fullscreen` ;
        }
    }
    
  4. 启用插件

    $ vi ~/.Xdefaults
    ...
    " Fullscreen switch
    URxvt.perl-ext-common:  fullscreen
    URxvt.keysym.F11:       perl:fullscreen:switch
    
  5. 现在,您可以使用F11键切换全屏。


    参考:

答案 1 :(得分:1)

这是一个简单的perl插件,它将以全屏模式启动urxvt(无需您按其他键):

#!/usr/bin/perl

sub on_start {
  my ($self) = @_;
  # This is hacky, but there doesn't seem to be an event after 
  # window creation
  $self->{timer} = urxvt::timer->new->after(0.1)->cb(sub {
      fullscreen $self
    });
  return;
}

sub fullscreen {
  my ($self) = @_;
  my $wid = $self->parent;
  my $err = `wmctrl -i -r $wid -b add,fullscreen`;
  warn "Error maximizing: $err\n" unless $? == 0;
  $self->{timer}->stop;
  delete $self->{timer};
  return;
}

不幸的是,当on_start被调用时,似乎wmctrl看不到窗口,所以我不得不使用一个计时器来延迟调用wmctrl直到窗口存在。

答案 2 :(得分:0)

在登录时直接进入全屏我把它放在~/.bashrc

的末尾
[[ $TERM == *"rxvt"* ]] && wmctrl -r :ACTIVE: -b add,fullscreen

根据Chu-Siang Lai' answer,您需要确保wmctrl已安装。

答案 3 :(得分:0)

这就是我的解决方法

  

调用urxvt后运行窗口设置。

Shell: zsh
Windowmanager: wmctrl

.zsrch

function urxvtmaxed () {
    # &! is a zsh-specific shortcut to both background and disown the process
    urxvt -e zsh -c "RUN='wmctrl -r :ACTIVE: -b add,maximized_vert,maximized_horz' zsh" &!
}

function urxvtfull () {
    # &! is a zsh-specific shortcut to both background and disown the process
    urxvt -e zsh -c "RUN='wmctrl -r :ACTIVE: -b add,fullscreen' zsh" &!
}

### ======================================================
### Run Commands After zsh invoked

eval "$RUN"

# Example
# RUN='my_prog opt1 opt2' zsh

### Run Commands After zsh invoked END
### ======================================================

现在在zsh中,您可以运行urxvtmaxedurxvtfull以启动urxvt,然后调整窗口大小。

  

注意:wmctrl无法在Wayland会话中正常运行   Windows违反Wayland的安全政策。

If $WINDOWID is available

urxvt -e zsh -c "RUN='wmctrl -i -r \$WINDOWID -b add,fullscreen' zsh" &!

答案 4 :(得分:-1)

据我所知,你不能。但是,我找到了一个解决方法:

使用

wmctrl -l

找出您的rxvt窗口的名称。可能是它的“rxvt”,所以

wmctrl -r rxvt -b toggle,fullscreen

将最大化该窗口。

你必须把这个(第二个命令)放在一个脚本中,在窗口管理器(例如,openbox,metacity)加载后读取。可能在您的.xinitrc文件中。