fvwm使用 1_vw3a1101使用说明书

fvwm使用 1_vw3a1101使用说明书fvwm是一个X11的窗口管理器,提供虚拟窗口,提供多个桌面。提供键盘命令,控制窗口焦点。支持配置命令和动作命令。fvwm启动时读取配置文件,文件可以在多个位置,但是只有第一个找到的生效:$HOME/.fvwm/config/usr/local/share/fvwm/config$HOME/.fvwm/.fvwm2rc$HOME/.fvwm2rc/usr/local

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

fvwm是一个X11的窗口管理器,提供虚拟窗口,提供多个桌面。

提供键盘命令,控制窗口焦点。

支持配置命令和动作命令。

fvwm启动时读取配置文件,文件可以在多个位置,但是只有第一个找到的生效:

$HOME/.fvwm/config
/usr/local/share/fvwm/config

$HOME/.fvwm/.fvwm2rc
$HOME/.fvwm2rc
/usr/local/share/fvwm/.fvwm2rc
/usr/local/share/fvwm/system.fvwm2rc
/etc/system.fvwm2rc

Fvwm sets two environment variables which are inherited by its children. These are $DISPLAY which describes the display on which fvwm is running. $DISPLAY may be unix:0.0 or :0.0, which doesn’t work too well when passed through ssh to another machine, so $HOSTDISPLAY is set to a network-ready description of the display. $HOSTDISPLAY always uses the TCP/IP transport protocol (even for a local connection) so $DISPLAY should be used for local connections, as it may use Unix-domain sockets, which are faster.

Fvwm has three special functions for initialization: StartFunction, which is executed on startups and restarts; InitFunction and RestartFunction, which are executed during initialization and restarts (respectively) just after StartFunction.

Fvwm has also a special exit function: ExitFunction, executed when exiting or restarting before actually quitting. It could be used to explicitly kill modules, etc.

fvwm配置的重要方面:

图标 图片:F

vwm can load .xbm, .xpm, .png and .svg images. XBM images are monochrome. Fvwm can always display XBM files. XPM and PNG formats are color images. SVG is a vector graphics image format. Compile-time options determine whether fvwm can display XPM, PNG or SVG icons and images. See the INSTALL.fvwm file for more information.

模块:

A module is a separate program which runs as a separate Unix process but transmits commands to fvwm to execute. Users can write their own modules to do any weird or bizarre manipulations without bloating or affecting the integrity of fvwm itself.

Modules must be spawned by fvwm so that it can set up two pipes for fvwm and the module to communicate with. The pipes are already open for the module when it starts and the file descriptors for the pipes are provided as command line arguments.

Modules can be spawned by fvwm at any time during the X session by use of the Module command. Modules can exist for the duration of the X session, or can perform a single task and exit. If the module is still active when fvwm is told to quit, then fvwm closes the communication pipes and waits to receive a SIGCHLD from the module, indicating that it has detected the pipe closure and has exited. If modules fail to detect the pipe closure fvwm exits after approximately 30 seconds anyway. The number of simultaneously executing modules is limited by the operating system’s maximum number of simultaneously open files, usually between 60 and 256.

Modules simply transmit commands to the fvwm command engine. Commands are formatted just as in the case of a mouse binding in the config setup file. Certain auxiliary information is also transmitted, as in the sample module FvwmButtons.

Please refer to the Module Commands section for details.

字体:

键盘快捷按键:

内置的键盘和鼠标绑定:

The following commands are built-in to fvwm:

Key Help R A Popup MenuFvwmRoot
Key F1 R A Popup MenuFvwmRoot
Key Tab A M WindowList Root c c NoDeskSort
Key Escape A MC EscapeFunc
Mouse 1 R A Menu MenuFvwmRoot
Mouse 1 T   A FuncFvwmRaiseLowerX Move
Mouse 1 FS  A FuncFvwmRaiseLowerX Resize
Mouse 2 FST A FuncFvwmRaiseLowerX Move
AddToFunc FuncFvwmRaiseLowerX
+ I Raise
+ M $0
+ D Lower

命令执行:

If fvwm encounters a command that it doesn’t recognize, it checks to see if the specified command should have been

Function (rest of command)
or

Module (rest of command)
This allows complex functions or modules to be invoked in a manner which is fairly transparent to the configuration file.

Example: the config file contains the line

命令扩展:

Whenever an fvwm command line is executed, fvwm performs parameter expansion. A parameter is a ‘$’ followed by a word enclosed in brackets ($[…]) or a single special character. If fvwm encounters an unquoted parameter on the command line it expands it to a string indicated by the parameter name. Unknown parameters are left untouched. Parameter expansion is performed before quoting. To get a literal ‘$’ use “$$”.

If a command is prefixed with a ‘-‘ parameter expansion isn’t performed. This applies to the command immediately following the ‘-‘, in which the expansion normally would have taken place. When uesed together with other prefix commands it must be added before the other prefix.

Example:

Pick -Exec exec xmessage ‘$[w.name]’
opens an xmessage dialog with “$[w.name]” unexpanded.

The longer variables may contain additional variables inside the name, which are expanded before the outer variable.

In earlier versions of fvwm, some single letter variables were supported. It is deprecated now, since they cause a number of problems. You should use the longer substitutes instead.

Example:

# Print the current desk number, horizontal page number
# and the window’s class (unexpanded here, no window).
Echo $[desk.n] $[page.nx] $[w.class]
Note: If the command is called outside a window context, it prints “$[w.class]” instead of the class name. It is usually not enough to have the pointer over a window to have a context window. To force using the window with the focus, the Current command can be used:

Current Echo $[desk.n] $[page.nx] $[w.class]
The parameters known by fvwm are:

$$
A literal ‘$’.

$.
The absolute directory of the currently Read file. Intended for creating relative and relocatable configuration trees. If used outside of any read file, the returned value is ‘.’.

$0 to $9
The positional parameters given to a complex function (a function that has been defined with the AddToFunc command). “$0” is replaced with the first parameter, “$1” with the second parameter and so on. If the corresponding parameter is undefined, the “$…” is deleted from the command line.

$*
All positional parameters given to a complex function. This includes parameters that follow after “$9”.

$[n]
The n:th positional parameter given to a complex function, counting from 0. If the corresponding parameter is undefined, the “$[n]” is deleted from the command line. The parameter is expanded unquoted.

$[n-m]
The positional parameters given to a complex function, starting with parameter n and ending with parameter m. If all the corresponding parameters are undefined, the “$[…]” is deleted from the command line. If only some of the parameters are defined, all defined parameters are expanded, and the remaining silently ignored. All parameters are expanded unquoted.

$[n-]
All the positional parameters given to a complex function, starting with parameter n. If all the corresponding parameters are undefined, the “$[…]” is deleted from the command line. All parameters are expanded unquoted.

$[*]
All the positional parameters given to a complex function. This is equivalent of $[0-].

$[version.num]
The version number, like “2.6.0”.

$[version.info]
The version info, like ” (from cvs)”, empty for the official releases.

$[version.line]
The first line printed by the –version command line option.

$[vp.x] $[vp.y] $[vp.width] $[vp.height]
Either coordinate or the width or height of the current viewport.

$[desk.n]
The current desk number.

$[desk.name<n>]
These parameters are replaced with the name of the desktop number <n> that is defined with the DesktopName command. If no name is defined, then the default name is returned.

$[desk.width] $[desk.height]
The width or height of the whole desktop, i.e. the width or height multiplied by the number of pages in x or y direction.

$[desk.pagesx] $[desk.pagesy]
The number of total pages in a desk in x or y direction. This is the same as the values set by DesktopSize.

$[page.nx] $[page.ny]
The current page numbers, by X and Y axes, starting from 0. page is equivalent to area in the GNOME terminology.

$[w.id]
The window-id (expressed in hex, e.g. 0x10023c) of the window the command was called for or “$[w.id]” if no window is associated with the command.

$[w.name] $[w.iconname] $[w.class] $[w.resource] $[w.visiblename] $[w.iconfile] $[w.miniiconfile] $[w.iconfile.svgopts] $[w.miniiconfile.svgopts]
The window’s name, icon name, resource class and resource name, visible name, file name of its icon or mini icon defined with the Icon or MiniIcon style (including the full path if the file was found on disk), and (if fvwm is compiled with SVG support) the icon or mini icon svg rendering options (including the leading colon), or unexpanded “$[w.<attribute>]” string if no window is associated with the command.

Note, the first 5 variables may include any kind of characters, so these variables are quoted. It means that the value is surrounded by single quote characters and any contained single quote is prefixed with a backslash. This guarantees that commands like:

Style $[w.resource] Icon norm/network.png
work correctly, regardless of any special symbols the value may contain, like spaces and different kinds of quotes.

In the case of the window’s visible name, this is the value returned from the literal title of the window shown in the titlebar. Typically this will be the same as $[w.name] once expanded, although in the case of using IndexedWindowName then this is more useful a distinction, and allows for referencing the specific window by its visible name for inclusion in things like Style commands.

$[w.x] $[w.y] $[w.width] $[w.height]
Either coordinate or the width or height of the current window if it is not iconified. If no window is associated with the command or the window is iconified, the string is left as is.

$[w.desk]
The number of the desk on which the window is shown. If the window is sticky the current desk number is used.

$[w.layer]
The layer of the window.

$[cw.x] $[cw.y] $[cw.width] $[cw.height]
These work like $[w….] but return the geometry of the client part of the window. In other words: the border and title of the window is not taken into account.

$[i.x], $[it.x], $[ip.x] $[i.y], $[it.y], $[ip.y] $[i.width], $[it.width], $[ip.width] $[i.height], $[it.height], $[ip.height]
These work like $[w….] but return the geometry of the icon ($[i….]), the icon title ($[it….]) or the icon picture ($[ip….]).

$[pointer.x] $[pointer.y]
These return the position of the pointer on the screen. If the pointer is not on the screen, these variables are not expanded.

$[pointer.wx] $[pointer.wy]
These return the position of the pointer in the selected window. If the pointer is not on the screen, the window is iconified or no window is selected, these variables are not expanded.

$[pointer.cx] $[pointer.cy]
These return the position of the pointer in the client portion of the selected window. If the pointer is not on the screen, the window is shaded or iconified or no window is selected, these variables are not expanded.

$[screen]
The screen number fvwm is running on. Useful for setups with multiple screens.

$[fg.cs<n>] $[bg.cs<n>] $[hilight.cs<n>] $[shadow.cs<n>]
These parameters are replaced with the name of the foreground (fg), background (bg), hilight (hilight) or shadow (shadow) color that is defined in colorset <n> (replace <n> with zero or a positive integer). For example “$[fg.cs3]” is expanded to the name of the foreground color of colorset 3 (in rgb:rrrr/gggg/bbbb form). Please refer to the Colorsets section for details about colorsets.

$[schedule.last]
This is replaced by the id of the last command that was scheduled with the Schedule command, even if this command was already executed.

$[schedule.next]
This is replaced by the id the next command used with Schedule will get (unless a different id is specified explicitly).

$[cond.rc]
The return code of the last conditional command. This variable is only valid inside a function and can not be used in a conditional command. Please refer to the section Conditional Commands in the command list.

$[func.context]
The context character of the running command as used in the Mouse, Key or PointerKey command. This is useful for example with:

Mouse 3 FS N WindowShade $$[func.context]
$[gt.str]
return the translation of str by looking in the current locale catalogs. If no translation is found str is returned as is. See the LocalePath command.

$[…]
If the string within the braces is neither of the above, fvwm tries to find an environment variable with this name and replaces its value if one is found (e.g. “$[PAGER]” could be replaced by “more”). Otherwise the string is left as is.

Some examples can be found in the description of the AddToFunc command.

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/186375.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C语言中voliate关键字的作用「建议收藏」

    C语言中voliate关键字的作用「建议收藏」一个变量用voliate关键字修饰,是要告诉编译器,这个变量的值随时可能发生变化,所以编译器每次都必须从变量对应的内存地址中获取该变量的值。voliate的常用方式:当一个变量表示某寄存器的值时,需要用voliate修饰,这样编译器就不会优化,所谓优化,就是每次去读取寄存器里面的数据,作为这个变量的值,问题在于,如果程序中已经改变了该变量的值,那么就会导致这个变量值跟寄存器里面的值不一样,从而导致冲突,用voliate就会避免这个问题,因为不会再去寄存器读取数据作为该变量的值了,而是直接去变量对应的内存地

    2022年5月18日
    71
  • 深度学习笔记三:反向传播(backpropagation)算法[通俗易懂]

    深度学习笔记三:反向传播(backpropagation)算法[通俗易懂]接上一篇的最后,我们要训练多层网络的时候,最后关键的部分就是求梯度啦。纯数学方法几乎是不可能的,那么反向传播算法就是用来求梯度的,用了一个很巧妙的方法。反向传播算法应该是神经网络最基本最需要弄懂的方法了,要是反向传播方法不懂,后面基本上进行不下去。非常推荐的是Howthebackpropagationalgorithmworks在最开始的博客中提过,这本书是这篇笔记用到的教材之

    2022年5月5日
    67
  • About Heartbleed

    About HeartbleedTwoarticlesforheartbleedbuhttp://gizmodo.com/how-heartbleed-works-the-code-behind-the-internets-se-1561341209http://blog.existentialize.com/diagnosis-of-the-openssl-heartbleed-bug.html

    2022年7月25日
    8
  • 电商后台管理系统主页布局[通俗易懂]

    电商后台管理系统主页布局[通俗易懂]目录一点睛1整体布局1.1先上下划分,在左右划分。1.2菜单分两级,并且可以折叠。2通过接口获取菜单数据二代码1新增主页Home.vue2注册组件element.js3修改main.js4新增欢迎组件Welcome.vue5修改路由index.js三测试效果四代码参考一点睛1整体布局1.1先上下划分,在左右划分。1.2菜单分两级,并且可以折叠。2通过接口获取菜单数据通过ax…

    2022年5月22日
    49
  • ubuntu copy命令「建议收藏」

    ubuntu copy命令「建议收藏」cp(copy)命令该命令的功能是将给出的文件或目录拷贝到另一文件或目录中。语法:cp[选项]源文件或目录目标文件或目录说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。该命令的各选项含义如下:-a该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。-d拷贝时保留链接。

    2025年7月25日
    4
  • cocoapods安装过程_如何开发ios应用

    cocoapods安装过程_如何开发ios应用原文链接: iOS开发-CocoaPods安装和使用教程本文是对原文一些错误的修正已经添加了自己的理解。CocoaPods安装和使用教程Code4App原创文章。转载请注明出处:http://code4app.com/article/cocoapods-install-usage目录CocoaPods是什么?如何下载和安装CocoaPods?如何使用CocoaPods?场景1:利用CocoaP

    2025年8月22日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号