Руководство

Всё, что умеет live-math, — строка за строкой и клавиша за клавишей. В каждом примере слева то, что набирают, а справа то, что видят ученики.

1Что это

live-math — доска по математике, на которой вы печатаете. Вы пишете в редакторе, строку за строкой, на AsciiMath; тот, кто смотрит, видит свёрстанный лист с графиками и таблицами по мере письма. Она создана, чтобы объяснять: рисует то, что помогает ученикам заметить важное, и никогда не решает задачу за вас.

У неё три части:

  • Редактор (/editor): здесь вы пишете. Его видите только вы, вместе со своими заметками.
  • Просмотр: только лист, свёрстанный, без кнопок. Открывается во вкладке рядом с редактором (Alt+V), чтобы показывать в видеозвонке.
  • Прямой эфир: тот же просмотр на устройствах учеников по ссылке (Alt+L). Для авторизованных преподавателей.

Нужен компьютер с современным Chrome, Edge, Firefox или Safari. Ученикам достаточно браузера, в том числе телефонного, и аккаунт им не нужен.

Редактор, просмотр и экспорт бесплатны и не требуют аккаунта. Прямой эфир, листы в облаке и опубликованные листы требуют аккаунта преподавателя, который тоже бесплатен: попросите его.

2Первые шаги

2.1Где хранятся листы

В первый раз редактор спрашивает, где хранить листы. Каждый лист — текстовый файл name.math; выбор зависит от браузера:

  • Папка на компьютере (Chrome, Edge): «Выбрать папку листов». Браузер запрашивает разрешение; в следующий раз редактор сам открывает эту папку и последний лист или просит один щелчок, чтобы открыть её снова. «Выбрать другую папку» выбирает другую.
  • Память этого браузера (Firefox, Safari): «Начать» или «Импорт листов…», чтобы начать с уже имеющихся листов. Очистка данных сайта или приватный режим их уничтожат: держите резервную копию (8.5). В приватном окне Firefox памяти нет вовсе.
  • Облако, для авторизованных преподавателей: «Войти и работать в облаке», с аккаунтом Google или кодом из письма. Те же листы на любом компьютере и в любом браузере.

Локальное место и облако можно использовать вместе: каждый лист лежит в одном из них, а список показывает оба (8.4). При первом запуске редактор создаёт демонстрационный лист demo, в котором есть немного всего.

2.2Экран

Редактор — это один лист текста, вокруг которого только строка внизу. Всё остальное — в палитре (Ctrl+K) и в справке (F1).

Строка внизу показывает слева направо:

  • имя листа, а для листа в облаке — «(облако)»;
  • ничего, если лист сохранён; иначе «изменено», «сохранение…» или причину, по которой он не сохранён («не сохранено: облако недоступно», «конфликт»…);
  • «просмотр» с зелёной точкой, когда открыта вкладка просмотра;
  • во время прямого эфира — «в эфире» с точкой (зелёной, когда есть связь) и число смотрящих;
  • при скрытых шагах — сколько осталось показать («скрыто · 3»);
  • справа — короткие сообщения акцентным цветом: что только что произошло или что делать.

Иногда над листом появляется полоса с кнопками:

  • «Файл изменился на диске.» (или облако, или другая вкладка): «Перезагрузить» берёт другую версию, «Оставить мою версию» сохраняет вашу поверх неё.
  • «Найдена несохранённая версия.»: текст, не сохранённый в прошлый раз (браузер закрылся раньше). «Восстановить» или «Отклонить».
  • Папку нужно открыть заново, чтобы увидеть листы с компьютера, пока открыт лист из облака: «Открыть снова» или «Забыть».

Ctrl+\ открывает боковой просмотр: просмотр справа от редактора. Перетащите линию между ними, чтобы дать больше места одной стороне; двойной щелчок возвращает её на середину.

2.3Палитра и справка

Ctrl+K открывает палитру: все команды, справа — их сочетания клавиш. Наберите несколько букв для фильтра (они не обязаны идти подряд: птд находит «Просмотр: тема «доска»»), перемещайтесь стрелками (или Ctrl+N, Ctrl+P), Enter выполняет, Esc или щелчок снаружи закрывает. Это же поле спрашивает имя или подтверждение («Да» или «Нет»). Полный список — в §11.

F1 показывает синтаксис, сочетания клавиш и сниппеты на одной странице, со ссылками на руководство и этот справочник; F1 или Esc закрывает.

3Как писать лист

3.1Строки и блоки

Каждая строка — формула, написанная на AsciiMath (§4). Несколько символов в самом начале строки делают её чем-то другим:

В началеСтрока — это
x^2 + 1формула: всё остальное
# Titleзаголовок (пробел после #)
## Subtitleподзаголовок
" text `x^2` **bold**текст, с формулами между обратными кавычками и жирным между двойными звёздочками
! x = 2результат, в рамке
% noteличная заметка: она не покидает редактор, даже недописанной
%> = 4скрытый шаг, здесь — вся строка: ни один просмотр не увидит его до Alt+R. Посреди строки %> скрывает всё дальше, до <% (6.5)
---разделительная линия; в PDF — разрыв страницы (три дефиса или больше, и ничего кроме)
plot: gon: sign: system:рисунок (§5)
= x + 1следующий шаг формулы выше (3.3)

Пустая строка оставляет немного места; несколько пустых строк — столько же. Пробелы в начале строки не важны для формулы, но важны для префикса:  # Заголовок — это формула.

3.2Заголовки, текст, результаты, заметки

# Пределы
## Замечательный
" Для **каждого** `epsilon > 0` найдётся `delta > 0`
% напомнить про x -> 0^-
lim_(x->0) sin x / x = 1
! e^(i pi) + 1 = 0
---
Пределы
Замечательный

Для каждого найдётся


В строке текста формула начинается и заканчивается обратной кавычкой (`); незакрытая всё равно показывается как формула, пока вы её печатаете. **жирный** работает только в строках текста. Заметка исчезает из просмотра и из любого экспорта.

3.3Цепочки шагов

Строка, которая начинается со знака сравнения, продолжает формулу выше и выравнивается по первому знаку сравнения: шаги вычисления, по одному на строку.

f(x) = x^2 e^x
f'(x) = 2x e^x + x^2 e^x
= x e^x (2 + x)
>= 0 " при " x >= 0

Знаки, с которых начинается шаг: = != < > <= >= ~~ ~= ~ -= => <=> -> :=. Первая строка выравнивается по первому знаку сравнения вне скобок, модулей и текста в кавычках. Заметка между строками цепочку не разрывает.

3.4Десятичная запятая

Когда десятичная запятая включена (в палитре её включают и выключают «Десятичная запятая: включить» и «Десятичная запятая: выключить»), запятая между двумя цифрами — это десятичная запятая: 3,14 — это . С пробелом после неё это разделитель: (1, 2) — пара. Список чисел без пробелов, {1,2,3}, остаётся списком, как и ячейки матрицы. Когда она выключена, десятичная точка — 3.14.

pi ~~ 3,14
(1, 2) " — это пара, " {1,2,3} " — множество"

3.5Когда в строке ошибка

Строка, которую нельзя сверстать, подчёркивается в редакторе красной волнистой линией; при наведении мыши видно почему (например, «tangent(f, a): функция и точка»). Просмотр никогда не показывает ошибку: он продолжает показывать строку в последнем рабочем виде, поэтому недопечатанные формулы не мерцают на общем экране.

3.6Сниппеты и помощь при наборе

Наберите одно из этих слов и нажмите Tab: оно превратится в шаблон справа, а Tab / Shift+Tab переключают его поля. В других местах Tab делает отступ.

Слово + TabПревращается в
lim Tablim_(x->0)
int Tabint_(a)^(b) f(x) dx
sum Tabsum_(n=1)^(oo)
der Tab(d)/(dx)
pd Tab(del f)/(del x)
sys Tab{(),():}
cas Tab{(, "если " ),(, "если " ):}
mat Tab[[a,b],[c,d]]
det Tab|(a,b),(c,d)|
vec Tab((x),(y),(z))
sq Tabsqrt()
rt Tabroot(n)()
abs Tab|x|
fr Tab()/()

Скобки ( [ { закрываются сами, а парная подсвечивается; кавычки — нет, потому что " начинает строку текста. Редактор раскрашивает синтаксис: функции, греческие буквы, числа, префиксы. Ctrl+Z отменяет, Alt+↑/Alt+↓ двигают строку.

4AsciiMath, символ за символом

AsciiMath — короткий способ записывать формулы, близкий к тому, как вы набрали бы их в сообщении. Ниже — всё, что он знает, в версии, которая используется здесь: слева то, что вы набираете (варианты рядом дают одно и то же), справа то, что получается.

Те же символы на одной странице, каждый со своим LaTeX, и поле, чтобы попробовать: шпаргалка по AsciiMath.

4.1Дроби, индексы и корни

/ делает дробь из того, что стоит непосредственно до и после него: символа, числа или группы в скобках. ^ и _ делают то же для показателей и индексов. Скобки вокруг числителя, знаменателя, показателя или индекса не показываются: (a+1)/(b+1) — это , x^(n+1) — . Чтобы их оставить, удвойте: ((a+b))/2 — это . В остальных местах скобки остаются: (a+b)^2 — это .

Пробелы только разделяют: sinx и sin x дают одно и то же, . Буквы рядом — произведение: ab — это . Осторожно с именами из букв: xx — это , in — , oo — ; пробел разделяет буквы: x x.

x^2
x_1
x_1^2
x^(n+1)
a/b
(a+1)/(b+1)
frac(a)(b)
sqrt x Sqrt x
sqrt(x+1)
root(3)(x)
stackrel(def)(=)
overset(*)(=)
underset(x->0)(=)
cancel(x)
color(red)(x^2)

color окрашивает только свой аргумент; принимает названия цветов (red, blue, green, orange, purple…).

4.2Греческие буквы

alpha
beta
gamma
Gamma
delta
Delta
epsilon epsi
varepsilon
zeta
eta
theta
Theta
vartheta
iota
kappa
lambda lamda
Lambda Lamda
mu
nu
xi
Xi
pi
Pi
rho
sigma
Sigma
tau
upsilon
phi
Phi
varphi
chi
psi
Psi
omega
Omega

4.3Операции

a + b
a - b
a * b a cdot b
a ** b a ast b
a *** b a star b
a xx b a times b
a -: b a div b a divide b
a // b
A \\ B A backslash B
A setminus B
a +- b a pm b
f @ g f circ g
a o+ b a oplus b
a ox b a otimes b
a o. b a odot b
p ^^ q p wedge q
p vv q p vee q
A nn B A cap B
A uu B A cup B
A |>< B A ltimes B
A ><| B A rtimes B
A |><| B A bowtie B
a mod n

4.4Большие операторы, пределы, интегралы

Пределы идут после _ и ^; в скобках, когда в них больше одного символа. На отдельной строке они ставятся над и под оператором.

sum_(n=1)^oo a_n
prod_(i=1)^n x_i
int_a^b f(x) dx
oint_gamma f(z) dz
lim_(x->0) f(x)
Lim_(n->oo) a_n
limsup_(n->oo) a_n
liminf_(n->oo) a_n
max_(x in A) f(x)
min_(x in A) f(x)
sup A
inf A
lub A
glb A
dim V
^^^_(i in I) p_i bigwedge_(i in I) p_i
vvv_(i in I) p_i bigvee_(i in I) p_i
nnn_(i in I) A_i bigcap_(i in I) A_i
uuu_(i in I) A_i bigcup_(i in I) A_i

4.5Отношения

a = b
a != b a ne b
a < b a lt b
a > b a gt b
a <= b a le b
a lt= b a leq b
a >= b a ge b
a gt= b a geq b
a -< b a -lt b a prec b
a -<= b a preceq b
a >- b a succ b
a >-= b a succeq b
x in A
x !in A x notin A
A sub B A subset B
A sube B A subseteq B
A supset B
A supe B A supseteq B
a -= b a equiv b
a ~= b a cong b
a ~~ b a approx b
a prop b a propto b
a := b
a :|: b

4.6Логика

p and q
p or q
not p neg p
p => q
p implies q
p <=> q
p iff q
y = 1 if x > 0
AA x forall x
EE x exists x
_|_ bot
TT top
p |-- q p vdash q
p |== q p models q
:. therefore
:' because

4.7Скобки

Скобки растут вместе с содержимым. {: x :} — невидимая пара, удобная для группировки; (: :) — угловые скобки. |x| — модуль: вертикальные черты образуют пары внутри скобок, поэтому |x - a| < delta читается так, как выглядит.

(x)
[x]
{x}
|x|
(: x :) << x >> langle x rangle
|: x :|
{: x :}
lbrace x rbrace
abs(x) Abs(x)
norm(x)
floor(x) |__ x __| lfloor x rfloor
ceil(x) |~ x ~| lceil x rceil lceiling x rceiling

4.8Стрелки

uarr uparrow
darr downarrow
rarr rightarrow
-> to
>-> rightarrowtail
->> twoheadrightarrow
>->> twoheadrightarrowtail
x |-> y x mapsto y
larr leftarrow
harr leftrightarrow
rArr Rightarrow
lArr Leftarrow
hArr Leftrightarrow

4.9Функции

Имя функции набирается прямым шрифтом, а аргумент идёт следом — со скобками или без: sin x, sin(x), sin^2 x. f и g — функции только перед скобкой: f(x), а f g остаётся произведением.

sin x
cos x
tan x
cot x
sec x
csc x
arcsin x
arccos x
arctan x
sinh x
cosh x
tanh x
coth x
sech x
csch x
exp x
log x
ln x
det A
gcd(a, b)
lcm(a, b)
f(x)
g(x)

Имена с заглавной буквы

Sin x
Cos x
Tan x
Cot x
Sec x
Csc x
Arcsin x
Arccos x
Arctan x
Sinh x
Cosh x
Tanh x
Log x
Ln x

Итальянские названия и линейная алгебра

Названия из итальянских учебников и операторы линейной алгебры. Im — это образ только перед скобкой: Im(f), а Im z остаётся произведением.

sen x
arcsen x
tg x
arctg x
cotg x
arccotg x
sh x
ch x
th x
settsh x
settch x
rg A
rank A
Ker f
Im(f)
tr A
span(v, w)

4.10Диакритические знаки

hat x
bar x overline(x)
vec v
tilde x
dot x
ddot x
ul(x) underline(x)
ubrace(1+2)_3 underbrace(1+2)_3
obrace(1+2)^3 overbrace(1+2)^3

Шрифты

bb(A) mathbf(A)
bbb(R) mathbb(R)
cc(F) mathcal(F)
tt(x) mathtt(x)
fr(g) mathfrak(g)
sf(x) mathsf(x)

4.11Текст внутри формулы

В двойных кавычках слова остаются словами: x = 1 " если " y > 0. Там, где текст соприкасается с символом, добавляется тонкий пробел, поэтому "для всех"x не слипается. Слова and, or, if уже отделены пробелами.

x = 1 "and" y = 2
text(text) mbox(text)

4.12Матрицы, векторы, системы

Матрица — это список строк, каждая в скобках, через запятую: [[1,2],[3,4]] с квадратными скобками, ((1,2),(3,4)) с круглыми, |(a,b),(c,d)| для определителя. Вектор-столбец — матрица из одного столбца. Система — матрица с { слева и пустотой справа, :}:

A = [[1,2],[3,4]]
det A = |(1,2),(3,4)| = -2
vec v = ((x),(y),(z))
{(x + y = 1),(x - y = 2):}
|x| = {(x, " если " x >= 0),(-x, " если " x < 0):}

4.13Другие символы

del partial
grad nabla
oo infty
O/ emptyset
aleph
/_ angle
/_\ triangle
diamond
square boxempty
frown
... ldots
cdots
vdots
ddots
a quad b
a qquad b
a \ b
50%
NN
ZZ
QQ
RR
CC
f'(x) f prime(x)
f''(x)
f'''(x)
x^2 dx
dy
dz
dt

4.14Символы со значением

&, #, $ и % показываются как есть; ~ сам по себе — это . ', '', ''' — штрихи. Одна \ с пробелом после неё — тонкий пробел; \\ — обратная косая черта. dx, dy, dz, dt — дифференциалы, с небольшим пробелом перед ними: int x^2 dx.

5Рисунки

Строка, начинающаяся с plot:, gon:, sign: или system:, рисуется. Её части разделяются точкой с запятой; их порядок не важен. Рисунки выполняются в цветах просмотра, чёткие при любом размере, а подписи верстаются как остальной лист.

5.1Выражения в рисунках

Внутри рисунка выражения вычисляются, поэтому язык там меньше, чем AsciiMath:

  • переменная — x (на комплексной плоскости z, а i — мнимая единица); константы: pi, e;
  • операции: + - * / ^ с обычным приоритетом (-x^2 — это ); произведение может быть неявным: 2x, x sin x, 2pi; |x| — модуль;
  • функции: sin cos tan cot (и sen tg cotg), arcsin arccos arctan (и arcsen arctg), sinh cosh tanh (и sh ch th), ln, log (натуральный, как ln), exp, sqrt, root(n)(x), abs, floor, ceil, sgn;
  • аргумент функции пишется в скобках или берётся до следующей функции: sin 2x — это ; sin^2 x — ; нечётные корни из отрицательных чисел действительны (root(3)(-8) — это −2);
  • числа: 0.5 или 0,5 с десятичной запятой; после десятичной запятой пробела нет.

5.2Графики: plot:

До четырёх функций от x, со своими цветами и легендой. y = f — то же, что f. Точки — пары в скобках; x = a — вертикальная прямая.

plot: sin x; x - x^3/6; x in [-2pi, 2pi]; y in [-2, 2]
-1,5-1-0,50,511,5
plot: x^2; (1, 1); (-2, 4); x = 2
-4-3-2-11345101520

Окно. x in [a, b] и y in [c, d] выбирают, что показано. Без них x идёт от −5 до 5 (шире, если точка или прямая вне его), а y следует за функциями, пропуская то, что уходит в бесконечность у асимптоты. Если промежуток x записан с pi, деления кратны π. 5.11 двигает окно с клавиатуры.

Не более четырёх среди функций и вертикальных прямых; функция рисуется один раз, даже если встречается в нескольких частях.

5.3Области определения и кусочные функции

После запятой и пробела функция получает область определения и рисуется только на ней: x in [a, b] (круглые скобки для открытого конца, oo для отсутствующего: [0, +oo)) или неравенства по x: a <= x < b, x > a. Закрашенная точка отмечает конец, принадлежащий области, пустая — не принадлежащий; там, где функция уходит в бесконечность, точек нет.

plot: x^2, x in [-2, 2]; 3 - x, 1 < x <= 4
-2-11234-11234

Кусочная функция записывается как в AsciiMath (4.12): строка для каждой части, с функцией и её областью определения, которая может идти после if или слов в кавычках. Область определения может быть одной точкой, x = a. Это одна функция одного цвета: точки там, где она прыгает или определена отдельно, и ни одной там, где части смыкаются.

plot: {(x^2, " если " x < 1), (3 - x, " если " x >= 1):}; x in [-2, 4]
-1,5-1-0,50,511,522,533,5-1-0,50,511,522,53

Если у каждой функции область определения ограничена, окно подстраивается под области и начало координат; области, записанные с pi, дают деления, кратные π. Без пробела запятая десятичная: 0,5 < x остаётся неравенством.

5.4Нули, уравнения, неравенства

roots(f) рисует f и её нули с их значениями. Уравнение рисует обе части и точки их пересечения; неравенство отмечает на оси x, где оно выполняется, с закрашенными и пустыми точками на концах. Двойное неравенство, -1 < f(x) <= 2, тоже работает. Значения точны, когда они замечательные (5.10).

plot: roots(sin x); x in [-2pi, 2pi]
-1-0,50,51
plot: x^2 = 2x + 1
-4-3-2134-55101520
plot: x^2 - 1 > 0; x in [-3, 3]
-2,5-2-0,50,522,5-11234567

Условие без решений так и говорит в легенде. Функция с бесконечно многими нулями в окне (sin(1/x) около 0) требует окна поуже.

5.5Касательные, производные, площади

tangent(f, a) рисует f, касательную при x = a и её уравнение (вертикальную прямую там, где производная бесконечна). derivative(f) рисует кривую f'. area(f, a, b) закрашивает область между f и осью от a до b, с интегралом, и площадь тоже, когда f меняет знак.

plot: x^2; tangent(x^2, 1)
-4-3-2-112345101520
plot: sin x; derivative(sin x); x in [-2pi, 2pi]
-1-0,50,51
plot: area(x^2 - 1, 0, 2)
-4-3-2-11345101520

Их аргументы разделяются запятой и пробелом, чтобы десятичная запятая внутри работала: area(x^2, 0,5, 2). Без пробелов каждая запятая разделяет. Эти слова распознаются только целиком: tan(1) остаётся функцией тангенса.

5.6Комплексная плоскость

С i или z график становится комплексной плоскостью с одинаковым масштабом по обеим осям. Число — это точка со своим лучом из начала координат. Корень целого выражения, w^(1/n), root(n)(w) или sqrt(w), показывает все свои значения на своей окружности, обозначенные . Уравнение по z должно быть многочленом: его корни рисуются.

plot: (3+4i)^(1/8)
-1-0,50,51-1,5-1-0,50,51
plot: z^2 + 2z + 5 = 0; 2e^(i pi/3)
-2-112-2-112

График либо действительный, либо комплексный: x и z не смешиваются. Не более четырёх элементов; неравенств нет.

5.7Единичная окружность: gon:

gon: рисует тригонометрическую окружность. Угол (pi/3) — это радиус с проекциями на оси, подписанный, когда он замечательный. Дуга — промежуток углов: [a, b], (a, b), [a, b), (a, b], замкнутый или открытый с каждого конца. Уравнение или неравенство по x показывает свои решения: точки или дуги.

gon: sin x >= 1/2
1−11−1
gon: cos x > -sqrt2/2; tan x > 1
1−1
gon: pi/3; [pi, 3pi/2)

Рядом с числом sin x, cos x, tan x и cot x получают ещё и свою линию: горизонтальную, вертикальную, касательную в или в . Незамечательный угол называется через свою дугу: , затем . x in [a, b], не более одного оборота, ограничивает, где ищутся решения (остальная окружность пунктирная); без него берётся целый оборот, а дуга через 0 начинается с отрицательного угла. Не более четырёх среди условий и дуг.

5.8Таблицы знаков: sign:

sign: принимает произведение или частное, само по себе или в неравенстве с нулём в одной части, и рисует строку на каждый множитель как вы его записали (сплошную там, где положителен, пунктирную там, где отрицателен), строку произведения с его знаками и, для неравенства, решения.

sign: (x - 1)(x + 2)/(x - 3) >= 0

Он не раскладывает на множители за вас: эти шаги показываете вы. Ноль знаменателя — пустая точка, и произведение показывает там ∄. Отрицательная константа получает свою строку. Критические точки расположены равномерно, как на доске, и подписаны замечательными значениями или , определёнными в легенде. Не более шести строк и двенадцати точек; при бесконечно многих (sin x) x in [a, b] сужает область.

5.9Системы неравенств: system:

Одно неравенство на часть, в любую сторону, и двойные тоже: строка для каждого, сплошная там, где оно выполняется, и последняя строка — где выполняются все.

system: x^2 - 1 > 0; x < 3; 2x + 1 >= 0

5.10Точные подписи

Нули, точки пересечения, углы и концы площадей подписываются точным значением, когда оно замечательное: дроби, и её доли, и другие корни, , , . Иначе — приближение, . Перекрывающиеся подписи опускаются.

5.11Как двигать окно графика: Alt+G

Поставьте курсор на строку plot: и нажмите Alt+G: она подсветится, а клавиши будут двигать видимое: стрелки сдвигают окно на одно деление, Shift+стрелки расширяют его с этой стороны, + и - меняют масштаб (шагами 1, 2, 5, 10…, кратными π, когда x задан в π), 0 возвращает автоматическое окно. Esc, Enter, Alt+G, щелчок или любая другая клавиша завершают.

Каждая клавиша переписывает x in [...]; y in [...] в самой строке, поэтому ученики видят, как движется график, а строка остаётся единственной правдой. Одно Ctrl+Z отменяет всю настройку. Комплексная плоскость остаётся квадратной; у окружности окна нет.

6Как это показать

6.1Просмотр

Alt+V открывает просмотр в новой вкладке: только лист, без ваших заметок, обновляется при каждом нажатии. Покажите эту вкладку в видеозвонке («просмотр» в редакторе становится зелёным, пока она открыта). Лучше всего с двумя экранами: редактор на одном, просмотр на другом.

Chrome и Edge умеют показывать одну вкладку. Firefox и Safari показывают окна или весь экран: вытащите вкладку просмотра в отдельное окно и показывайте это окно.

Просмотр следит за строкой, на которой вы находитесь: у этого блока есть полоса слева (активный блок), и лист прокручивается, чтобы он оставался в поле зрения. Слишком широкие для колонки формулы немного уменьшаются.

6.2Как это выглядит

Эти настройки меняют все просмотры сразу, включая устройства учеников:

  • Alt+= / Alt+-: крупнее или мельче (от 70% до 200%);
  • Alt+T: «бумага» (светлая) или «доска» (тёмная);
  • Alt+S: полоса активного блока и цвет шага, который вы пишете, — включить или выключить;
  • десятичная запятая (палитра), которая меняет и запись чисел в рисунках.

6.3Выделение и текущий шаг

Выделите что-нибудь в редакторе мышью или клавиатурой — и это подсветится в каждом просмотре: ровно эти символы, там, где они стоят в формуле. Чтобы указать на корень внутри дроби, выделите sqrt(Delta):

x = (-b +- sqrt(Delta))/(2a)
  • Символ подсвечивается целиком, как только выделение его касается (половина 123 подсвечивает 123); функция — по имени, вместе с аргументом (sqrt, sin, frac); буква — вместе с показателем, знаком или штрихом (x в x^2, u в vec u, f в f'). Ничего не сдвигается, а рисунки остаются на своих символах.
  • И на нескольких строках: каждая формула и строка текста в выделении подсвечивается там, где она выделена. Рисунки, заметки и скрытые шаги — никогда, как и весь лист (Ctrl+A).

Без выделения шаг, который вы пишете, обводится акцентным цветом: часть строки от одного знака сравнения (=, <=, =>…) до следующего. Если вы пишете в конце строки, это то, что вы только что написали; если исправляете что-то раньше — шаг, который исправляете. Строка текста или заголовок — один шаг; у рисунков его нет, достаточно полосы.

Delta = b^2 - 4ac = 25 - 24

Alt+S выключает шаг вместе с полосой; выделение подсвечивается всегда. Экспорт и опубликованные листы не несут пометок.

6.4Как указывать и помечать

Во вкладке просмотра или в боковом просмотре мышь становится указателем, который видят все. Перетаскивайте, чтобы рисовать: обведите член, подчеркните шаг, зачеркните множитель. Shift с перетаскиванием выделяет рамку. Esc (в редакторе или в просмотре) стирает рисунки.

Пометки остаются на своих символах в каждом просмотре, включая телефоны, при любом размере экрана, и двигаются вместе с блоком, когда вы добавляете строки выше. Набор текста скрывает указатель. Не более 32 пометок: самые старые исчезают. Alt+P включает и выключает указатель и рисование. Чтобы указать на символ без мыши, выделите его (6.3).

6.5Скрытые шаги

Пишите следующие шаги, пока ученики думают, или всё решение до урока и показывайте их, когда придёт время. %> скрывает всё после себя от каждого просмотра — до <% или до конца строки, — пока вы это не покажете; Alt+H ставит метки за вас. Один и тот же лист так, как его показывает боковой просмотр и как его видят ученики:

lim_(x->oo) e^-x %>= lim_(x->oo) 1/(e^x) %>= 0
f(x) = x^2 e^x
%>= x e^x (2 + x)
(a+b)^2 = a^2 + %>2ab<% + b^2

Ваш боковой просмотр

Ваши ученики

  • Alt+H работает как жирный шрифт в текстовом редакторе: нажмите — и то, что вы печатаете дальше, скрыто; нажмите снова — и следующее видно. Скрытая часть, закрытая посреди строки, оставляет ученикам пустое место, чтобы заполнить его вместе; часть до конца строки не оставляет им ничего, и никто не знает, что вы пишете вперёд. Нажатая посреди скрытой части, Alt+H начинает там новый шаг (дважды в её конце — тоже); сразу после «глаза», до того как вы что-то напечатали, она забирает метку назад. С выделением она скрывает ровно выделенное: выделите подготовленное решение, нажмите Alt+H — готово.
  • В скрытой части Enter начинает следующую строку тоже скрытой, даже после пустой. Backspace и Delete проходят сквозь метки и удаляют символ за ними; в начале скрытой строки Backspace присоединяет её к строке выше, и она остаётся скрытой. «Глаз» в начале строки стоит на полях: строка начинается после него. Несколько меток подряд — несколько шагов: a %>= b %>= c показывает a, затем = b, затем = c.
  • Alt+R показывает шаг, в котором стоит курсор, вместе с шагами перед ним в той же скрытой части (они скрывают то, что он показывает). С выделением — каждый шаг, которого выделение касается, сразу. В любом другом месте — следующий шаг после курсора, и курсор переходит туда, так что следующее Alt+R покажет шаг за ним: так вы проходите подготовленное решение. «Глаза» того, что показало бы Alt+R, подсвечены, а двойной щелчок по «глазу» тоже показывает его шаг. На экранах учеников показанное на мгновение подсвечивается, если это не шаг, на котором вы стоите: он уже обведён акцентным цветом. «Показать всё» в палитре сначала спрашивает.
  • Показывает только явное «показать». Перемещение курсора, удаление через метку, вставка нескольких строк, набор <% посреди скрытой части: всё, что было скрыто, остаётся скрытым («остаётся скрытым: показать может только Alt+R»), а набор в скрытом шаге вообще ничего не отправляет в просмотр. Только Ctrl+Z может вернуть текст, который они уже видели.
  • В редакторе «глаз» отмечает начало скрытой части или шага, а маленькая «шапочка» — место, где скрытая часть закрывается; скрытый текст лежит на полосе, а строка внизу говорит, сколько шагов осталось («скрыто · 3»). Боковой просмотр показывает их бледными, ровно там, где они появятся, с «глазом» на полях; блок, скрытый целиком, ещё и обведён рамкой. В рисунке скрытые элементы бледные: кривая, точка, строка — вместе со своей записью в легенде.
  • Скрытые шаги попадают только в ваш боковой просмотр: вкладка просмотра, прямой эфир, экспорт и опубликованный лист их никогда не получают — только пустые места закрытых (PDF с пустыми местами — это рабочий лист). Они сохраняются в листе, как заметки, поэтому урок, подготовленный дома, готов на любом компьютере.
  • Скрытая часть никогда не выходит за конец своей строки. Поскольку %> скрывает где угодно, знак процента перед «больше» требует пробела: 20% > 10%; в скрытой части то же нужно для «меньше» перед знаком процента. Пустое место всегда одного размера, поэтому ничего не выдаёт; в рисунке закрытая скрытая часть просто опускается.

7Прямой эфир

Прямой эфир отправляет лист на устройства учеников: чётче общего экрана, и каждый может листать назад в своём темпе. Вам нужен аккаунт преподавателя; ученикам — нет.

Начать эфир. Нажмите Alt+L. В первый раз откроется окно входа через Google или по коду из письма (код приходит от Cloudflare: проверьте папку со спамом, если его нет). Ссылка для учеников копируется сама. Она всегда одна и та же для вашего аккаунта на любом компьютере, поэтому отправить её нужно один раз. «Копировать ссылку на эфир» копирует её снова.

Пока вы в эфире. В строке видно «в эфире», зелёную точку и число смотрящих. Смена листа (Ctrl+P) меняет его для всех.

Для учеников. Ссылка открывает лист так, как вы его пишете. Если они листают назад, лист перестаёт следовать за вами, пока они не нажмут «↓ в эфире» (или End). До начала они видят «Ожидание…»; если связь пропадает — «переподключение…», и она возобновляется сама.

Завершение. Снова Alt+L: все, кто ещё подключён, сохраняют последнюю версию, а тот, кто откроет ссылку позже, будет ждать вашего следующего эфира. Если закрыть редактор, не завершив эфир, он возобновится, как только вы снова откроете редактор, даже через несколько дней: чтобы работать без свидетелей, завершите его.

Вход действует 30 дней. Когда он истекает, редактор говорит «вход истёк: Alt+L, чтобы войти снова». «Выйти» (в палитре) завершает его сразу.

8Листы

8.1Открыть, назвать, удалить

Ctrl+P показывает список листов, начиная с самых недавних: наберите текст для фильтра, Enter открывает. Alt+N создаёт новый лист там же, где лежит открытый. В имени могут быть подпапки, не более двух: analysis1/limits; оно не может начинаться с точки или содержать \ : * ? " < > |. «Переименовать лист» и «Удалить лист» — в палитре; удаление нельзя отменить.

8.2Сохранение

Сохранять не нужно: редактор делает это сам через мгновение после того, как вы перестали печатать, и строка говорит что-то только тогда, когда лист не сохранён. Ctrl+S сохраняет сразу. Каждые несколько нажатий текст также попадает в браузер как страховка: если браузер закроется до сохранения, в следующий раз полоса предложит его восстановить. Каждый лист открывается с курсором и прокруткой там, где вы их оставили.

8.3Изменения извне

Если лист меняется вне этого окна (в другой вкладке, на другом компьютере, в текстовом редакторе), редактор молча перезагружает его, когда у вас нет несохранённого («перезагружено с диска»), а иначе спрашивает полосой, какую версию оставить (2.2).

8.4В облаке

Для авторизованных преподавателей «Войти и работать в облаке» добавляет листы из облака в тот же список: Ctrl+P показывает место каждого, когда есть оба, а в строке после имени листа из облака стоит «(облако)». «Переместить в облако» и «Переместить на компьютер» (или «Переместить в этот браузер») перемещают открытый лист; «Переместить все листы в облако» — все. Перемещение никогда не перезаписывает: лист с тем же именем в другом месте его останавливает.

Без сети открытый лист из облака продолжает работать, а в строке видно «не сохранено: облако недоступно»: он сохранится сам, когда сеть вернётся, а при уходе со страницы редактор сначала спросит. Сервер не хранит резервных копий листов: держите копию важных. Не более 2000 листов по 512 КБ каждый.

8.5Резервные копии и импорт

«Скачать все листы» скачивает .zip со всеми листами одного места (когда мест два — по одной команде на каждое). Если листы хранятся в памяти браузера, редактор напоминает о копии через неделю без неё. «Импорт листов или резервных копий» принимает файлы .math или резервные копии .zip, «Импорт папки» — целую папку; обе пишут на место открытого листа и один раз спрашивают о уже существующих листах. Так листы и переезжают между браузерами.

«Сменить папку листов» переключает на другую папку; «Хранить листы и в этом браузере» добавляет память браузера рядом с облаком.

8.6Выход

«Выйти» (с вашим email) сохраняет открытый лист из облака, завершает прямой эфир и убирает из этого браузера все следы облака: на общем компьютере следующий человек не найдёт ваших листов.

9После урока

9.1Экспорт

Alt+E экспортирует лист так, как его видят ученики, без заметок и скрытых шагов (сначала «Показать всё», чтобы их включить): PDF (открывается окно печати: выберите «Сохранить как PDF»; каждый --- начинает новую страницу), HTML (один файл, открывается в любом браузере), TeX (документ LaTeX, который компилируется). «Копировать LaTeX текущей строки» копирует LaTeX строки под курсором, включая скрытые шаги.

9.2Опубликованные листы

Ссылка на эфир показывает лист так, как вы его пишете. Чтобы выдать лист, который останется неизменным, «Опубликовать лист» сохраняет его замороженную копию в том виде, как ученики видят его сейчас, и копирует ссылку: позднейшие изменения его не затрагивают. Повторная публикация создаёт ещё одну копию с другой ссылкой. «Опубликованные листы» показывает их, начиная с открытого листа: скопировать ссылку, открыть копию или отозвать её (тогда ссылка перестанет работать). Любой, у кого есть ссылка, может её открыть: отправляйте только тем, кому стоит её видеть.

10Все сочетания клавиш

На Mac Cmd заменяет Ctrl, а Option — Alt. Если браузер использует Alt с буквой для своих меню, добавьте Shift: Alt+Shift+V делает то же, что Alt+V. Буквы читаются по клавише, независимо от раскладки.

КлавишиЧто они делают
Ctrl+Kпалитра команд
Ctrl+Pсменить лист
Ctrl+Sсохранить сейчас
Alt+Nновый лист
Alt+Vоткрыть окно просмотра
Alt+Lначать прямой эфир или завершить его (в первый раз: вход через Google или по коду из письма, он же открывает облако; копирует ссылку)
Ctrl+\боковой просмотр
Alt+= Alt+-масштаб просмотра
Alt+Tтема «бумага»/«доска»
Alt+Sполоса активного блока и шаг, который вы пишете, в просмотре
Shift+← Shift+→…выделенное в редакторе подсвечивается в просмотре: чтобы указать на символ, выделите его
Alt+Pуказатель и рисунок в просмотре
Escстереть рисунки
Alt+Eэкспорт (PDF, HTML, TeX)
Alt+Hначать или прекратить скрывать то, что пишете, как жирный шрифт в текстовом редакторе; с выделением скрывает его
Alt+Rпоказать шаг под курсором, выделенные шаги или следующий (его «глаз» подсвечен); двойной щелчок по «глазу» делает то же
Alt+Gна графике: стрелки сдвигают окно, Shift+стрелки расширяют, + − масштаб, 0 авто, Esc готово
Tabсниппет / следующее поле
Ctrl+Z Ctrl+Shift+Zотменить, повторить
Alt+↑ Alt+↓сдвинуть строку вверх или вниз
F1эта справка
Alt+Shift+…как Alt+…, если браузер использует Alt+букву для своих меню; на Mac Cmd — это Ctrl

11Все команды

Все они — в палитре (Ctrl+K); некоторые появляются, только когда могут действовать (команды облака — после входа, показ — пока что-то скрыто).

КомандаЧто она делает
Сменить лист Ctrl+Pоткрывает другой лист
Новый лист Alt+Nновый лист на месте открытого
Переименовать листпереименовывает открытый лист, включая подпапки
Удалить листудаляет его, спросив подтверждение
Сохранить Ctrl+Sсохраняет сейчас
Открыть окно просмотра Alt+Vпросмотр во вкладке, чтобы показывать
Начать прямой эфир · Завершить прямой эфир Alt+Lначинает прямой эфир или завершает его (а в первый раз выполняет вход)
Копировать ссылку на эфиркопирует ссылку для учеников
Начать или прекратить скрывать Alt+Hначинает или прекращает скрывать то, что вы пишете, или скрывает выделение (6.5)
Показать следующий шаг Alt+Rпоказывает шаг под курсором, выделенные или следующий: что именно — видно из названия
Показать всёпоказывает все скрытые шаги сразу, спросив подтверждение
График: сдвинуть окно Alt+Gдвигает окно графика под курсором
Опубликовать листзамороженная копия листа со ссылкой
Опубликованные листыопубликованные листы: скопировать ссылку, открыть или отозвать
Боковой просмотр Ctrl+\просмотр справа от редактора
Просмотр: увеличить · Просмотр: уменьшить Alt+= Alt+-крупнее или мельче во всех просмотрах
Просмотр: тема «доска» · Просмотр: тема «бумага» Alt+T«бумага» или «доска» для всех просмотров
Просмотр: скрыть активный блок и шаг · Просмотр: показать активный блок и шаг Alt+Sполоса активного блока и текущий шаг
Просмотр: выключить указатель и рисунок · Просмотр: включить указатель и рисунок Alt+Pуказатель и рисунки
Стереть рисунки Escстирает рисунки
Десятичная запятая: включить · Десятичная запятая: выключитьдесятичная запятая
Язык: Englishдругой язык интерфейса
Экспорт PDF (печать) · Экспорт HTML · Экспорт TeX Alt+EPDF, HTML, TeX
Копировать LaTeX текущей строкиLaTeX строки под курсором, чтобы вставить в другое место
Войти и работать в облакелисты из облака, с аккаунтом Google или по коду
Переместить в облако · Переместить на компьютер · Переместить в этот браузерперемещает открытый лист в другое место
Переместить все листы в облакоперемещает все местные листы в облако
Скачать все листы · Скачать все листы с компьютера · Скачать все листы этого браузера · Скачать все листы из облака.zip со всеми листами одного места
Импорт листов или резервных копийфайлы .math или резервные копии .zip
Импорт папкивсе листы из папки
Сменить папку листов · Выбрать папку для листовлисты из другой папки
Хранить листы и в этом браузерепамять браузера рядом с облаком
Выйтизавершает вход и убирает следы облака из этого браузера
Помощь F1справка

12Языки

Интерфейс доступен на восьми языках: English, Italiano, Español, Deutsch, Français, 简体中文, हिन्दी и Русский. Он следует языку браузера, а «Язык: …» в палитре переключает его. Язык также задаёт десятичную запятую в новом браузере и babel в экспорте TeX. У этих страниц есть собственное меню языка вверху.

13Доступ и конфиденциальность

Прямой эфир и облако доступны преподавателям и репетиторам с аккаунтом, который бесплатен: попросите его на главной странице. Вы входите с указанным адресом через аккаунт Google или одноразовый код из письма. Ученикам аккаунт не нужен никогда, и cookie они не получают.

Ваши листы остаются на компьютере, если вы не храните их в облаке; как обрабатываются все данные — на странице конфиденциальности.