|
|
| |
fvwm-menu-directory(1) |
Fvwm Utilities |
fvwm-menu-directory(1) |
fvwm-menu-directory - builds a directory browsing menu for fvwm
fvwm-menu-directory [ --help|-h|-? ] [
--version|-V ] [ --name|-na NAME ] [
--title|-t NAME ] [ --item|-it NAME ] [
--icon-title|-icon-t XPM ] [ --icon-dir|-icon-d
XPM ] [ --icon-file|-icon-f XPM ] [
--icon-app|-icon-a XPM ] [ --wm-icons ] [
--dir|-d NAME ] [ --order|-o NUM ] [
--[no]all|-a ] [ --[no]links|-l ] [
--xterm|-x CMD ] [ --exec-title|-exec-t CMD ] [
--exec-file|-exec-f CMD ] [ --exec-app|-exec-a
[CMD] ] [ --command-title|-command-t CMD ] [
--command-file|-command-f CMD ] [
--command-app|-command-a CMD ] [ --[no]reuse|-r ]
[ --[no]check-subdirs|-ch ] [ --special-dirs|-s
[VALUE] ] [ --[no]memory-for-speed|-mem ] [
--menu-style|-men NAME ] [ --func-name|-f NAME ]
A perl script which provides an output to read in with PipeRead to build an fvwm
menu containing a directory listing. Almost everything can be configured.
The title item with its own attached action is usually added to the menu. This
may be used to define an action for the directory for which the menu is built,
such as starting a terminal in this directory (the default). However, this may
annoy some users. To disable the title action use --command-title
"", to remove the title completely use --title "".
- --help
- show the usage and exit
- --version
- show version and exit
- --name name
- menu name, used only with --reuse, default is MenuBrowser
- --title title
- menu title format, default is '%*-40p' - last 40 characters of the current
full path. TAB can be specified as '\t', but in .fvwm2rc you should
specify a double backslash or a real TAB.
Format specifiers: %d - the current
directory name %p - the current directory full
path
These specifiers can receive an optional integer size,
positive for right adjusted string or negative for left adjusted,
example: %8x; and optional *num or *-num, which
means to leave only the first or last (if minus) num of chars, the num
must be greater than 3, since the striped part is replaced with
"...", example: %*30x. Both can be combined: %-10*-20x, this
instructs to get only the 20 last characters, but if the length is less
then 10 - to fill with up to 10 spaces on the right.
- --item format
- menu item format, default is '%n'. TAB and width modifiers for
%n, %N and
%s can be specified as described in --title
above. Note, specifying a non default format slows the script.
Format specifiers:
%n - file/dir name (without the path)
%N - file/dir name (full with the path)
%d - file/dir date (yyyy-mm-dd HH:MM:SS)
%D - file/dir date (yyyy-mm-dd)
%s - file/dir size (in bytes)
%t - file/dir type (File|Dir |Link|Sock|Blck|Char|Pipe)
%T - file/dir type (F|D|L|S|B|C|P)
Example: --title '%*-40p\tDate, Type\tSize' --item '%*40n\t%d
%t\t%s'
- --icon-title icon
- menu title icon, default is none
- --icon-dir icon
- menu dir icon, default is none
- --icon-file icon
- menu file icon, default is none
- --icon-app icon
- menu application icon, default is none
- --wm-icons
- define icon names suitable for use with wm-icons package. Currently this
is equivalent to: --icon-title menu/folder-open.xpm --icon-item
menu/file.xpm --icon-dir menu/folder.xpm --icon-app menu/utility.xpm.
- --dir dir
- starting dir, default is ${HOME-.}
- --order number
- in the range (-6 .. 6), default is 5:
1 - do not sort, 2 - dirs first, 3 - files first
4 - sort by name, 5 - dirs first, 6 - files first
Negative number represents reverse order.
- --[no]all
- show hidden files, like in 'ls -A', default is --noall
- --[no]links
- follow linked directories, default is --nolinks
- --xterm command
- X terminal call, default is 'xterm -e'
- --exec-title command
- an fvwm Exec command on directory title (usually the shell), default is
${SHELL-/bin/sh}. '-' means no Exec command, i.e. Nop. If the command is
not started with '^' X terminal call is prepended. The command is started
in the currently browsed directory.
- --exec-file command
- an fvwm Exec command on regular files, default is ${EDITOR-vi}. '-' means
no Exec command, i.e. Nop. If the command is not started with '^' X
terminal call is prepended. The actual file name is appended to the
command.
- --exec-app [command]
- an fvwm Exec command on +x files, default is '-', which means the same
command as on regular files. If no command is given, it is assumed to be
empty - simply run the +x file. If the command is not started with '^' X
terminal call is prepended. The actual file name is appended to the
command.
- --command-title command
- an fvwm command to execute on title. If this option is not given (or
command is '-'), the "--exec-title" is
used instead. In the command, %d is substituted
with the full directory path.
In fact, --exec-title=tcsh is equivalent to
--command-title='Exec cd "%d"; xterm -e tcsh'
The empty value disables the title action.
- --command-file command
- an fvwm command to execute on regular files. If this option is not given
(or command is '-'), the "--exec-file"
is used instead. In the command, %f is substituted
with the full file path.
In fact, --exec-file=vi is equivalent to --command-file='Exec
xterm -e vi "%f"'
- --command-app command
- an fvwm command to execute on +x files. If this option is not given (or
command is '-'), the "--command-app" is
used instead. In the command, %f is substituted
with the full file path.
In fact, --exec-app=^exec is equivalent to --command-app='Exec
exec "%f"'
- --[no]reuse
- no pop-up menus, reuse the same menu, default is --noreuse. When you
specify this option the Menu action is used, not Popup. Also, the --name
parameter is not ignored, and --dir parameter is ignored if there is
~/.fvwm/.fvwm-menu-directory.dir file. This file is only created or used
with this option specified, it is the only solution for the current fvwm
menu state.
- --[no]check-subdirs
- check all subdirs for having execute (+x) permission and replace
"Popup"/"Menu" command with "Nop" for these
without permissions. This has a visual effect of disabling popup triangle
in the subdirectory item. The default is --nocheck-subdirs, because: 1)
enabling this slows a bit the script, 2) with this option enabled, if no
icons used and no dir/file separate sorting used there is no way to know
that the item is directory and not file.
- --special-dirs value
- add .. or ~ or / special directories according to given optional value.
Without with option these directories are not added. Default value if not
specified is "1,2". The value is comma separated ordered special
directory indexes, where 1 is parent directory, 2 is home directory, 3 is
root directory. If minus is prepended to the value, special directories
are added at the bottom of menu instead of top. Value "0" or any
bad value is equivalent to non-specifying this option at all.
- --[no]memory-for-speed
- use speed optimization, i.e. use previously created directory menus
without destroying it when closed, default is --nomemory-for-speed
Warning: speed optimization takes up a lot of memory
that is never free'd again while fvwm is running.
- --menu-style name
- assign MenuStyle name to the menus
- --func-name name
- overwrite the default MissingSubmenuFunction name that is
"FuncFvwmMenuDirectory"
Option parameters can be specified either using '=' or in the next
argument. Short options are ok if not ambiguous:
"-a",
"-x",
"-icon-f"; but be careful with short
options, what is now unambiguous, can become ambiguous in the next
versions.
Put this into your fvwm configuration file to invoke the script:
AddToFunc FuncFvwmMenuDirectory
+ I PipeRead "fvwm-menu-directory -d '$0'"
More complex example:
# AddToFunc FuncFvwmMenuDirectory
# + I PipeRead "fvwm-menu-directory -d '$0' -x 'Eterm -g 80x40 -e' \\
-a -l -o 6 --exec-app --exec-title 'tcsh -l' --exec-file 'vim -R' \\
-t 'Go to: %d' --wm-icons"
And put this in the menu from which you want to pop-up the
directory menus:
AddToMenu SomeMenu MissingSubmenuFunction FuncFvwmMenuDirectory
+ "Home Directory" Popup $[HOME]
+ "Httpd Directory" Popup /home/httpd
Note: please use absolute path names.
It is a good idea to set the menu pop-up delay to something
positive and enable busy cursor
MenuStyle * PopupDelayed, PopupDelay 200
BusyCursor DynamicMenu True
in your configuration file when using this script for better
results.
Another interesting usage
("--reuse" or
"-r" is mandatary for this):
AddToMenu Browser
+ DynamicPopupAction PipeRead \\
"fvwm-menu-directory -r -na Browser -d / -s"
AddToMenu SomeMenu "My Browser" Menu Browser
Here the "--dir" parameter
(starting directory) is ignored if there is ~/.fvwm/.fvwm-menu-directory.dir
file, which you can delete.
Inspired on 1999-06-07 by Dominik Vogt <domivogt@fvwm.org>.
Rewritten on 1999-08-05 by Mikhael Goikhman
<migo@homemail.com>.
The script is distributed by the same terms as fvwm itself. See GNU General
Public License for details.
Report bugs to fvwm-bug@fvwm.org.
Visit the GSP FreeBSD Man Page Interface. Output converted with ManDoc. |