summaryrefslogtreecommitdiff
path: root/docs/usermanual/embeddedkonsole.sgm
Side-by-side diff
Diffstat (limited to 'docs/usermanual/embeddedkonsole.sgm') (more/less context) (ignore whitespace changes)
-rw-r--r--docs/usermanual/embeddedkonsole.sgm163
1 files changed, 163 insertions, 0 deletions
diff --git a/docs/usermanual/embeddedkonsole.sgm b/docs/usermanual/embeddedkonsole.sgm
new file mode 100644
index 0000000..4ba0287
--- a/dev/null
+++ b/docs/usermanual/embeddedkonsole.sgm
@@ -0,0 +1,163 @@
+<chapter><title>Embedded Konsole</title>
+<para>
+EmbeddedKonsole is Opie's terminal emulator. From here you can do pretty much
+anything (since Linux is actually a command line based OS by itself). I will
+not go into much detail on using the linux command line, as that is covered in
+many other places (http://www.tldp.org is a good place to start, or read
+O'Reilly's <citation>Running Linux</citation> for a comprehensive look at Linux
+for the beginner). I will, however, give a quick overview of using a Linux
+shell.
+</para>
+
+<section><title>Using Embedded Konsole</title>
+<para>
+Along the top of the window is a row of menus and icons. The "Font" menu lets
+you select the font size that you want the console to use, while the Options
+menu lets you select various options. Below this row of menus and icons is a
+pulldown list with various common commands in it.
+</para>
+
+<section><title>Options Menu</title>
+<para>
+The first submenu in the options menu is the "Command List" menu, which lets
+you edit or hide the command list pulldown. The "Tabs on top" or "Tabs on
+bottom" (depending on which is currently enabled) allows you to select where
+the tabs representing multiple terminal sessions are drawn. The "Colors"
+submenu lets you select from a color scheme, or make your own, and the "Scroll
+Bar" submenu lets you select where or if the scroll bar is drawn.
+</para>
+</section>
+<section><title>Icons</title>
+<para>
+The row of icons to the right of the menus allows you to type common keystrokes
+without having an input method visible, as well as some other things.
+</para>
+<para>
+The icon all the way on the left will open a new terminal session in a new tab,
+while the icon all the way on the right will paste text from the clipboard into
+the terminal.
+</para>
+<para>
+The other icons are the same as typing (from left to right) enter, space, tab
+(for tab completion), up, and down (for the command history).
+</para>
+</section>
+<section><title>Command List</title>
+<para>
+The command list is a pulldown menu with a list of commonly used commands.
+Selecting one will type the command into the terminal wherever the cursor is.
+You can edit or hide this menu from <GUIMenu>Options</GUIMenu>&arrow;
+<GUIMenuItem>Command List.</GUIMenuItem>
+</para>
+</section>
+</section>
+
+<section><title>What is a Shell</title>
+<para>
+A shell is a program that accepts input from a user, and runs commands. Each
+"command" in the shell is actually a separate program (unless you are using a
+shell like BusyBox, which makes some of the more common commands part of its own
+program in order to save space). Shells can actually be very powerful, and many
+
+of them allow you to write something called "shell scripts" which are just a
+sequence of commands, sometimes with some flow control statements, saved to a
+file and run each time the script is run. For the most part, the average user
+does not need to know about any of this, though. If you are running Opie on the
+Familiar distribution, it is advisable to install the bash shell (ipkg install
+bash) because it offers things like tab completion, use of the backspace key,
+and a command history, as well as offering a more advanced scripting languauge
+than most other shells.
+</para>
+</section>
+
+<section><title>Running Programs</title>
+<para>
+To run a program or a command (remember, a command is just another program), you
+simply type the name of the program and hit "Return" (in Linux, program names
+do not have a special suffix like they do in windows, in fact the "."
+character has no special meaning unless it is at the begining of a filename, in
+which case it makes the file "hidden"). When you type a program name and hit
+"Return" the shell looks in a special list of directories called your
+"path", and if it cannot find it in any of those directories, it stops looking
+and tells you it could not find them. If you want to run a program that is not
+in your path, you must specify an absolute or relative path to that program.
+For instance, to run a program that is in the directory you are currently in,
+you would type <literal>./program</literal> ("./" is a special directory that
+is explained below), or to run a program in /home/username/ you would call
+<literal>/home/username/program</literal>.
+</para>
+<para>
+Most programs take "arguments" when run from the command line. An argument is
+a string that contains no spaces that changes how the program behaves (a text
+editor, for instance, might take a single argument, which would be the name of
+the file you wish to edit). Usually, you can use the arguments "-h" or
+"--help" to get a list of the common arguments that that program takes, along
+with a short usage description, and a short description of what each argument
+does.
+</para>
+</section>
+
+<section><title>Basic Navigation</title>
+<para>
+The command that you will use most often in the shell is probably the "cd"
+command, which stands for "change directory." With this command, you can move
+around in the file system, by issuing the command like this: <userinput>cd
+<replaceable>[new directory]</replaceable></userinput>, where <replaceable>[new
+directory]</replaceable> is the directory you want to move to.
+This directory name does not have to include the entire directory structure, but
+can be "relative" which means it assumes you are talking about directories
+relative to the directory you are in. For example, if you are in a directory
+called /home/username and you want to move to the directory
+/home/username/other/dir you could simply type <userinput>cd
+other/dir</userinput> and you would end up in /home/username/other/dir. You can
+also specify a full, or "absolute" path, by specifying the entire path name
+starting with / ( / is a special directory called the "root" directory, and does
+not have a "parent" directory, which means that it is not in any other
+directory). There are also two special directories called "./" and "../".
+The "./" directory is the current directory you are in, and you will probably
+never use this in conjunction with the cd command (why would you want to move to
+the directory you are already in?). The "../" directory represents the parent
+directory of the directory you are currently in, so if you are in
+/home/username, ../ is the same as /home. You can string several ../'s
+together, so if you are in /home/username/dir/ ../../ represents /home. There
+is one other special directory, called "~/" that points to your home
+directory (usually /home/username or /root for the root user).
+</para>
+</section>
+
+<section><title>Moving Files</title>
+<para>
+To move files around, you need to use the "cp" (copy) and "mv" (move)
+commands. Both of these are run the same way: <userinput>command originalfile
+newfile</userinput>. The only difference is that cp creates a new file without
+touching the old one, while mv deletes the original file. The two path names
+can be either absolute or relative. If you only specify a directory for the
+destination, and no filename, it will use the filename for the original file.
+</para>
+</section>
+
+<section><title>Deleting Files</title>
+<para>
+To delete a file, run the "rm" command, and to delete a directory, run the
+"rmdir" command, each of them take the file to be removed as their only
+argument. The rmdir command requires the directory to be empty, so if you want
+to delete a directory that is not empty, along with all its contents, run
+<userinput>rm -r dir</userinput>.
+</para>
+</section>
+
+<section><title>Linking Files</title>
+<para>
+In Linux, you can have a special file called a "symbolic link" that acts just
+like a copy of another file, except it takes up less space. This is convinient
+if two applications are looking for the same file in two separate places,
+because the file can be in both places at once, without taking up any extra
+space, and any change to one is automatically applied to the other (really,
+there is only one file, the link is just a file pointing to the original file).
+This is also useful for naming applications independant of their version number.
+ For instance, you could have a link called "application" that points to
+"application1.0". To create a link, use the following command:
+<userinput>ln -s originalfile link</userinput>.
+</para>
+</section>
+</chapter> \ No newline at end of file