# -*- text -*-

# file math.bind
# This file is part of LyX, the document processor.
# Licence details can be found in the file COPYING.

# author John Weiss
# author Alejandro Aguilar Sierra
# author Lars Gullik Bjønnes
# author Jean-Marc Lasgouttes
# author John Levon
# author André Pönitz
# author Michael Gerz
# author Martin Vermeer

# Full author contact details are available in file CREDITS.

# This file provides math mode keys.  Most were suggested by John Weiss
# and modified by Alejandro Aguilar Sierra to be used with different
# keyboard layouts.
#
# This file is automatically included from the main bind file.
#
# DO NOT CHANGE THIS BINDING FILE! It will be replaced
# with every new install of LyX and your changes will be lost.
# Instead, copy it to ~/.lyx/bind/math.bind and modify that copy.

# Note that the order of these is important.  If you put the bindings
# that need "period" and "parenleft" first, they flood the minibuffer
# and make the keybinding hints impossible to read.  That's why they're
# at the end.

# These are defined for the math menu:

\bind "M-m f"			"math-insert \frac"
\bind "M-m s"			"math-insert \sqrt"
\bind "M-m x"			"math-subscript"
\bind "M-m e"			"math-superscript"

\bind "M-m u"			"math-insert \sum"
\bind "M-m i"			"math-insert \int"
\bind "M-m m"			"math-mode" # produces mathematical text
\bind "M-m d"			"math-display"

\bind "M-m y"			"math-insert \oint"
\bind "M-m p"			"math-insert \partial"
\bind "M-m r"			"math-insert \root"
\bind "M-m l"			"math-limits"
\bind "M-m S-L l"		"math-limits limits"
\bind "M-m S-L n"		"math-limits nolimits"
\bind "M-m S-L space"		"math-limits empty"


\bind "M-m n"			"math-number-toggle"
\bind "M-m S-N"			"math-number-line-toggle"
\bind "M-m 8"			"math-insert \infty"

\bind "M-m o 1"   "self-insert \#1"
\bind "M-m o 2"   "self-insert \#2"
\bind "M-m o 3"   "self-insert \#3"
\bind "M-m o 4"   "self-insert \#4"
\bind "M-m o 5"   "self-insert \#5"
\bind "M-m o 6"   "self-insert \#6"
\bind "M-m o 7"   "self-insert \#7"
\bind "M-m o 8"   "self-insert \#8"
\bind "M-m o 9"   "self-insert \#9"

\bind "M-m t n"   "math-mutate none"
\bind "M-m t t"   "math-mutate dump"
\bind "M-m t a"   "math-mutate align"
\bind "M-m t i"   "math-mutate simple"
\bind "M-m t d"   "math-mutate equation"
\bind "M-m t e"   "math-mutate eqnarray"
\bind "M-m t m"   "math-mutate multline"

\bind "M-m c i"   "tabular-feature append-column"
\bind "M-m c d"   "tabular-feature delete-column"
\bind "M-m c c"   "tabular-feature copy-column"
\bind "M-m c s"   "tabular-feature swap-column"
\bind "M-m c a"   "tabular-feature add-vline-left"
\bind "M-m c e"   "tabular-feature delete-vline-left"
\bind "M-m c z"   "tabular-feature add-vline-right"
\bind "M-m c x"   "tabular-feature delete-vline-right"

\bind "M-m w i"   "tabular-feature append-row"
\bind "M-m w d"   "tabular-feature delete-row"
\bind "M-m w c"   "tabular-feature copy-row"
\bind "M-m w s"   "tabular-feature swap-row"
\bind "M-m w a"   "tabular-feature add-hline-above"
\bind "M-m w e"   "tabular-feature delete-hline-above"
\bind "M-m w z"   "tabular-feature add-hline-below"
\bind "M-m w x"   "tabular-feature delete-hline-below"

\bind "M-m w t"   "tabular-feature valign-top"
\bind "M-m w m"   "tabular-feature valign-middle"
\bind "M-m w b"   "tabular-feature valign-bottom"
\bind "M-m c l"   "tabular-feature align-left"
\bind "M-m c m"   "tabular-feature align-center"
\bind "M-m c r"   "tabular-feature align-right"

# Decoration accents

# The accent-circumflex is 'h' for 'hat', which is what most math
# folks call it verbally.

\bind "M-m ~S-quotedbl"		"math-insert \ddot"
\bind "M-m h"				"math-insert \hat"
\bind "M-m ~C-~M-~S-backslash"	"math-insert \grave"
\bind "M-m ~S-slash"		"math-insert \acute"
\bind "M-m ~C-~M-~S-ampersand"	"math-insert \tilde"
\bind "M-m ~S-minus"		"math-insert \bar"
\bind "M-m ~S-period"		"math-insert \dot"
\bind "M-m S-V"				"math-insert \check"
\bind "M-m S-U"				"math-insert \breve"
\bind "M-m v"				"math-insert \vec"
\bind "M-m ~S-underscore"	"math-insert \underbar"

\bind "M-m b"			"math-insert \overline"
\bind "M-m ~S-apostrophe"	"math-insert \prime"

# These do pairs of: () {} [] <> ||

\bind "M-m ~S-parenleft"	"math-delim ( )"
\bind "M-m ~C-~M-~S-bracketleft" "math-delim [ ]"
\bind "M-m ~C-~M-~S-braceleft"	"math-delim { }"
\bind "M-m ~S-less"		"math-delim langle rangle" # produces < >
\bind "M-m ~S-greater"		"math-delim rangle langle" # produces > <
\bind "M-m ~C-~M-~S-bar"	"math-delim | |"


# Note: it's easy to insert binary relations like \pm, \mp, \neq, \geq,
# and \leq just by typing them. However it's easier to remember these:

\bind "M-m ~S-plus"    "math-insert \pm"
\bind "M-m ~S-equal"   "math-insert \neq"

\bind "Escape"         "escape"
\bind "M-m space"      "math-space"
# FIXME: find another shortcut for cell-split as C-Tab is used for buffer-next
# in 'cua.bind'.
#\bind "C-Tab"          "cell-split"

# math-macros
\bind "C-plus"         "math-macro-unfold"
# Defined in cua.bind as command-alternative to specialchar-insert hyphenation
#\bind "C-minus"        "math-macro-fold"

# This should be handled properly by some "get the next key" method

\bind "M-m g a"      "math-insert \alpha"
\bind "M-m g b"      "math-insert \beta"
\bind "M-m g c"      "math-insert \chi"
\bind "M-m g d"      "math-insert \delta"
\bind "M-m g e"      "math-insert \epsilon"
\bind "M-m g f"      "math-insert \phi"
\bind "M-m g g"      "math-insert \gamma"
\bind "M-m g h"      "math-insert \eta"
\bind "M-m g i"      "math-insert \iota"
\bind "M-m g j"      "math-insert \varphi"
\bind "M-m g k"      "math-insert \kappa"
\bind "M-m g l"      "math-insert \lambda"
\bind "M-m g m"      "math-insert \mu"
\bind "M-m g n"      "math-insert \nu"
\bind "M-m g o"      "math-insert \omega"
\bind "M-m g p"      "math-insert \pi"
\bind "M-m g q"      "math-insert \vartheta"
\bind "M-m g r"      "math-insert \rho"
\bind "M-m g s"      "math-insert \sigma"
\bind "M-m g t"      "math-insert \tau"
\bind "M-m g u"      "math-insert \upsilon"
\bind "M-m g v"      "math-insert \theta"
\bind "M-m g w"      "math-insert \omega"
\bind "M-m g x"      "math-insert \xi"
\bind "M-m g y"      "math-insert \psi"
\bind "M-m g z"      "math-insert \zeta"

\bind "M-m g S-D"    "math-insert \Delta"
\bind "M-m g S-E"    "math-insert \varepsilon"
\bind "M-m g S-F"    "math-insert \Phi"
\bind "M-m g S-G"    "math-insert \Gamma"
\bind "M-m g S-I"    "math-insert \iota"
\bind "M-m g S-J"    "math-insert \epsilon"
\bind "M-m g S-L"    "math-insert \Lambda"
\bind "M-m g S-O"    "math-insert \Omega"
\bind "M-m g S-P"    "math-insert \Pi"
\bind "M-m g S-Q"    "math-insert \vartheta"
\bind "M-m g S-R"    "math-insert \varrho"
\bind "M-m g S-S"    "math-insert \Sigma"
\bind "M-m g S-T"    "math-insert \varsigma"
\bind "M-m g S-U"    "math-insert \Upsilon"
\bind "M-m g S-V"    "math-insert \Theta"
\bind "M-m g S-W"    "math-insert \Omega"
\bind "M-m g S-X"    "math-insert \Xi"
\bind "M-m g S-Y"    "math-insert \Psi"
