GNU Info pages are available here.

Content

Place cursor to the lightened text and press Enter.

Help system

Help system is a contextual one. Help texts are written in syntax HTML and are in the file yhelp.html. If it is necessary you may alter the text if desired. While cursor placing to the lightened text and pressing Enter there will be the corresponding help page.

You may use the following help keys
Tab or ^J Down to the next reference
^J Up to the previous reference
^J Home to the first reference
^J End to the last reference
^J PgUp to the text start
^J PgDn to the text end
- previous help page
F6 searching
F7 line block marking
F8 column block marking
^J + marked block insert into clipboard

Help system provides looking through the pages man and GNU info. Utilite whatis is necessary for normal operation with the man pages. In case of its lack the simplest variant can be like this:


       #!/bin/sh
       echo "$1( )"
There must be installed GNU info to work with GNU info pages in the system.

Installation

Files list needed for yui:
	y              - editor itself (binary)
	yhelp.html     - text of help system (html syntax)
	options        - global options
	keymap         - keyboard map
	colormap       - color map
        colortrans     - color translation table
	highlight      - highlight rules
	highlight_html - list of HTML tags with some info
Binary file can be in any directory, showed in variable environment PATH. Other files usually is in the directory /usr/local/lib/yui or in $HOME/.yui/. You can specify their other place with the help of environment variable YUI_PATH if necessary. The status file have name $HOME/.yui/status/_current_work_path_

Editor turning is done through editing files in /usr/local/lib/yui or in $HOME/.yui/

If the terminal has no a switching key to the nationale alphabet the switching can be done on ^N.

Arguments

It is files names or URL for WWW-window. Possible options is: Examples
	./y main.c ../prog/list.h
	./y -r ../prog/list.h -M termcap.0 -b /bin/ls

	./y -w ftp://ftp.itk.ru
	./y -w http://www.itk.ru -w telnet://last.itk.ru
	./y -w man:termcap -w info:
	./y -w file:

	./y -m termcap
	./y -m "termcap(5)"

Keyboard

Keys description is given for keyboard apportionment by default (in upper case). ^ sign before a key means the pressing together with the key Ctrl.

Any operation can be done by any keys combination. ^J, ^K, ^J^K keys specifically mean that the same key, pressed after them, will have different code

General commands and windows control
^J^R refresh screen
^J^X exit
^K^X exit with error
Esc, ^J Esc, ^K Escmenu
F1 context help
^J F1 previous help
^K F1 help index
^J 0 or ^J * windows list
^E or ^J^E next window
^W or ^J^W previous window
^C or ^J^C close window
^J^D change window size
^J^A change window place
^J^V window zooming
F3 open exist file
^J F3 open empty window
^\ or ^J . system command
^J \ or ^K . system command in terminal window
^_ or ^J / or ^J F10user menu
^J F5 man pages
^J F7 terminal window
^J F8 debugger
^J F9 WWW window

Edit window commands
F2 text saving
^J F2 text saving in new file
F4 go to line
^J F4 line marker to go
^G matching symbol lower cursor
^T matching symbol upper cursor
F7 line block marker
F8 column block marker
^P block unmark
F9 block copy
F10 block move
^J + block copy to clipboard
^J Del block move to clipboard
^J Ins block copy from clipboard
^Y line removal
^J^Y block removal
^J^B set/unset breakpoint
^K^V viewing mode of space and tab symbols
^K^L reload text
^K^R set/unset "read only" mode
^U undo
^R redo
F5 man pages on current word
F6 searching
^L continue searching
^J F6 searching with replace

Menu

Menu has constant and variable parts. The constant one is always present, the variable part depends on a current window. Menu starts by pressing Esc or ^J^_lightened_letter_ in menu. Switching between menu parts is by Tab, ^J_Tab keys. Moving inside menu is by cursor arrow keys or by pressing lightened letters.

Windows operations

There are three types of windows: editor, terminal and WWW-window. At the same time there can be opened as many windows as possible, there can be some actions. In terminal windows it's possible to enter different commands, with can be used for output within programmes debugging. Terminal type in these windows - pc3. WWW-window is used to view hypertext (analog lynx). Help system uses this window.

The windows can be switched, changed in sizes, moved. It's possible to move window out of the screen.

In dialogue window Windows list there can be observed the list of all the open windows. An active window is marked by colour. Any window can be closed by Del key, some windows can be marked by Ins key and later the switching will be possible only between them. Any window can be activated by Enter key.

Keyboard apportionment by default is available here.

Files operations

Editor works with different files. If the file is not the text one, it's viewed/edited as lines with 64 symbols. Symbol with code < 32 is marked by different colour and seeh as symbol code+64.

File select is done by dialogue window. With its help it's possible to view the content of any disk directory and to select necessary file. This window provides information on current directory state, files number, their total size, current file (size, creation date, etc).

Block operations

There are two types of blocks - line and column. Marking is done by setting two markers (trough menu or by keyboard). Text inside block is showed by different colour. Moving block borders is by cursor arrow keys with one set marker. Second marker setting fixes block borders. Block can be copied, moved and removed in current window, copied and moved into other windows with the help of clipboard, written on disk and read from disk.

Within copy of line block it will be insert between the line with cursor and upper line. Within copy of column block it will be insert into lines from the current one and from cursor position.

Move is equaled to copy, but in the previous place the block is removed.

Within copy or move into buffer, the block is copied into clipboard, in wich this done is saved also if block in text is removed. Block can be added to clipboard and itk previous content is saved. Clipboard can be edited.

Undo/Redo

This operation provides reconstruction the changes which were made in the text within the current work. The reconstruction is backward step by step. Redo reconstructs the changes made by undo. There can be used undo optimization and the same operations will be done within one step.

Searching

Searching string and searching rules are defined by dialogue window. A searching string can be of regular expression. In the rules it is fixed the sensitivity - case, searching direction, searching place (text or block). The searching is possible in all the windows as editor, dialogue window and WWW - window.

Searching with replace

Searching string, string for replace, searching rules and replace rules are difined by dialogue window. Searching string can be of regular expression. String for replace can have inside conventional signs of searching regular expressions like \n, where n - expression N.
    Example:

	 Text string:          I have a computer
	 Searching string:     (I.*a) (c.*r)
	 String for replace:   \1 good \2

    As a result there will be: I have a good computer
In a status line it is showen the number of changes made. Searching with replace is possible in all the windows as editor.

Debugger C/C++

For more exact information learn GNU debugger.

Editor allows to run gdb in terminal window and use output information to observe programme code. After the running it's necessary to define original programme name and terminal name, on which there will be programme output. Program name is defined by file command, for example file _name_, where _name_ must be compiled with -g option.

For terminal definition it's necessary to fulfill successsful login and to run on it something like sleep 3000 to prevent any desturbance. Then give tty _terminal_name_ command, for example tty /dev/ttyp5. Now it's possible to set breakpoints and to run programme.

There is a possibility of automatical commands load in gdb. For that it's necessary to creat .gdbinit file, to describe commands in it and to set autoload flag in editor turning (through menu).

			Some gdb commands:

       r[un] ........................ run/restart of programme
       c[ontinue] ................... continue working
       b[reakpoint] function_name ... breakpoint inside function
       b file_name:line_number ...... breakpoint on line
       s[tep] ....................... programmme step
       n[ext] ....................... programme step outside of functions
       u[ntil] function_name ........ work until function end
       p[rint] expression ........... print expression meaning
       q[uit] ....................... quit

User menu

This function provides a user to run programmes quickly, used in everyday work. User menu base - file yui.mnu, for example:

      yui: start
	    yui
      yui: compile
	    make 2>&1 | tee _r
	    #reload _r
      yui: recompile
	    make clean
	    make 2>&1 | tee _r
	    #reload _r
      syncing disks
	    sync
      show processes
	    ps -a
      >Demos Commander
	    deco
String which should be put to dialogue window, must not start with tabulation or space symbols. Strings starting with tabulation or space are system commands or editor commands, which will be run within selection of a corresponding string. #reload _name_ command reloads file into editor window. If string of command description starts with a symbol >, corresponding commands will be run in automatically created terminal window, which will be closed after finishing running the last command.

File yui.mnu searching is, first, in a current directory, otherwise in a user home directory. If there is no file it's given a corresponding warning.

Calculator

Calculator fulfills standard operations with figures with float point. It works in binary, octale, decimale and hexadecimale calculation systems.

Calculator registers

X(input), Y(output), M(memory)

Mathematical operations

    + - adding
    - - substaraction
    * - multiplication
    / - division
    ^ - raising to power
    % - remainder of division

Bits operations

    | - OR
    ! - excluding OR
    & - AND
    ~ - NOT

Other operations

F10 - switcher between binary (BIN), octale (OCT), decimale (DEC) and hexadecimale (HEX) calculation systems.

PgDn - put content from X register to M register

PgUp - put content from M register to X register

^Y - clean input line

System command

At putting command into input line and pressing Enter there will be executed the corresponding command. After its finishing a string will appear
                    Press any key to return to YUI ...
and at pressing any key there will be return to editor.

Regular expressions

Special symbols in syntax of regular expressions:
  .
Any symbol.
  \c
c - any symbol besides figure and brackets.
  [...]
One symbol among done in brackets. A pair of symbols in brackets, devided by symbol - mean a symbol from this diapason. If symbol ^ is the first among done in brackets, any symbol not among done in brackets corresponds regular expression. Inside brackets symbols ., *, [ and \ lose their special content.
  *
Any number (and zero) of repetitions of regular expression before *.
  ^
Symbol of start string, if it's in regular expression start.
  $
Symbol of string end, if it's at the end of regular expression.
  +
One or more repetitions of regular expression before +.
  ?
One or none repetitions of regular expression before ?.
  (RE)
Regular expression RE. Symbol | means operation OR for two regular expressions.