Nocheto Help (3.X.X)

This is the list of all nocheto commands. See also commands for setup mode.
Commands tagged with [s] are stoppable commands. They can be stopped by stop command.

To show help for commands in nocheto, use help command.

Help groups

File Commands: (file)

new [<level>]
start a new game at level <level> (0-20)
This command create a new standard chess game.
The new game is created in a new sheet, so you can still get back to the game
you played before.
See `help! sheets` to get more info about sheets.

The <level> is a number (0-20) which set the engine level you can play against.
See `help! level` to get more info about engine level.
new960 [<id>]1.1.0
start a new Chess960 game with a random position or a position given by the <id> (0-959)
Chess960, also known as Fisher chess or freestyle chess, has the same rules
like standard chess, but it starts with random position of pieces on the
first rank.
(Not completely random, one rook must be on the left side from the king,
the second one on the right)

When castling, the king and the rook has to end on the same positions as
after castling in the standard chess (Also the King can't go through a
field which is 'in check').

If you use new960 with the same <id> (number between 0 and 959), you will
get the same position.

`new960` command created a new sheet for the created game.
fen <fen>
start a new game with a <fen> position
FEN (Forsyth-Edwards Notation) is a way how to describe a position on a board.

This is how fen can look like: rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0

The small letters represents black pieces, capital leters white pieces and number
number of empty spaces. The fen describres rows from top to bottom.
Then follows the color on move, which castling is possible (K = white king side etc),
where is possible take by en passant and move number.

Every good chess program can show you the fen position of your current position.
In Nocheto you can use the `viewfen` command.
fen960 <fen>1.1.0
start a new Chess960 game with a <fen> position
This command works like fen command, but for a Chess960 FEN notation.
That is almost the same like standar chess FEN notation, only the
castling is described differently.

FEN example: rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w AHah - 0 1

See help! new960 for more info about Chess960.
pgn
read game(s) given in PGN
The easiest way to open a game is to start nocheto with a PGN file(s)
as an argument or by `open` command.

But by using `pgn` command, you can write/copy game in a PGN format in the
console. Nocheto reads the input until it finds two empty lines (use ENTER
3 times).

Every PGN game must be ended by * or a result (1-0, 0-1 or 1/2-1/2).
Shortest PGN can look like this:

1.e4 *

`pgn` command creates a new sheet for the added game(s).
open <file> [<file> ...3.0.0]
open PGN file(s)
Open the given file(s).

You can use ~ as a subtitute for your home directory in the file name.

Every file is opened in it's own sheet.

See `help! sheets` to get more info about sheets.
mergelist <file, ...>2.4.0
create a new sheet from all games from all file(s)
mergelist+ <file, ...>2.4.0
as mergelist, but adds games to the current sheet
See `help! sheets` to get more info about sheets.
merge <file, ...>2.4.0
create a new game as combination of all lines from all games from all given PGN files
merge+ <file, ...>2.4.0
as merge, but adds lines to the current game
All merged games must have the same position somewhere. The merge command
tries to find the first common position and merge the games at that point.

This command is great while you are studying openings and you have your
lines divided into several PGN files. With this command you can see them
all at once.

The merged game is created as a new sheet.
sheets3.0.0
show sheets
sheet [<id>]3.0.0
show current sheet or set <id> as the current one
sheet+3.0.0
set next sheet as the current one
sheet-3.0.0
set previous sheet as the current one
Sheet represent set of one or more games.

There are man ways how to create a sheet. For example, sheet can be
created by `open`, `new` or `new960` commands.

In other chess softwares is sheet often named as a (game) database.
But in Nocheto 'database' is a word used for (sqlite) database, where the
games and evaluations are saved.

You can save sheet as a PGN file using `save` command.

You can use `list` command to get list of games of the current sheet.
list [[<limit>] <from>]
show list of games from the current sheet
The <limit> tells the maximum of the games that should be listed.
If no <limit> is given, nocheto will try to show as many games as can fit
in the console window.

If the <from> argument is used, games are listed from this number.
Games are numbered from 0.

To open a game from the current list, use the `game` command.
game <id>3.0.0
open a game with ID <id> from the current sheet
Use `list` command to see games with theirs IDs
close [<id>]3.0.0
close the sheet of a given <id> or the current one
closeall3.0.0
close all sheets
Use `sheets` command to see opened sheet(s) with theirs ID(s).

Note: closeall closes all sheets but imediatally craetes a new one
with a new game. The same is true for `close` closing the last
sheet. (There must by always at least one sheet with one game in Nocheto.)
printpgn [<file>], pp
print PGN of the current game to a console or to the <file>
printpgn! [<file>], pp!2.0.0
the same as printpgn, but rewrite the <file> if exists
The difference between `printpgn` and `file` commands with a <file> argument
is that while `printpgn` saves only the current game, the `file` saves current
sheet with all games in it.
save [<file>]
save PGN to opened file (if any) or <file>
save! [<file>]1.1.1
the same as save, but rewrite <file> if exists
The difference between `printpgn` and `file` commands with a <file> argument
is that while `printpgn` saves only the current game, the `file` saves current
sheet with all games in it.

The file name is associated with the saved sheet.
See `sheets` command to list the sheets with theirs associated files.
quit
quit nocheto
Close Nocheto program. (But why would you do that?)

You can also close nocheto by closing it's input stream (CTRL+D).

Edit Commands: (edit)

[move] [<x>]
do move <x> (i.e. d7d5 or e7e8q or e8Q etc.), or go to the next move if any
Move can be written as Long Algebraic Notation, which indicates
the starting and the ending squere by theirs coordinates.
You can also use Standard Algebraic Notation.

For example, to move white pawn from its start position two
squares forward, you can use e2e4 or just e4.

To move the white knight from its start position on g1 to f3 square,
you can use aither g1f3 or Nf3. (N is used fof Knight, K for King).

If two pieces can get to the same square, you need to add the column of the
piece which is moved: Nbd2 (knight from b column to square d2).
If the pieces are on the same column, you use the row number: N1d2 (knight
from first row to d2 square).

To promote the 'a' pawn, you can use a7a8q (use q for queen, r for
rook, n for knight and b for bishop) or a8Q (note here you have to
use capital letter).

To take by a pawn, you can use the column where the pawn is and
the destination square. For example axb3, or jyou can use just the
column letters: ab.
moves [<moves> [*]]2.1.0
add moves in the branch at the current position
The <moves> must be in the same format as a PGN file.

For example:
`moves 1.e4 (1.c4 c5) e5 2. Nf3 *`

If the moves are written as an argument of the command,
the `*` mark at the end is not required.

If the moves are not added as argument, they are readed from the console
input and they have to be finished by the * (that is how
Nocheto will known to stop reading from the console input).
cut2.4.0
cut everything before the current move
The `cut` commands delete all moves before the current move.

It will NOT create a new sheet, so the deleted moves are lost forever!
Use with caution.
delete
delete current move (with the rest of the branch)
The `delete` commands delete the current move and all moves after
(the rest of the branch).

It will NOT create a new sheet, so the deleted moves are lost forever!
Use with caution.
promote
move the current branch up in the moves tree
This is how you can reorder the moves order.

This command was named `branchup` in older versions of Nocheto.
nag [<nag>]
add annotation glyphs (i.e. !, !?, +/- etc.) to a current move. If no nag is set, all nags from the current move are removed
setnag [<nag>]2.2.0
replace annotation glyphs (i.e. !, !?, +/- etc.) If no nag is set, all nags from the current move are removed
Use `listnags` command to list all groups of supported nags.

You can add one annotation from each group to a move separated by a comma.
For example: nag !,$10,N
comment, cmt [<cmt>]
add comment after the current move
If no comment argument is given, current comment is removed.
bcomment, bcmt [<cmt>]
add comment before the current move
If no comment argument is given, current comment is removed.
tag <name> [<value>]
set tag <name> to <value>. If no <value> is given, tag is removed
Tag <name> is case sensitive and can consists of english letters,
numbers and _ only.

Some tags are required by PGN format (like Result, White, Black etc.) or
automatically added by Nocheto (like CreatedBy). These tags cannot be removed.
tags
list PGN tags of the current game

Navigate Commands: (navigate)

undo [<n>], u
undo halfmove n-times (default 1)
Halfmove is a move played by one player only.
uu
undo all moves
In another words, go before the first move.
up
undo before first variants in the current branch
up<
undo to the beginning of the current branch
up<<2.1.0
undo back to the main branch
Example 1:
1.e4 e5 2.Nf3 Nf6 ( 2...d6 3.d4 ) ( 2...Nc6 3.Bb5 a6 4.Ba4 ( 4.Bxc6 )
4...Nf6 5.O-O >>d6<< 6.Re1 ) 3.Nc3 *

`up` command takes you to 3...a6, because it is before the first
branching of your current branch.

`up<` command takes you to 2.Nf3, before the beginning of your
current branch.

Example 2:
1.e4 e5 2.Nf3 Nf6 ( 2...d6 3.d4 ) ( 2...Nc6 3.Bb5 a6 4.Ba4 ( >>4.Bxc6<< )
4...Nf6 5.O-O d6 6.Re1 ) 3.Nc3

`up` command takes you to 3...a6, because there is no branching
in your current branch (before your current move).

`up<` command takes you to 3...a6, before the beginning of your
current branch.

`up<<` command takes you to 2.Nf3, to the main branch before
branching of a branch which contains your current branch.
redo [<n>], r
redo halfmove n-times (default 1)
r<
redo halfmove, stay on the current branch
r>[> ...]
redo halfmove, go to the first [second ...] branch
Halfmove is a move played by one player only.

If there is more moves before you, `redo` command moves you to the branch
you were in the last time. If you were not in any of the branches yet,
it will takes you to the first branch.

The the `r<` command will you always take to the first branch.

If you like this behaviour more than that of `redo`, put alias "redo = r<"
in your configuration file. When you press ENTER, then `r<` command will be
called instead of the `redo` command.

For the `r>` commands there are defined aliases in the default configuration
file, like:

alias 1 = r>
alias 2 = r>>
...
alias 9 = r>>>>>>>>>

So you can use number 3 instead of the long r>>> etc.
replay [<s>], rr
[s] redo all moves, wait <s> second every move
(default 1)
`replay` command will refresh the board even if the `autoboard` is disabled.

It will start replay game from the current move. Use `uu` command before
if you want to replay the whole game.
goto <move>, g
go to <move>, where <move> is a move number
The goto command goes to the first move (white if exists) with the
given number.

If you use it again with the same number, it will go to the next move with
that number (probably black). Then it will search for moves in other
branches etc.

Properties Commands: (properties)

level [<level>]
set or show main engine level (0-20)
The bigger number, the stronger engine.

The level is used for play against the main engine.

Other engines can have set its own level.

This level is not used for analyzing or hinting moves. In that case the
engine is always operating on the highest level.

See `engines` command and `setoption` command.
seconds [<seconds>], s
set or show seconds main engine can think
setoption <engine> <opt> [val]2.3.0
set value of option <opt> for engine <engine>
<engine> can be one of:
1) engine name (see `engines` command),
2) * for all but main engine
3) - for main engine

Example: set 2 seconds (to think) on main engine:
(Note: This does the same as `seconds 2` command)

setoption - seconds 2

You can use `engines` command to check this command effect.

You can set any option supported by the engine UCI protocol.
setclock [<timecontrol>]3.0.0
set timecontrol for a new game
You can use as an argument a timecontrol string or a name of a
configured timecontrol.

Run `timecontrols` command to see all configured timecontrols.

If no <timecontrol> is set, the default timecontrol is used.

Use `clock` command to see the current timecontrol set.

See Timecontrols
autoplay, ap
switch "automatic engine move" (default true)
setautoplay3.1.0 {on|off}
enable or disable "automatic engine move"
If autoplay is enabled, after you do a move
nocheto calls engine to do a move too.

Whith enabled autoplay, `replay` and `undo` commands
replay and undo two halfmoves.
autoboard, abo
switch redrawing board after a move (default true)
setautoboard3.1.0 {on|off}
enable or disable redrawing board after a move
Disable autoboard if you want to play "blindfold".

Note: abo is used as abbreviation instead of ab, because
ab means "a pawn from a column 'a' takes piece on a column 'b'".
switchsounds2.0.0
switch enabled/disabled sounds
setsounds3.1.0 {on|off}
enable or disable sounds
Sounds can be installed in ~/.nocheto/sounds/default/ directory.

Supported sound files are:
capture.wav
castling.wav
error.wav
check.wav
mate.wav
move.wav

If any of the files is missing, the move.wav is used instead.

Analyze Commands: (analyze)

play, p
[s2.4.0] ask nocheto to move
play to end
[s] ask nocheto to play the rest of the game
play <eng> vs <eng>2.0.0
[s2.4.0] let play two engines against each other First <eng> will play as the white.
play vs <eng>2.0.0
[s2.4.0] set <eng> as the engine used by play command
Use `engines` command to see engines you can use as <eng>.
Use `setoption` command to set engines' properties (like
how long to think, the strength level etc.).

`new` and `new960` commands reset engine back to the main one.
(Main engine is configured under [engine] section in the
configuration file.)
loadresults, lr
load results from a database into the current game
Results (or moves' evaluations) are saved into database by
`analyze!` or `analyze+` command or by nochetodbeval program.

Results are loaded from the database configured under
[database] section in the configuration file.
hint [<seconds>]
[s2.4.0] hint a move for the current position
Use main engine to hint the best possible move in the current position.

The engine always works on the highest strength level (despite the
value set by `level` command).

You can affect the time the engine have to think and other options by
`seconds` and `setoption` command.
analyze[!], a[!]
analyze the current move If ! is used, save the result to a database
(can take 2x more time)
`analyze` always use the main engine at its strongest level.
analyze+[!], a+[!]
[s] analyze all moves in the current branch from the current move forward If !, save result to a database
(takes 2x more time)
`analyze+` always use the main engine at its strongest level.

View Commands: (view)

board, b [<boardtype>2.0.0]
change the board to <boardtype> and redraw it
listboards2.3.0
list all available board types
Use this command (without the argument) to redraw the board.

Note: kitty board type works only in kitty console.

See Board types
viewboard, vb
enable drawing board
setviewboard3.1.0 {on|off}
enable or disable drawing board
You might want to disable drawing board to play blindfold.
You can also use it in nocheto client to show moves tree only etc.
flipboard, fb [w|b]
flip the board
Use w argument to show the white side bottom and black top or
use b argument to show the black side bottom and white top.
keepontop2.0.0
switch clearing of the console before drawing
setkeepontop3.1.0 {on|off}
enable or disable clearing of the console
When the console is cleared before every board drawing, the board will
effectively stays on the top of the console.
viewtree, vt
enable/disable drawing the moves tree
setviewtree3.1.0 {on|off}
enable or disable drawing the moves tree
The moves tree is usually drawn above the board.
See also `expandtree` command.
viewtabletree, vtt3.0.0
enable/disable showing the moves table tree
setviewtabletree3.1.0 {on|off}
enable or disable showing the table moves tree
Table moves tree is usually drawn next to the board.
(Moves are written in two columns.)
See also `expandtabletree` command.
viewtreeheight [<n>]2.5.0
set or show the maximum height of the moves tree
(use 0 for unlimited height)
viewtabletreeheight [<n>]3.0.0
set or show max height of the moves table tree
(-1 for unlimited, 0 for same height as the board)
expandtree, et
switch expanding of the moves tree
setexpandtree3.1.0 {on|off}
enable or disable expanding of the moves tree
expandtabletree, ett3.0.0
switch expanding of the moves table tree
setexpandtabletree3.1.0 {on|off}
enable or disable expanding of the table tree
If the expandtabletree is disabled, only moves of the current
branch are shown. (All alternative lines are hidden).

Note: you can see alternative moves in the variants shown
by the `viewvariants` command.
viewcoordinates, vc
switch drawing the board coordinates
setviewcoordinates3.1.0 {on|off}
enable or disable the board coordinates
viewcpmeter, vcp
switch drawing of the cpmeter
setviewcpmeter3.1.0 {on|off}
enable or disable drawing of the cpmeter
cpmeter show the evaluation of the current position.

If the white player start position is at bottom, the higher the
cpmeter goes the better for white. But if you flip the board
(see `flipboard` command), the cpmeter flips also...

To see the cpmeter, the current move have to be evaluated.
See `analyze` and `analyze+` commands.
viewgraph, vg
enable/disable drawing of the result graph
setviewgraph3.1.0 {on|off}
enable or disable drawing of the result graph
To see anything on the graph, any moves have to be evaluated first.
See `analyze` and `analyze+` commands.
viewcomments [window|tree|all]3.0.0
enable/disable comments in the board window or in the moves tree or both
If you use this command without any argument, drawing comments is be disabled.
viewmoves, vm
enable/disable drawing of all possible moves
setviewmoves3.1.0 {on|off}
enable or disable drawing of all possible moves
viewvariants, vv
enable/disable drawing next moves in the game
setviewvariants3.1.0 {on|off}
enable or disable drawing next moves in the game
viewopening, vo
enable/disable drawing of the opening name
setviewgraph3.1.0 {on|off}
enable or disable drawing of the opening name
The opening name is shown only for the positions which have an opening
name. Before you get to the position and after you leave the position,
opening name is not shown.
viewtablebase, vtb
enable/disable the tablebase
setviewtablebase3.1.0 {on|off}
enable or disable the tablebase
Tablebase works for 7 and less pieces on the board - including kings.

The tablebase shows possible moves and the best posible result for the
moves for the player on move. (Sometimes also the minimum required move
to get the win or loss.)

The moves are download from tablebase.lichess.ovh (require interent
access) and then saved into local cache.

See Studying chess endgames
viewfen, vf
enable drawing of the FEN
setviewfen3.1.0 {on|off}
enable or disable drawing of FEN
FEN (Forsyth-Edwards Notation) is used to describe the position of the
game (without the moves) in a single line.

Every good chess program can give you the FEN of the current position
or start a game based on its FEN.

See also `fen` and `fen960` commands.
viewevaluation, veval2.3.0
show/hide evaluation colors in the cpmeter, moves trees and in variants.
setviewevaluation3.1.0 {on|off}
enable or disable evaluation colors
vweval2.3.0
show/hide evaluation for white moves
vbeval2.3.0
show/hide evaluation for black moves
To see any evaluation, the moves have to be evaluated.
See `analyze`, `analyze+` and `loadresults` commands.

If both vweval and vbeval are disabled, no evaluation
colors are shown even if viewevaluation is enabled.

Default used colors:

green - for the best move
white - for an almost best move
purple - for an inaccurancy
yellow - for a mistake
red - for a blunder
blue - for an evaluation by engine NOT set to its top level
(this evaluation might be very inaccurate or
completely wrong)
viewhourglass3.1.0
switch using of the hourglass indicator
setviewhourglass3.1.0 {on|off}
enable or disable usage of the hourglass indicator
This command affects all board types which show the hourglass during
engine thinking only.
It doesn't affect other events showing hourglass, like the `checkforupdate`
command, creating of a new database etc.

The default value for the viewhourglass state is defined in a configuration
file under the [board] section by the viewhourglass property.

Explorer Commands: (explorer)

viewexplorer, ve
enable/disable moves explorer view
setviewexplorer3.1.0 {on|off}
enable or disable moves explorer view
viewexplorerheight [<n>]2.5.0
set the maximum height of the moves explorer
(0 for unlimited)
Explorer is a database configured under [explorer] section in the
configuration file. If this section doesn't exists, the database
configured under [database] section is used.

You can load games into this database using 'nochetodbload' program.

See Config property
viewgamesexplorer2.3.0, vge
enable/disable games explorer view
setviewgamesexplorer3.1.0 {on|off}
enable or disable games explorer view
vge+ <n>3.0.0
show next games in the games explorer
(paginate <n> pages forward)
vge- <n>3.0.0
show previeous games in the games explorer
(paginate <n> pages backward)
vgemode {asc|desc|both}3.0.0
set ascending, descending, or both sorting in the games explorer
vgedimension3.0.0 <cols> <rows>
set dimension for database explorer view
vgedimension <cols> <rows> sets the numer of colums and rows of the
games explorer.
<cols> can be 1 or 2
<rows> can be 0 for responsive siziing or any positive integer number

See Config

Graphics Commands: (gui)

listthemes2.6.0 [board|pieces]
list themes you can use with the boardtheme and piecestheme commands
You can limit the list by the 'board' or 'piece' argument to show themes
which affect the board graphics and/or pieces graphics.

Use the theme name with the `boardtheme` and `piecestheme` commands.

Themes can be installed in the themes/ directory.

See Install Themes
boardtheme <theme>
set the theme for a graphics board (kitty board)
piecestheme <theme>
set the theme for pieces on a graphics board
Graphics board themes take effect when guicolors are not set.
(Otherwise the guicolors are used. See `help! guicolors`.)

Graphics board (`board kitty`) works only in the kitty console
(it is usually part of a linux distribution, but not installed by default).

See https://sw.kovidgoyal.net/kitty/ Kitty console

See `help! listthemes` and `help! clearboardcolors`
boardwhitecolor <r,g,b>
set red, green and blue color components for the white fields on a graphics board
boardblackcolor <r,g,b>
set red, green and blue color components for the black fields on a graphics board
clearboardcolors
clear boardwhitecolor and boardblackcolor the boardtheme will take effect then
movecolor <r,g,b>2.3.0
set red, green and blue color components for a stroke around the current move in a graphics board
Every color component is a number between 0 and 255.

Both boardwhitecolor and boardblackcolor must be set to take effect.

Example:

boardwhitecolor 255,255,255
boardblackcolor 0,0,0

Tools Commands: (tools)

setup
enable setup board mode
In the setup board mode you can change the position on the board.

See Setup mode
explore [id ...2.2.0]
create a sheet from games from explorer, with the current position or for a given id(s)
explore+ [id ...]
as explore, but games are added to the open sheet
search games in the explorer database
search<2.2.0 [criteria]
search games in the explorer database with the current position You can use any of these criterias: [b|w]p="Euwe" (black/white/any player) vs="Capablanca" (opponent to player) {>|<|=}50 (number of moves) 1922(-1938) (year or year interval) 1-0|0-1|1/2 (result of a game) win|lose|draw3.0.0 (result for a player)
The search command is searching for up to 1000 games matching given criteria(s):

A) [b|w]p="PlayerName" will search games played by the given player.

Note the name MUST BE between double quotas.

Examples:
`wp="Euwe"` will search games played by Euwe with white pieces.
`bplayer="Euwe"` will search games played by Euwe with black pieces.

Instead ow wp="..." or bp="..." you can also use white="..." or black="..."

B) vs="PlayerName" will search games where player's opponent was "PlayerName"

Examples:
`black="Euwe" vs="Capablanca"` search games where black player was Euwe and
his opponent (white player) was Capablanca.

`p="Euwe" vs="Capablanca"` search games where black or white player
was Euwe and his opponent was Capablanca.

C) {>|<|=}50 will search games of a given count of halfmoves.

Examples:
`>50` search games with more than 50 halfmoves
`<50` search games with less than 50 halfmoves
`50` search games with exactly 50 halfmoves


D) 1922(-1938) will search games played in the given year(s)

Examples:
`1922` search games played in 1922
`1922-1938` search games played between 1922 nad 1938

E) 1-0|0-1|1/2 will search games with the given result

Examples:
`1-0` search games won by white
`0-1` search games won by black
`1/2` search draw games

F) win|lose|draw will search won, lost or drawn games by the given player

Examples:
`p="Euwe" win` search games played and won by Euwe
`wp="Euwe" lose` search games played and lost by Euwe as white

Internet Commands: (inet)

ipv4 [<port> [<address>]]
[s2.4.0] open connection for IPv4 client on <address>:<port>
ipv4 <addr>:<port> [dummy]3.0.0
[s] open connection on <addr>:<port> if dummy is used, the client cannot send commands
<address> is IPv4 address, like 127.0.0.1
This is the address where client(s) are going to connect.

If you use 127.0.0.1 as <address>, only clients running on the same computer
as nocheto will be able to connect.

If you use 0.0.0.0 as <address>, clients can connect through any of your
computer's network card (if the used <port> is not blocked by any firewall).

You can also use an IP address for a specific card to allow connection only
through that card. On Linux, you can get IP adresses of your computer's
network cards by `ip -4 address` command.

<port> is a number between 1023 and 65535. It is used by the client to connect
to nocheto. It must be unique on your computer (two applications can not use
the same port at the same time). But more then one nochetoclient can connect
to the same port.

If you want to connect to a given port from a different computer than the one
on nocheto is running, that port must not be blocked by any firewall.

WARNING: If you use any othrer than 127.0.0.1 IP address and <port> is not
blocked by a firewall, anyone from the internet who runs nochetoclient with
your IP address and correct <port> before you can connect to your nocheto
server and see your open game(s)!
(But that is not really very likely to happen.)
listipv43.0.0
list running IPv4 connections
This command show the address:port on which clients are connected.
The clients address:port is listed under this line indent to the left.

The nochetoclient can be connected through several protocols:

boardview = transfer information about the current game
tablebase = transfer the tablebase for a current position

One client can ask for one or more protocols (nochetoclient in analyze
mode ask for boardview only, nochetoclient in board mode ask for
both boardview and tablebase).
sync3.0.0
synchronize all clients
sync ipv4:<addr>:<port>3.0.0
synchronize the given ipv4 client
sync http:<addr>:<port>3.0.0
synchronize the given http stream
Sometimes the nochetoclient (or http client) can go out of sync with
the current board position in nocheto (due internet connection problems
etc.). If that happens, nochetoclient is not able to track the changes
in nocheto any more.

If that happens, `sync` command will synchronize nocheto with all
its connected clients.

<addr> is IP address, like 127.0.0.1 and <port> is a port number.
You can use * instead of <addr> and/or <port> to tareget all
addresses/ports.

Use listipv4 and listhttp commands to see clients addresses and ports.

Extra Commands: (extra)

stop2.0.0
stop running stoppable command
Stoppable commands are marked with [s] in the help.

For example, you can stop the analyze+ command or the
replay command etc.
pause3.0.0
pause clients in analyze mode
unpause3.0.0
unpause clients in analyze mode
Analyzing is a very processor demanding task. If you need your computer
power, you can temporarily stop clients to analyze.

Note: when you run analyze command, nocheto pause clients automatically
before analyzing and unpause them after.
speach
switch text to speach
setspeach3.1.0 {on|off}
enable or disable text to speach
Nocheto uses 'espeak' program to convert text to speach.

Make sure this program is installed and working if you want to
enable speach.
echo <text>
print the <text>
error3.1.0 <text>
print the <text> as an error message
The text is also read if the speach is enabled.

This command is ment to be used by scripts.

In the current version the error command does the same as echo command, but in the future the error command might print the text differently, for example in red colors.
listnamespaces1.1.0
list namespaces
addnamespace <name> [<descr>]1.1.0
create namespace in a database
dropnamespace <name>1.1.0
drop empty namespace from a database
Obsolete.

Name can consist of english lowercase letters and numbers only.

Description should be a short string describing the purpose of the namespace.

Games saved in a database can be divided into namespaces.
Namespace is used by nochetodbload program to store game in a given
namespace and also by explorer to show games from a given namespace(s).

Default namespace is called 'primary'. This is used when no
namespace is given to nochetodbload.

You can drop namespace only if there is no game in it.

See `namespaces` command.
namespaces [name ...]1.1.0
set or show3.1.0 namespaces for the game explorer
You can use * for 'all namespaces' or the namespace(s)
divided by empty space.

If no namespace is given, the command shows which namespace(s) are set.

See `viewexplorer` command.

Script Commands: (script)

script <script> [args]
run skript <script> with arguments [args]
`script <script> [args]` runs executable file with given (optional) arguments

The <script> is name of a subdirectory in ~/.nocheto/scripts/ directory.
This name can contain only english letters, numbers, _ and -.
After the <script> name `script` command adds main.sh if the user do not add
anything else.

For example:

`script lll` runs "~/.nocheto/lll/main.sh"
`script lll/somethingelse a --b=c` runs "~/.nocheto/lll/somethingelse a --b=c"

The script is expected to produce text output which is then interpreted as
user commands (as if the user wrote them by himself).

Use `help script` command to see all available scripts.
Use `help script <scriptname>` to see detailed help for a given script.

See How to write scripts

Help Commands: (help)

help, h
show help
`help`
Lists help groups of commands.
The (help <group-key>) in the parenthesis after every group name
can be used to get short help (see below).

`help <group-key>`
Shows short help for all commands in the given group.
For example, `help help` shows short help for commands in the
'Help' group.

`help!`
Shows short help for all commands at once.

`help! <key>`
Shows detailed help for the commands under the given <key>
(if exists).
<key> can be a command name or a key shown by `help!!`.

`help!! [<group-key>]`
List commands and theirs keys that can use with the
`help! <key>` command.
It lists only commands which have the detailed help.

`help <group-key> <command>`
Works as the `help! <command>` (as long as the <command>
is in the group <group-key>). Example: help help help

`help script <script>`
Shows detailed help for the given <script>.
stoplist2.0.0
list stoppable commands
List help for commands which are stoppable.

Stoppable commands are marked by [s] in the help.

Stoppable commands can be stoped by `stop` command.
clock3.1.0
show info about the current game clock
See `setclock` and `timecontrols` commands.
timecontrols3.0.0
list configured timecontrols
Configured timecontrols are timecontrols defined in a configuration file
under the [timecontrols] section.

See Timecontrols
aliases3.0.0
list aliases
Aliases are defined in a configuration file under the [aliases] section.
info, i
show info about engine and currently open file
version3.1.0
show info about this program
See also `help! version` help.
engines2.2.0
list all configured engines
The main engine is defined in a configuration file under the [engine] section.

The main engine is always used by analyze or hint commands and also
by nochetodbeval program.

Other engines are configured in the configs/engines.ini file and are used
by `play` command.
listnags2.2.0
show the table of all supported annotations
Use `nag` command to add annotations to a move.

See Table of supported annotations
checkforupdate
check if your version of nocheto is up to date
Checks if your version of nocheto is the newest.

It search for a newver version of your major version
(for example if your version is 2.8 it looks for 2.9 or
newer 2.x version).

If not found, it looks for the newest version available
(for example if your 2.8 version is the newest, it looks
for 3.0 or newer 3.x/4.x etc. version).
listnews [offset]
show last news' titles with theirs id and date
If offset is used, it skips 'offset' count of the newest news.
news [id]
show last unreaded news if any or the news with ID <id>
owner
show licence / owner details