
Welcome to Ion!

If you have never used Ion before, it is highly recommended that you study 
the Ion manual page before proceeding further. It is reproduced below, but 
you can also access it later on, for example, by pressing <F1> and then 
<Enter> or, by running 'man ion3' in a terminal. All this supposing that 
you have installed Ion in a standard location so that the system commands
can find the manual page.

If you are too eager to try out Ion and against all recommendation want to
skip reading the manual page, you should at least know that pressing <F2> 
should start a terminal emulator (xterm) and that the main menu can be 
accessed with <F12>.

When you feel ready to write customized configuration files (you're going
to do that in any case), please see the configuration manual available from
the Ion webpage listed at the end of the user manual below. It may, however,
be beneficial to become well acquainted with Ion before delving into this 
so that you have grasped the basic concepts necessary to understand the
binding configuration files.


---- Manual page follows ----


ION(1)                                                                  ION(1)



[1mNAME[0m
       Ion - an X11 window manager

[1mSYNOPSIS[0m
       [1mion3 [4m[22m[options][0m

[1mDESCRIPTION[0m
       Ion  is  a tiling tabbed window manager designed with keyboard users in
       mind.


[1mOPTIONS[0m
       [1m-display host:display.screen[0m
              X display to manage

       [1m-conffile configfile[0m
              Configuration file to use instead of default

       [1m-searchdir dir[0m
              Directory to search for configuration files and other scripts

       [1m-oneroot[0m
              On X servers with multiple (traditional  non-Xinerama)  screens,
              manage  only  default screen (root window), not all, as given by
              the -display option or in the DISPLAY environment variable.

       [1m-session session_name[0m
              Set session name. This option affects where workspace and  other
              save files are put (~/.ion3/session_name if option set).

       [1m-xinerama 0|1[0m
              If  Ion  was  compiled with Xinerama support, this option can be
              used to enable/disable (1/0) the use of it. The  default  is  to
              use Xinerama screen information.

       [1m-help  [22mShow help on command line options

       [1m-version[0m
              Show version

       [1m-about [22mShow about text (version, copyright)


[1mBASIC CONCEPTS[0m
       This  section  is  an overview of the types objects that appear on an X
       display managed by Ion and their relationships  in  a  standard  setup.
       This  information  is necessary to understand the operations and avail-
       ability of the different key  bindings  explained  below.  For  a  more
       detailed  explanation, needed for writing custom bindings configuration
       files, see the additional documentation  available  from  the  Ion  Web
       page.

       The  top-level  objects  that  matter  in the case at hand are [1mscreens[22m.
       They correspond to physical screens.  Screens  contain  [1mworkspaces  [22mand
       [1mclient  windows  [22mput in full screen mode. These objects are [1mmultiplixed[0m
       in the sense that only one can be displayed at a time.

       Ion currently supports two types of workspaces;  [1mtiled  [22mof  the  tradi-
       tional  Ion-style  and more conventional [1mfloating [22mworkspaces of the PWM
       flavour. Workspaces are not visible objects but rather  collections  of
       simultaneously visible [1mframes[22m.

       Akin  to  screens,  frames  multiplex  other  objects, but in this case
       mostly client windows. Most of the time, frames are the only  trace  of
       Ion you see on the screen. Frames may have border decorations, and they
       have a [1mtab [22mfor each multiplexed object.

       [1mQueries [22mare boxes that appear at the bottoms of frames  or  screens  to
       ask  you  for  textual  input  to execute an action that depends on it.
       Most queries support tab-completion.



[1mBINDINGS[0m
       These are the default key and pointer bindings. ([1mMod1[22m) depends on  your
       system.  On  PC:s with XFree86 it is probably bound to the left Alt key
       ([1mAlt_L[22m). On Suns it is usually  bound  to  the  diamond  keys  ([1mMeta_L[22m,
       [1mMeta_R[22m). Use [4mxmodmap(1x)[24m to find out.

       The string in square brackets after a binding group heading below indi-
       cates the module that whose configuration file defines these  bindings.


   [1mGlobally available bindings[0m
       [1mMod1+1, Mod1+2, Mod1+3, Mod1+4, Mod1+5, Mod1+6, Mod1+7, Mod1+8, Mod1+9,[0m
       [1mMod1+0[0m
              Switch  to  n:th  object  (workspace, full screen client window)
              within current screen.

       [1mMod1+comma, Mod1+period[0m
              Switch to next/previous object within current screen.

       [1mMod1+K K[0m
              Go to first region demanding attention or previously active one.

       [1mMod1+K T[0m
              Clear all tags.

       [1mMod1+Shift+1, Mod1+Shift+2[0m
              Go to n:th screen on multihead setup.

       [1mMod1+Shift+comma, Mod1+Shift+period[0m
              Go to next/previous screen on multihead setup.

       [1mMod1+F9[0m
              Create a new workspace of chosen default type.

       [1mF12, Button3 press[0m
              Display the main menu.

       [1mButton2 press[0m
              Display the window list menu.




       [1mMod1+Return[0m
              Toggle client window full-screen mode

       [1mF1     [22mQuery for manual page to be displayed.

       [1mMod1+F1[0m
              Show the Ion manual page.

       [1mF2     [22mRun a terminal emulator.

       [1mF3     [22mQuery for command line to execute.

       [1mMod1+F3[0m
              Query for Lua code to execute.

       [1mF4     [22mQuery for host to connect to with SSH.

       [1mF5     [22mQuery for file to edit.

       [1mF6     [22mQuery for file to view.

       [1mF9     [22mQuery for workspace to go to or create a new one.

       [1mMod1+G [22mQuery for a client window to go to.

       [1mMod1+A [22mQuery for a client window to attach.




       [1mMod1+C [22mClose current object.

       [1mMod1+L [22mNudge current client window. This might help with some programs'
              resizing problems.

       [1mMod1+K C[0m
              Kill client owning current client window.

       [1mMod1+K Q[0m
              Send next key press to current client window. Some programs  may
              not allow this by default.



   [1mBindings operating on all frames (including transient) and their children[0m
       [1mMod1+K H, Mod1+K V[0m
              Maximize the frame horizontally/vertically.

       [1mMod1+M, Button3 press[0m
              Display frame context menu.

       [1mMod1+R [22mBegin move/resize mode.

       [1mButton1 click at tab, Button2 click at tab[0m
              Switch the frame to display the object indicated by the tab.

       [1mButton1 drag at border, Mod1+Button3 drag[0m
              Resize the frame.

       [1mMod1+Button1 drag[0m
              Move the frame.

       [1mButton1 drag at tab, Button2 drag at tab[0m
              Move objects between frames by dragging and dropping the tab.



   [1mBindings operating on top-level (non-transient) frames and their children[0m
       [1mMod1+T [22mTag current object within the frame.

       [1mMod1+K  1,  Mod1+K 2, Mod1+K 3, Mod1+K 4, Mod1+K 5, Mod1+K 6, Mod1+K 7,[0m
       [1mMod1+K 8, Mod1+K 9, Mod1+K 0[0m
              Switch to n:th object within the frame.

       [1mMod1+K N, Mod1+K P[0m
              Switch to next/previous object within the frame.

       [1mMod1+K comma, Mod1+K period[0m
              Move current object within the frame left/right.

       [1mMod1+K H, Mod1+K V[0m
              Maximize the frame horizontally/vertically.

       [1mMod1+K A[0m
              Attach tagged objects to this frame.



   [1mMove/resize mode bindings[0m
       [1mEscape [22mCancel the resize mode.

       [1mReturn [22mEnd the resize mode.

       [1mLeft, Right, Up, Down, F, B, P, N[0m
              Grow in specified direction.

       [1mShift+Left,   Shift+Right,   Shift+Up,  Shift+Down,  Shift+F,  Shift+B,[0m
       [1mShift+P, Shift+N[0m
              Shrink in specified direction.

       [1mMod1+Left,  Mod1+Right,  Mod1+Up,  Mod1+Down,  Mod1+F,  Mod1+B, Mod1+P,[0m
       [1mMod1+N[0m
              Move in specified direction.



   [1mBindings for tiled workspaces [mod_ionws][0m
       [1mMod1+S [22mSplit current frame vertically.

       [1mMod1+P, Mod1+N, Mod1+Tab, Mod1+K Tab[0m
              Go to frame above/below/right/left of current frame.

       [1mMod1+K S[0m
              Split current frame horizontally.

       [1mMod1+K X[0m
              Destroy current frame.



   [1mBindings for floating workspaces and frames [mod_floatws][0m
       [1mMod1+Tab[0m
              Circulate focus and raise the newly focused frame.

       [1mMod1+K Tab[0m
              Backwards-circulate focus and raise the newly focused frame.

       [1mMod1+P, Mod1+N[0m
              Raise/lower active frame.



       [1mButton1 double click at tab[0m
              Toggle shade mode

       [1mButton1 press at tab, Button1 press at border, Mod1+Button1 click[0m
              Raise the frame.

       [1mMod1+Button3 click[0m
              Lower the frame.

       [1mButton1 drag at tab[0m
              Move the frame.



   [1mBindings for message boxes and queries [mod_query][0m
       [1mEscape, Control+G, Control+C[0m
              Close the query/message box, not executing bound actions.

       [1mControl+U, Control+V, Page_Up, Page_Down[0m
              Scroll the message or completions up/down.



   [1mBindings for editing in queries [mod_query][0m
       These  bindings  are  similar to those of the [4mjoe(1)[24m text editor.  Cut,
       copy and paste works in a more conventional  manner,  though,  but  the
       keys are equivalent.


       [1mControl+F, Control+B, Right, Left[0m
              Move one character forward/backward.

       [1mControl+E, Control+A, End, Home[0m
              Go to end/beginning.

       [1mControl+X, Control+Z[0m
              Skip one word forward/backward.

       [1mControl+D, Delete[0m
              Delete next character.

       [1mBackSpace, Control+H[0m
              Delete previous character.

       [1mControl+W, Control+O[0m
              Delete one word forward/backward.

       [1mControl+J[0m
              Delete to end of line.

       [1mControl+Y[0m
              Delete the whole line.

       [1mControl+P, Control+N, Up, Down, Control+Up, Control+Down[0m
              Select next/previous (matching) history entry.

       [1mButton2 click, Control+K C[0m
              Paste from the clipboard.

       [1mControl+K B[0m
              Set mark/begin selection.

       [1mControl+K Y[0m
              Cut selection.

       [1mControl+K K[0m
              Copy selection.

       [1mControl+K G[0m
              Clear mark/cancel selection.

       [1mTab, Control+Tab, Shift+Tab[0m
              Try to complete the entered text or cycle through completions.

       [1mControl+M, Return, KP_Enter[0m
              Close the query and execute bound action.



   [1mBindings for menus [mod_menu][0m
       [1mEscape, Control+G, Control+C, Left[0m
              Close the menu.

       [1mReturn, KP_Enter, Control+M, Right[0m
              Activate current menu entry.

       [1mControl+N, Control+P, Up, Down[0m
              Select next/previous menu entry.

       [1mBackSpace[0m
              Clear the menu's typeahead find buffer.




[1mFILES AND DIRECTORIES[0m
       [1m/etc/ion3/cfg_ion.lua[0m
              System default main configuration files

       [1m/etc/ion3/cfg_*.lua[0m
              Other configuration files.

       [1m/etc/ion3/look_*.lua[0m
              Colour scheme configuration files

       [1m~/.ion3/[0m
              User configuration files

       [1m~/.ion3/cfg_ion.lua[0m
              User default main configuration file (overrides system default)


[1mSEE ALSO[0m
       The Ion home page, [4mhttp://iki.fi/tuomov/ion/[0m

       The document "Ion: Configuring and extending with Lua" found on the Ion
       home page.

       [4m/usr/share/doc/ion3/[0m

       [4mX(7x)[24m, [4mpwm3(1)[24m, [4mjoe(1)[0m


[1mAUTHOR[0m
       Ion was written by Tuomo Valkonen <tuomov at iki.fi>.



                                                                        ION(1)
