mons, 在X 上,快速管理三个监视器的POSIX shell script

分享于 

6分钟阅读

GitHub

  繁體 雙語
Bash script to quickly manage 2-monitors display using xrandr.
  • 源代码名称:mons
  • 源代码网址:http://www.github.com/Ventto/mons
  • mons源代码文档
  • mons源代码下载
  • Git URL:
    git://www.github.com/Ventto/mons.git
    Git Clone代码到本地:
    git clone http://www.github.com/Ventto/mons
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/Ventto/mons
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    

    LicenseLanguage (XRandR)Vote for monsDonate

    "mons是一个使用xrandr快速管理 2-monitors 显示器的shell script。"

    优惠

    • 不需要:posix兼容( 最小: xorg-xrandr )
    • 有用的: 完全适合 笔记本,快速和日常使用
    • 众所周知的:笔记本电脑模式,投影仪模式,重复,镜像和扩展
    • :选择一个或者两个上的监视器
    • 额外的: 在每个模式中循环使用一个快捷键
    • 自动 reset : 自动重置显示的守护进程模式
    安装
    • 封装( AUR )
    
    $ pacaur -S mons
    
    
    
    
    • 手册
    
    $ git clone --recursive https://github.com/Ventto/mons.git
    
    
    $ cd mons
    
    
    $ sudo make install
    
    
    
    

    注意:git模块需要 --recursive

    用法
    
    Without argument, it prints connected monitors list with their names and ids.
    
    
    Options are exclusive and can be used in conjunction with extra options.
    
    
    
    Information:
    
    
     -h Prints this help and exits.
    
    
     -v Prints version and exits.
    
    
    
    Two monitors:
    
    
     -o Primary monitor only.
    
    
     -s Second monitor only.
    
    
     -d Duplicates the primary monitor.
    
    
     -m Mirrors the primary monitor.
    
    
     -e <side>
    
    
     Extends the primary monitor to the selected side
    
    
     [ top | left | right | bottom ].
    
    
     -n <side>
    
    
     This mode selects the previous ones, one after another. The argument
    
    
     sets the side for the extend mode.
    
    
    
    More monitors:
    
    
     -O <mon>
    
    
     Only enables the monitor with a specified id.
    
    
     -S <mon1>,<mon2>:<pos>
    
    
     Only enables two monitors with specified ids. The specified position
    
    
     places the second monitor on the right (R) or at the top (T).
    
    
    
    Extra (in-conjunction options):
    
    
     --dpi <dpi>
    
    
     Set the DPI, a strictly positive value within the range [0 ; 27432].
    
    
     --primary <mon_name>
    
    
     Select a connected monitor as the primary output. Run the script
    
    
     without argument to print monitors information, the names are in the
    
    
     second column between ids and status. The primary monitor is marked
    
    
     by an asterisk.
    
    
    
    Daemon mode:
    
    
     -a Performs an automatic display if it detects only one monitor.
    
    
    
    
    示例

    两台显示器

    显示监视器列表:

    
    $ mons
    
    
    0: LVDS-1 (enabled)
    
    
    5: VGA-1
    
    
    
    

    你已经启用了一个,你想要扩展右边的第二个:

    
    $ mons -e right
    
    
    
    

    你只希望显示第二个:

     
    $ mons -s
    
    
    
     

    使用 -n 选项,依次执行每个 2-mons 模式:

    • 仅主监视器
    • 仅监视器
    • -n <side> 为边设置的扩展模式
    • 镜像
    • 重复

    如果你希望 switch 只包含一个快捷方式,则这里模式很有用。

    alt 2-monitors modes

    
    # Now in 'Second monitor mode'
    
    
    $ mons -n right # -> 'Extend mode'
    
    
    # Now in 'Extend mode'
    
    
    $ mons -n right # -> 'Mirror mode'
    
    
    
    

    三个监视器( 选择模式)

    显示监视器列表:

    
    $ mons
    
    
    Monitors: 3
    
    
    Mode: Selection
    
    
    0:* LVDS-1 (enabled)
    
    
    1: DP-1 (enabled)
    
    
    5: VGA-1
    
    
    
    

    你可能只需要显示第三个:

    
    $ mons -O 5
    
    
    
    

    你可能需要显示右边的第一个和第三个:

    
    $ mons -S 0,5:R
    
    
    
    

    像上面一样,但是你想要反转位置:

    
    $ mons -S 5,0:R
    
    
    
    

    DPI值

    你可能需要 switch 模式并设置DPI值。 将 --dpi <dpi> 选项与其他所有选项一起使用。

    
    $ mons [OPTIONS] --dpi <dpi>
    
    
    
    

    主监视器

    你可以选择你的显示器作为主要的一个。 你可以单独使用 --primary <mon_name> 选项,也可以与其他所有选项一起使用。 <mon_name> 指出现在已经连接监视器列表中的监视器名称( 例如: LVDS-1 或者 VGA-1 ):

    
    $ mons
    
    
    Monitors: 3
    
    
    Mode: Primary
    
    
    0:* LVDS-1 (enabled)
    
    
    5: VGA-1
    
    
    
    

    '*'字符表示监视器是主要的:

    
    $ mons --primary VGA-1
    
    
    Monitors: 3
    
    
    Mode: Primary
    
    
    0: LVDS-1 (enabled)
    
    
    5:* VGA-1
    
    
    
    

    守护进程模式

    尤它的对于 笔记本,拔掉附加监视器后,可以自动重置它的余的显示器。

    在后台运行 mons,如下所示:

    
    $ nohup mons -a>/dev/null 2>&1 & (all shells)
    
    
    $ mons -a &! (zsh)
    
    
    $ mons -a &; disown (bash)
    
    
    
    

    MAN  pos  监视器  Monit  Shell  shell-script  
    相关文章