\input texinfo   @c -*-texinfo-*-
@comment $Id@w{$}
@comment %**start of header
@setfilename prime.info
@settitle Prime version 1.0
@syncodeindex pg cp
@comment %**end of header
@copying
This manual is for the Prime console file manager (version 1.0).

Copyright @copyright{} 2014 Mohammed Isam.

@quotation
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
Texts.  A copy of the license is included in the section entitled
``GNU Free Documentation License''.

@end quotation
@end copying

@dircategory Individual utilities
@direntry
* prime: (prime).               Using Prime console file manager
@c * Prime: Using Prime console file manager
@end direntry

@titlepage
@title Prime console file manager
@subtitle for version 1.0
@author Mohammed Isam (@email{mohammed_isam1984@@yahoo.com})
@page
@vskip 0pt plus 1filll
@insertcopying
@end titlepage

@contents

@ifnottex
@node Top
@top Prime

This manual is for the Prime console file manager (version 1.0).

@end ifnottex

@menu
* Overview:: Overview of the Prime console file manager
* Main Window:: Prime main window
* Menus:: Working around with menus
* Shortcuts:: Using keyboard shortcuts
* GNU Free Documentation License:: 
* Index::
@end menu

@node Overview
@cindex Overview
@cindex Prime Overview
@chapter Overview of the Prime console file manager

@cindex What is Prime
@cindex About Prime
@heading What is Prime?@*
Prime is a GNU software, part of the GnuDOS package.
Prime is a file manager which works under the GNU/Linux console. It was 
influenced by other file managers (like the well known XTree Gold which was 
popular under MS-DOS). It provides a user friendly interface with menus, 
shortcuts, and key navigation. It is distributed as part of the GnuDOS
package which was developed to help users coming from DOS-like environments
feel ease when dealing with the GNU system.
Prime provides multi-level experience, the level of complexity can be adjusted
by the user: you want to use DOS-keys with a few basic GNU ones? you want to 
go with the full power of the GNU system? All are options that are provided by
the six levels of experience of Prime:

  1- Newbie: All DOS shortcut keys, no GNU keys yet
  2- Novice: DOS shortcut keys, some of which are replaced with GNU's
  3- Intermediate: DOS keys with a few more replaced with GNU keys
  4- ِAdvanced: ... And more GNU keys in
  5- ِExpert: Very few DOS keys, most are GNU keys
  6- ِVeteran: Only GNU keys, no DOS-like keys
  
You start with level 1 by default.
To set your level, call the mino with '--levelX' or '-lX' options,
Where X is the level desired, for example:
@example
$prime --level2
@end example

@cindex Key bindings
@heading Which keys are defined for which level?
Below is a table showing the DOS-like key combinations along with their 
respective GNU key bindings. To the right is the level at which a certain
key is defined. Each key defined is recognized in higher levels (e.g. level 2
keys are recognized in levels 3-4-5-6). Note that in level 5 only GNU keys are
defined, no DOS keys will work at this level!.

Keybindings:
In the table below, C-something means pressing down CTRL and then pressing the
other key. Note that '^' is the same as 'C', meaning CTRL key, it is just
typed like this so DOS users can feel familiar with the text.
The same as M-something, which means META or ALT.

=====================================================================
Function        DOS-like key    GNU key                 GnuDOS Level
=====================================================================
All DOS bindings and no GNU bindings			Newbie

Next Line       Down            C-n                     Novice
Prev. Line      Up              C-p                     Novice
Backward        Left            C-b                     Novice
Forward         Right           C-f                     Novice
Back One Word   ^Left           M-b                     Novice
Fwd One Word    ^Right          M-f                     Novice

Cancel          ESC             C-g                     Intermediate
Next Screen     PgDn            C-v                     Intermediate
Prev. Screen    PgUp            M-v                     Intermediate
Start of Line   Home            C-a                     Intermediate
End of Line     End             C-e                     Intermediate
Start of text   ^Home           C-<                     Intermediate
End of text     ^End            C->                     Intermediate

Del prev char   BkSpc           DEL (is BkSpc)          Advanced
Del next char   Delete          C-d                     Advanced
Del prev word   ^BkSpc          M-DEL (is M-BkSpc)      Advanced
Del next word   ^Delete         M-d                     Advanced
Select text     SHIFT+Arrow     C-Space                 Advanced
Del selection   BkSpc/Del       C-w                     Advanced

Quit            ^Q              C-x C-c                 Expert
Paste (yanking) ^V              C-y                     Expert
Del Line        ^D              C-k                     Expert
Undo            ^Z              C-/, C-_, C-x u         Expert
Open File       ^O              C-x C-f                 Expert
Save File       ^S              C-x C-s                 Expert
Find (Search)   ^F              C-s (forward search)    Expert
                                C-r (reverse search)    Expert
Help            F1              C-h ?                   Expert

All GNU bindings and no DOS bindings                    Veteran
=====================================================================


@cindex Why to use Prime
@cindex Why to use it
@heading Why should I use it?
If you like using the console (like most GNU/Linux vintage users do), and
you came from DOS land, having a nice and easy way to run through your 
directory trees and moving files around will be an important asset in your
toolset, plus you will easily dive into the GNU system key bindings.

@heading What do I need?@*
The program can be invoked from the linux console or under X11 from an xterm.

@cindex Running Prime
@cindex Starting Prime
@cindex How to run Prime
@heading How to use it?@*
Simply invoke the 'prime' executable from the bash shell. The components of 
the main window can be found under @xref{Main Window}. The description of the 
menus in @xref{Menus}. And the shortcut keys in @xref{Shortcuts}.

@heading What else?@*
To help the developers (and yourself) debugging the program, Prime sends log 
information by default to a file named 'prime.log' in the user's home 
directory (e.g. /home/username).
If you wish log information to be sent to another file, invoke the program 
with the file name on the command line, e.g.

@example
$prime log-file-name
@end example

@cindex No log information
@cindex Suppressing log information
If you don't want log information, invoke Prime as

@example
$prime --no-log
@end example

@cindex Command line export
@cindex Exporting from the command line
You can export directory tree of a given directory to a given file without 
starting Prime by typing:

@example
$prime -e|--export dirname filename
@end example

Note you will only type @code{'-e'} or @code{'--export'}, not both.@*
@cindex Start Prime with a specific directory
Prime starts with the directory tree of the current working directory. To 
open Prime with the directory tree of another location, type:

@example
$prime -d|--dir dirname
@end example

Where @code{dirname} is the path name which is to be loaded into Prime on 
program start.@*
Currently there is partial wildcard support. That means for example that you 
can specify '~' to indicate your home directory, and you can use '*' inside 
the program (in the search dialog box) but no further wildcards (like '?') 
are supported. Examples:

@example
$prime ~/projects
@end example
Will open the subdirectory 'projects' of the home directory@*
The following are examples of accepted ways to enter wildcard strings in the 
Find file dialog box:

@example
file*
*.c
a*.c
@end example


@node Main Window
@cindex Main window
@cindex Prime main window
@chapter Prime  main window

After running Prime, you are faced with a window that has the following 
components:

@cindex Manu bar
@cindex Prime menu bar
@heading Menu bar

At the top of the window. Contains menus: File, Edit, and Help. The details of
these menus can be found under @xref{Menus}.@*

@heading Main Window

The rest of the main window has three parts:
@itemize
@item
@cindex Directory view
Directory view (left side): you can navigate the directory tree of the current
working directory
@item
@cindex File view
File view (right side): navigate/select files in the current dir
@item
@cindex Bottom view
Bottom view: shows the current working directory and the number of selected 
items
@end itemize

@node Menus
@cindex Menus
@cindex Working around with menus
@chapter Working around with menus

Menus are on the menu bar on the top of the @xref{Main Window}. They are:

@cindex File menu
@heading(1) File Menu (opened by pressing ALT+F):@*
@itemize
@item
Open Location: Opens specific location to view its directory tree
@item
Export: Saves the directory tree into a file on disk
@item
Print: Prints the directory tree to printer
@item
Exit: Exits Prime
@end itemize

@cindex Edit menu
@heading(2) Edit Menu (opened by pressing ALT+E):@*
@itemize
@item
Space bar: toggle selection. Selected items are marked "*"
@item
Cut selection (if no selection, cut current item). Cut items marked "^"
@item
Copy selection (if no selection, copy current item). Copy items marked "#"
@item
Paste: Pastes the list of cut/copied files and directories into current location
@item
Mark All: Mark all the files/dirs with '*'
@item
Unmark All: Unmarks all the files/dirs
@item
Clear selection: Clears all marks including items marked for cut/copy
@item
Find: Finds a file
@end itemize

@cindex Help menu
@heading(3) Help Menu (opened by pressing ALT+H):@*
@itemize
@item
View README: Displays the README file installed with the package
@item
Quick Referece: Shows a quick reference for Prime functions
@item
About Prime: Shows About dialog box
@end itemize

@cindex Shortcuts
@cindex Keyboard shortcuts
@cindex Shortcut keys
@node Shortcuts
@chapter Using keyboard shortcuts

Moving around with Shortcut Keys:@*
@	ALT+F: Open File menu@*
@	ALT+E: Open Edit menu@*
@	ALT+H: Open Help menu@*
@*
(1) File menu shortcuts:@*
@	CTRL+N: Create new directory under current working directory@*
@	CTRL+O: Open location@*
@	CTRL+E: Export directory tree into external file@*
@	CTRL+P: Print current directory tree@*
@	CTRL+Q: Exit program@*
@*
(2) Edit menu shortcuts:@*
@	CTRL+X: Cut selection (if no selection, cut current item).@*
@	@	Cut items are marked with "^"@*
@	CTRL+C: Copy selection (if no selection, copy current item).@*
@	@	Copy items are marked with "#"@*
@	CTRL+V: Paste cut/copy items in the current directory@*
@	CTRL+F: Find a file@*
@	CTRL+A: Select all items in the active dir/file window@*
@	CTRL+Z: Deselects all items in the active dir/file window@*
@	CTRL+W: Deselect all, including items marked for cut/copy@*
@	Space bar: Toggle selection. Selected items are marked "*"@*
@*

@node GNU Free Documentation License
@appendix GNU Free Documentation License

@include fdl.texi

@node Index
@unnumbered Index

@printindex cp

@bye


