STANNIX Community


Manual: fvwm-menu-directory

fvwm-menu-directory(1)				       Fvwm Utilities				      fvwm-menu-directory(1)

NAME
       fvwm-menu-directory - builds a directory browsing menu for fvwm

SYNOPSIS
       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 ]

DESCRIPTION
       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.

HINTS
       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
       "".

OPTIONS
       --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.

USAGE
       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.

AUTHORS
       Inspired on 1999-06-07 by Dominik Vogt .

       Rewritten on 1999-08-05 by Mikhael Goikhman .

COPYING
       The script is distributed by the same terms as fvwm itself. See GNU General Public License for details.

BUGS
       Report bugs to fvwm-bug@fvwm.org.

2.5.28 (from cvs)					 2009-03-22				      fvwm-menu-directory(1)