
\chapter{Overview}
\label{cha:overview}

Commander S is a visual shell written in Scheme.


\section{Key bindings}
\label{sec:key-bindings}

Most of the key bindings are not configurable yet.

\subsection{General keybindings}
\label{sec:general-keybindings}

\begin{description}
\item[Switch the command mode] \texttt{[F7]}, \texttt{(main . switch-command-buffer-mode-key)}
\item[Switch the command mode and convert command line]
  \texttt{[Ctrl-x F7]}
\item[Repaint] \texttt{[F2]}
\item[Switch between command buffer and result buffer]
  \texttt{[Ctrl-x o]}
\item[Paste the selection] \texttt{[Ctrl-x p]}
\item[Paste the selection as focus object] \texttt{[Ctrl-x P]}
\item[Next item of result histroy] \texttt{[page up]}
\item[Previous item of result histroy] \texttt{[page down]}
\item[Complete command or argument] \texttt{[TAB]}
\end{description}

Line editing facilities:
\begin{description}
\item[Moving to the start of the line] \texttt{[Ctrl-a]}
\item[Moving to the end of the line] \texttt{[Ctrl-e]}
\item[Moving the cursor to the left] \texttt{[Left arrow]}
\end{description}

Select list facilities:
\begin{description}
\item[Mark/unmark item] \texttt{[m]}
\item[Enter item] \texttt{[RET]}
\end{description}

\subsection{Key bindings for process object viewer}
\label{sec:key-bindings-process}

\begin{description}
\item[Filter processes] \texttt{[f]}, \texttt{(ps . filter-key)}
\item[Sort processes in increasing order] \texttt{[S]}, \texttt{(ps . sort-up-key)}
\item[Sort processes in decreasing order] \texttt{[s]}, \texttt{(ps
    . sort-down-key)}
\item[Select columns] \texttt{[c]}, \texttt{(ps . columns-key)}
\item[Kill process] \texttt{[k]}, \texttt{(ps . kill-key)}
\item[Re-run \texttt{ps}] \texttt{[g]}, \texttt{(ps . refresh-key)}
\end{description}


\subsection{Key bindings for file system object viewer}
\label{sec:key-bindings-file}


\subsection{Key bindings for Scheme value inspector}
\label{sec:key-bindings-scheme}

Very similar to the Scheme~48 standard bindings.

\section{Customizing Commander S}
\label{sec:cust-comm-s}

On startup, Commander S reads the file \verb|~/.cmdrsrc|. The file
should contain an alist mapping configuration options to values. For
example:
%
\begin{verbatim}
(((main . switch-command-buffer-mode-key) . 262))
\end{verbatim}

% Local Variables: 
% TeX-master: "man"
% End: 
