aboutsummaryrefslogtreecommitdiff
path: root/vendor/maunium.net/go/tcell/terminfo
diff options
context:
space:
mode:
authorTulir Asokan <tulir@maunium.net>2018-04-22 21:25:06 +0300
committerTulir Asokan <tulir@maunium.net>2018-04-22 21:25:51 +0300
commit64fa922ec013079f8f0c90fc9e93c56db3611d30 (patch)
tree7bb9b40f57b8368ef0f5eeccea02d80e54796927 /vendor/maunium.net/go/tcell/terminfo
parentbfb5f0dd457be326b1ae7638a64d2e79cbace371 (diff)
Switch to dep
Diffstat (limited to 'vendor/maunium.net/go/tcell/terminfo')
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/.gitignore1
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/TERMINALS.md7
-rwxr-xr-xvendor/maunium.net/go/tcell/terminfo/mkdatabase.sh189
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/mkinfo.go781
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/models.txt59
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_Eterm.go108
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_Eterm_256color.go107
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_adm3a.go24
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_aixterm.go78
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_ansi.go40
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_aterm.go109
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_beterm.go53
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_bsdos_pc.go41
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_cygwin.go62
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_d200.go96
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_d210.go94
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_dtterm.go66
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_gnome.go156
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_gnome_256color.go156
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_hpterm.go49
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_hz1500.go25
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_konsole.go114
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_konsole_256color.go114
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_kterm.go66
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_linux.go68
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_pcansi.go38
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_rxvt.go109
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_rxvt_256color.go109
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode.go83
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode_256color.go83
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_screen.go66
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_screen_256color.go66
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_st.go158
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_st_256color.go158
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_st_meta.go155
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_st_meta_256color.go155
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_st_meta_truecolor.go158
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_st_truecolor.go158
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_sun.go46
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_sun_color.go50
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_tvi910.go38
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_tvi912.go37
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_tvi921.go33
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_tvi925.go42
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_tvi950.go45
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_tvi970.go39
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_vt100.go47
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_vt102.go46
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_vt220.go57
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_vt320.go62
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_vt400.go45
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_vt420.go52
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_vt52.go28
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_wy50.go58
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_wy60.go62
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_wy99_ansi.go60
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_wy99a_ansi.go60
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_xfce.go155
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_xnuppc.go33
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_xterm.go156
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_xterm_256color.go155
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_xterm_truecolor.go155
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/terminfo.go841
63 files changed, 6561 insertions, 0 deletions
diff --git a/vendor/maunium.net/go/tcell/terminfo/.gitignore b/vendor/maunium.net/go/tcell/terminfo/.gitignore
new file mode 100644
index 0000000..74f3c04
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/.gitignore
@@ -0,0 +1 @@
+mkinfo
diff --git a/vendor/maunium.net/go/tcell/terminfo/TERMINALS.md b/vendor/maunium.net/go/tcell/terminfo/TERMINALS.md
new file mode 100644
index 0000000..85c1e61
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/TERMINALS.md
@@ -0,0 +1,7 @@
+TERMINALS
+=========
+
+The best way to populate terminals on Debian is to install ncurses,
+ncurses-term, screen, tmux, rxvt-unicode, and dvtm. This populates the
+the terminfo database so that we can have a reasonable set of starting
+terminals.
diff --git a/vendor/maunium.net/go/tcell/terminfo/mkdatabase.sh b/vendor/maunium.net/go/tcell/terminfo/mkdatabase.sh
new file mode 100755
index 0000000..fd968bd
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/mkdatabase.sh
@@ -0,0 +1,189 @@
+#!/bin/bash
+
+# Copyright 2017 The TCell Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use file except in compliance with the License.
+# You may obtain a copy of the license at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#
+# When called with no arguments, this shell script builds the Go database,
+# which is somewhat minimal for size reasons (it only contains the most
+# commonly used entries), and then builds the complete JSON database.
+#
+# To limit the action to only building one or more terminals, specify them
+# on the command line:
+#
+# ./mkdatabase xterm
+#
+# The script will also find and update or add any terminal "aliases".
+# It does not remove any old entries.
+#
+# To add to the set of terminals that we compile into the Go database,
+# add their names to the models.txt file.
+#
+
+# This script is not very efficient, but there isn't really a better way
+# without writing code to decode the terminfo binary format directly.
+# Its not worth worrying about.
+
+# This script also requires bash, although ksh93 should work as well, because
+# we use arrays, which are not specified in POSIX.
+
+export LANG=C
+export LC_CTYPE=C
+
+progress()
+{
+ typeset -i num=$1
+ typeset -i tot=$2
+ typeset -i x
+ typeset back
+ typeset s
+
+ if (( tot < 1 ))
+ then
+ s=$(printf "[ %d ]" $num)
+ back="\b\b\b\b\b"
+ x=$num
+ while (( x >= 10 ))
+ do
+ back="${back}\b"
+ x=$(( x / 10 ))
+ done
+
+ else
+ x=$(( num * 100 / tot ))
+ s=$(printf "<%3d%%>" $x)
+ back="\b\b\b\b\b\b"
+ fi
+ printf "%s${back}" "$s"
+}
+
+ord()
+{
+ printf "%02x" "'$1'"
+}
+
+goterms=( $(cat models.txt) )
+args=( $* )
+if (( ${#args[@]} == 0 ))
+then
+ args=( $(toe -a | cut -f1) )
+fi
+
+printf "Scanning terminal definitions: "
+i=0
+aliases=()
+models=()
+for term in ${args[@]}
+do
+ case "${term}" in
+ *-truecolor)
+ line="${term}|24-bit color"
+ ;;
+ *)
+ line=$(infocmp $term | head -2 | tail -1)
+ if [[ -z "$line" ]]
+ then
+ echo "Cannot find terminfo for $term"
+ exit 1
+ fi
+ # take off the trailing comma
+ line=${line%,}
+ esac
+
+ # grab primary name
+ term=${line%%|*}
+ all+=( ${term} )
+
+ # should this be in our go terminals?
+ for model in ${goterms[@]}
+ do
+ if [[ "${model}" == "${term}" ]]
+ then
+ models+=( ${term} )
+ fi
+ done
+
+ # chop off primary name
+ line=${line#${term}}
+ line=${line#|}
+ # chop off description
+ line=${line%|*}
+ while [[ "$line" != "" ]]
+ do
+ a=${line%%|*}
+ aliases+=( ${a}=${term} )
+ line=${line#$a}
+ line=${line#|}
+ done
+ i=$(( i + 1 ))
+ progress $i ${#args[@]}
+done
+echo
+# make sure we have mkinfo
+printf "Building mkinfo: "
+go build mkinfo.go
+echo "done."
+
+# Build all the go database files for the "interesting" terminals".
+printf "Building Go database: "
+i=0
+for model in ${models[@]}
+do
+ safe=$(echo $model | tr - _)
+ file=term_${safe}.go
+ ./mkinfo -go $file $model
+ go fmt ${file} >/dev/null
+ i=$(( i + 1 ))
+ progress $i ${#models[@]}
+done
+echo
+
+printf "Building JSON database: "
+
+# The JSON files are located for each terminal in a file with the
+# terminal name, in the following fashion "database/x/xterm.json
+
+i=0
+for model in ${all[@]}
+do
+ letter=$(ord ${model:0:1})
+ dir=database/${letter}
+ file=${dir}/${model}.gz
+ mkdir -p ${dir}
+ ./mkinfo -nofatal -quiet -gzip -json ${file} ${model}
+ i=$(( i + 1 ))
+ progress $i ${#all[@]}
+done
+echo
+
+printf "Building JSON aliases: "
+i=0
+for model in ${aliases[@]}
+do
+ canon=${model#*=}
+ model=${model%=*}
+ letter=$(ord ${model:0:1})
+ cletter=$(ord ${canon:0:1})
+ dir=database/${letter}
+ file=${dir}/${model}
+ if [[ -f database/${cletter}/${canon}.gz ]]
+ then
+ [[ -d ${dir} ]] || mkdir -p ${dir}
+ # Generally speaking the aliases are better uncompressed
+ ./mkinfo -nofatal -quiet -json ${file} ${model}
+ fi
+ i=$(( i + 1 ))
+ progress $i ${#aliases[@]}
+done
+echo
diff --git a/vendor/maunium.net/go/tcell/terminfo/mkinfo.go b/vendor/maunium.net/go/tcell/terminfo/mkinfo.go
new file mode 100644
index 0000000..0040e6c
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/mkinfo.go
@@ -0,0 +1,781 @@
+// +build ignore
+
+// Copyright 2017 The TCell Authors
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use file except in compliance with the License.
+// You may obtain a copy of the license at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// This command is used to generate suitable configuration files in either
+// go syntax or in JSON. It defaults to JSON output on stdout. If no
+// term values are specified on the command line, then $TERM is used.
+//
+// Usage is like this:
+//
+// mkinfo [-init] [-go file.go] [-json file.json] [-quiet] [-nofatal] [<term>...]
+//
+// -gzip specifies output should be compressed (json only)
+// -go specifies Go output into the named file. Use - for stdout.
+// -json specifies JSON output in the named file. Use - for stdout
+// -nofatal indicates that errors loading definitions should not be fatal
+//
+
+package main
+
+import (
+ "bytes"
+ "compress/gzip"
+ "encoding/json"
+ "errors"
+ "flag"
+ "fmt"
+ "io"
+ "os"
+ "os/exec"
+ "regexp"
+ "strconv"
+ "strings"
+
+ "maunium.net/go/tcell/terminfo"
+)
+
+type termcap struct {
+ name string
+ desc string
+ aliases []string
+ bools map[string]bool
+ nums map[string]int
+ strs map[string]string
+}
+
+func (tc *termcap) getnum(s string) int {
+ return (tc.nums[s])
+}
+
+func (tc *termcap) getflag(s string) bool {
+ return (tc.bools[s])
+}
+
+func (tc *termcap) getstr(s string) string {
+ return (tc.strs[s])
+}
+
+const (
+ NONE = iota
+ CTRL
+ ESC
+)
+
+func unescape(s string) string {
+ // Various escapes are in \x format. Control codes are
+ // encoded as ^M (carat followed by ASCII equivalent).
+ // Escapes are: \e, \E - escape
+ // \0 NULL, \n \l \r \t \b \f \s for equivalent C escape.
+ buf := &bytes.Buffer{}
+ esc := NONE
+
+ for i := 0; i < len(s); i++ {
+ c := s[i]
+ switch esc {
+ case NONE:
+ switch c {
+ case '\\':
+ esc = ESC
+ case '^':
+ esc = CTRL
+ default:
+ buf.WriteByte(c)
+ }
+ case CTRL:
+ buf.WriteByte(c - 0x40)
+ esc = NONE
+ case ESC:
+ switch c {
+ case 'E', 'e':
+ buf.WriteByte(0x1b)
+ case '0', '1', '2', '3', '4', '5', '6', '7':
+ if i+2 < len(s) && s[i+1] >= '0' && s[i+1] <= '7' && s[i+2] >= '0' && s[i+2] <= '7' {
+ buf.WriteByte(((c - '0') * 64) + ((s[i+1] - '0') * 8) + (s[i+2] - '0'))
+ i = i + 2
+ } else if c == '0' {
+ buf.WriteByte(0)
+ }
+ case 'n':
+ buf.WriteByte('\n')
+ case 'r':
+ buf.WriteByte('\r')
+ case 't':
+ buf.WriteByte('\t')
+ case 'b':
+ buf.WriteByte('\b')
+ case 'f':
+ buf.WriteByte('\f')
+ case 's':
+ buf.WriteByte(' ')
+ case 'l':
+ panic("WTF: weird format: " + s)
+ default:
+ buf.WriteByte(c)
+ }
+ esc = NONE
+ }
+ }
+ return (buf.String())
+}
+
+func (tc *termcap) setupterm(name string) error {
+ cmd := exec.Command("infocmp", "-1", name)
+ output := &bytes.Buffer{}
+ cmd.Stdout = output
+
+ tc.strs = make(map[string]string)
+ tc.bools = make(map[string]bool)
+ tc.nums = make(map[string]int)
+
+ err := cmd.Run()
+ if err != nil {
+ return err
+ }
+
+ // Now parse the output.
+ // We get comment lines (starting with "#"), followed by
+ // a header line that looks like "<name>|<alias>|...|<desc>"
+ // then capabilities, one per line, starting with a tab and ending
+ // with a comma and newline.
+ lines := strings.Split(output.String(), "\n")
+ for len(lines) > 0 && strings.HasPrefix(lines[0], "#") {
+ lines = lines[1:]
+ }
+
+ // Ditch trailing empty last line
+ if lines[len(lines)-1] == "" {
+ lines = lines[:len(lines)-1]
+ }
+ header := lines[0]
+ if strings.HasSuffix(header, ",") {
+ header = header[:len(header)-1]
+ }
+ names := strings.Split(header, "|")
+ tc.name = names[0]
+ names = names[1:]
+ if len(names) > 0 {
+ tc.desc = names[len(names)-1]
+ names = names[:len(names)-1]
+ }
+ tc.aliases = names
+ for _, val := range lines[1:] {
+ if (!strings.HasPrefix(val, "\t")) ||
+ (!strings.HasSuffix(val, ",")) {
+ return (errors.New("malformed infocmp: " + val))
+ }
+
+ val = val[1:]
+ val = val[:len(val)-1]
+
+ if k := strings.SplitN(val, "=", 2); len(k) == 2 {
+ tc.strs[k[0]] = unescape(k[1])
+ } else if k := strings.SplitN(val, "#", 2); len(k) == 2 {
+ if u, err := strconv.ParseUint(k[1], 10, 0); err != nil {
+ return (err)
+ } else {
+ tc.nums[k[0]] = int(u)
+ }
+ } else {
+ tc.bools[val] = true
+ }
+ }
+ return nil
+}
+
+// This program is used to collect data from the system's terminfo library,
+// and write it into Go source code. That is, we maintain our terminfo
+// capabilities encoded in the program. It should never need to be run by
+// an end user, but developers can use this to add codes for additional
+// terminal types.
+//
+// If a terminal name ending with -truecolor is given, and we cannot find
+// one, we will try to fabricate one from either the -256color (if present)
+// or the unadorned base name, adding the XTerm specific 24-bit color
+// escapes. We believe that all 24-bit capable terminals use the same
+// escape sequences, and terminfo has yet to evolve to support this.
+func getinfo(name string) (*terminfo.Terminfo, string, error) {
+ var tc termcap
+ addTrueColor := false
+ if err := tc.setupterm(name); err != nil {
+ if strings.HasSuffix(name, "-truecolor") {
+ base := name[:len(name)-len("-truecolor")]
+ // Probably -256color is closest to what we want
+ if err = tc.setupterm(base + "-256color"); err != nil {
+ err = tc.setupterm(base)
+ }
+ if err == nil {
+ addTrueColor = true
+ }
+ tc.name = name
+ }
+ if err != nil {
+ return nil, "", err
+ }
+ }
+ t := &terminfo.Terminfo{}
+ // If this is an alias record, then just emit the alias
+ t.Name = tc.name
+ if t.Name != name {
+ return t, "", nil
+ }
+ t.Aliases = tc.aliases
+ t.Colors = tc.getnum("colors")
+ t.Columns = tc.getnum("cols")
+ t.Lines = tc.getnum("lines")
+ t.Bell = tc.getstr("bel")
+ t.Clear = tc.getstr("clear")
+ t.EnterCA = tc.getstr("smcup")
+ t.ExitCA = tc.getstr("rmcup")
+ t.ShowCursor = tc.getstr("cnorm")
+ t.HideCursor = tc.getstr("civis")
+ t.AttrOff = tc.getstr("sgr0")
+ t.Underline = tc.getstr("smul")
+ t.Bold = tc.getstr("bold")
+ t.Italic = tc.getstr("sitm")
+ if len(t.Italic) == 0 {
+ t.Italic = "\x1b[3m"
+ }
+ t.Strikethrough = "\x1b[9m"
+ t.Blink = tc.getstr("blink")
+ t.Dim = tc.getstr("dim")
+ t.Reverse = tc.getstr("rev")
+ t.EnterKeypad = tc.getstr("smkx")
+ t.ExitKeypad = tc.getstr("rmkx")
+ t.SetFg = tc.getstr("setaf")
+ t.SetBg = tc.getstr("setab")
+ t.SetCursor = tc.getstr("cup")
+ t.CursorBack1 = tc.getstr("cub1")
+ t.CursorUp1 = tc.getstr("cuu1")
+ t.KeyF1 = tc.getstr("kf1")
+ t.KeyF2 = tc.getstr("kf2")
+ t.KeyF3 = tc.getstr("kf3")
+ t.KeyF4 = tc.getstr("kf4")
+ t.KeyF5 = tc.getstr("kf5")
+ t.KeyF6 = tc.getstr("kf6")
+ t.KeyF7 = tc.getstr("kf7")
+ t.KeyF8 = tc.getstr("kf8")
+ t.KeyF9 = tc.getstr("kf9")
+ t.KeyF10 = tc.getstr("kf10")
+ t.KeyF11 = tc.getstr("kf11")
+ t.KeyF12 = tc.getstr("kf12")
+ t.KeyF13 = tc.getstr("kf13")
+ t.KeyF14 = tc.getstr("kf14")
+ t.KeyF15 = tc.getstr("kf15")
+ t.KeyF16 = tc.getstr("kf16")
+ t.KeyF17 = tc.getstr("kf17")
+ t.KeyF18 = tc.getstr("kf18")
+ t.KeyF19 = tc.getstr("kf19")
+ t.KeyF20 = tc.getstr("kf20")
+ t.KeyF21 = tc.getstr("kf21")
+ t.KeyF22 = tc.getstr("kf22")
+ t.KeyF23 = tc.getstr("kf23")
+ t.KeyF24 = tc.getstr("kf24")
+ t.KeyF25 = tc.getstr("kf25")
+ t.KeyF26 = tc.getstr("kf26")
+ t.KeyF27 = tc.getstr("kf27")
+ t.KeyF28 = tc.getstr("kf28")
+ t.KeyF29 = tc.getstr("kf29")
+ t.KeyF30 = tc.getstr("kf30")
+ t.KeyF31 = tc.getstr("kf31")
+ t.KeyF32 = tc.getstr("kf32")
+ t.KeyF33 = tc.getstr("kf33")
+ t.KeyF34 = tc.getstr("kf34")
+ t.KeyF35 = tc.getstr("kf35")
+ t.KeyF36 = tc.getstr("kf36")
+ t.KeyF37 = tc.getstr("kf37")
+ t.KeyF38 = tc.getstr("kf38")
+ t.KeyF39 = tc.getstr("kf39")
+ t.KeyF40 = tc.getstr("kf40")
+ t.KeyF41 = tc.getstr("kf41")
+ t.KeyF42 = tc.getstr("kf42")
+ t.KeyF43 = tc.getstr("kf43")
+ t.KeyF44 = tc.getstr("kf44")
+ t.KeyF45 = tc.getstr("kf45")
+ t.KeyF46 = tc.getstr("kf46")
+ t.KeyF47 = tc.getstr("kf47")
+ t.KeyF48 = tc.getstr("kf48")
+ t.KeyF49 = tc.getstr("kf49")
+ t.KeyF50 = tc.getstr("kf50")
+ t.KeyF51 = tc.getstr("kf51")
+ t.KeyF52 = tc.getstr("kf52")
+ t.KeyF53 = tc.getstr("kf53")
+ t.KeyF54 = tc.getstr("kf54")
+ t.KeyF55 = tc.getstr("kf55")
+ t.KeyF56 = tc.getstr("kf56")
+ t.KeyF57 = tc.getstr("kf57")
+ t.KeyF58 = tc.getstr("kf58")
+ t.KeyF59 = tc.getstr("kf59")
+ t.KeyF60 = tc.getstr("kf60")
+ t.KeyF61 = tc.getstr("kf61")
+ t.KeyF62 = tc.getstr("kf62")
+ t.KeyF63 = tc.getstr("kf63")
+ t.KeyF64 = tc.getstr("kf64")
+ t.KeyInsert = tc.getstr("kich1")
+ t.KeyDelete = tc.getstr("kdch1")
+ t.KeyBackspace = tc.getstr("kbs")
+ t.KeyHome = tc.getstr("khome")
+ t.KeyEnd = tc.getstr("kend")
+ t.KeyUp = tc.getstr("kcuu1")
+ t.KeyDown = tc.getstr("kcud1")
+ t.KeyRight = tc.getstr("kcuf1")
+ t.KeyLeft = tc.getstr("kcub1")
+ t.KeyPgDn = tc.getstr("knp")
+ t.KeyPgUp = tc.getstr("kpp")
+ t.KeyBacktab = tc.getstr("kcbt")
+ t.KeyExit = tc.getstr("kext")
+ t.KeyCancel = tc.getstr("kcan")
+ t.KeyPrint = tc.getstr("kprt")
+ t.KeyHelp = tc.getstr("khlp")
+ t.KeyClear = tc.getstr("kclr")
+ t.AltChars = tc.getstr("acsc")
+ t.EnterAcs = tc.getstr("smacs")
+ t.ExitAcs = tc.getstr("rmacs")
+ t.EnableAcs = tc.getstr("enacs")
+ t.Mouse = tc.getstr("kmous")
+ t.KeyShfRight = tc.getstr("kRIT")
+ t.KeyShfLeft = tc.getstr("kLFT")
+ t.KeyShfHome = tc.getstr("kHOM")
+ t.KeyShfEnd = tc.getstr("kEND")
+
+ // Terminfo lacks descriptions for a bunch of modified keys,
+ // but modern XTerm and emulators often have them. Let's add them,
+ // if the shifted right and left arrows are defined.
+ if t.KeyShfRight == "\x1b[1;2C" && t.KeyShfLeft == "\x1b[1;2D" {
+ t.KeyShfUp = "\x1b[1;2A"
+ t.KeyShfDown = "\x1b[1;2B"
+ t.KeyMetaUp = "\x1b[1;9A"
+ t.KeyMetaDown = "\x1b[1;9B"
+ t.KeyMetaRight = "\x1b[1;9C"
+ t.KeyMetaLeft = "\x1b[1;9D"
+ t.KeyAltUp = "\x1b[1;3A"
+ t.KeyAltDown = "\x1b[1;3B"
+ t.KeyAltRight = "\x1b[1;3C"
+ t.KeyAltLeft = "\x1b[1;3D"
+ t.KeyCtrlUp = "\x1b[1;5A"
+ t.KeyCtrlDown = "\x1b[1;5B"
+ t.KeyCtrlRight = "\x1b[1;5C"
+ t.KeyCtrlLeft = "\x1b[1;5D"
+ t.KeyAltShfUp = "\x1b[1;4A"
+ t.KeyAltShfDown = "\x1b[1;4B"
+ t.KeyAltShfRight = "\x1b[1;4C"
+ t.KeyAltShfLeft = "\x1b[1;4D"
+
+ t.KeyMetaShfUp = "\x1b[1;10A"
+ t.KeyMetaShfDown = "\x1b[1;10B"
+ t.KeyMetaShfRight = "\x1b[1;10C"
+ t.KeyMetaShfLeft = "\x1b[1;10D"
+
+ t.KeyCtrlShfUp = "\x1b[1;6A"
+ t.KeyCtrlShfDown = "\x1b[1;6B"
+ t.KeyCtrlShfRight = "\x1b[1;6C"
+ t.KeyCtrlShfLeft = "\x1b[1;6D"
+ }
+ // And also for Home and End
+ if t.KeyShfHome == "\x1b[1;2H" && t.KeyShfEnd == "\x1b[1;2F" {
+ t.KeyCtrlHome = "\x1b[1;5H"
+ t.KeyCtrlEnd = "\x1b[1;5F"
+ t.KeyAltHome = "\x1b[1;9H"
+ t.KeyAltEnd = "\x1b[1;9F"
+ t.KeyCtrlShfHome = "\x1b[1;6H"
+ t.KeyCtrlShfEnd = "\x1b[1;6F"
+ t.KeyAltShfHome = "\x1b[1;4H"
+ t.KeyAltShfEnd = "\x1b[1;4F"
+ t.KeyMetaShfHome = "\x1b[1;10H"
+ t.KeyMetaShfEnd = "\x1b[1;10F"
+ }
+
+ // And the same thing for rxvt and workalikes (Eterm, aterm, etc.)
+ // It seems that urxvt at least send ESC as ALT prefix for these,
+ // although some places seem to indicate a separate ALT key sesquence.
+ if t.KeyShfRight == "\x1b[c" && t.KeyShfLeft == "\x1b[d" {
+ t.KeyShfUp = "\x1b[a"
+ t.KeyShfDown = "\x1b[b"
+ t.KeyCtrlUp = "\x1b[Oa"
+ t.KeyCtrlDown = "\x1b[Ob"
+ t.KeyCtrlRight = "\x1b[Oc"
+ t.KeyCtrlLeft = "\x1b[Od"
+ }
+ if t.KeyShfHome == "\x1b[7$" && t.KeyShfEnd == "\x1b[8$" {
+ t.KeyCtrlHome = "\x1b[7^"
+ t.KeyCtrlEnd = "\x1b[8^"
+ }
+
+ // If the kmous entry is present, then we need to record the
+ // the codes to enter and exit mouse mode. Sadly, this is not
+ // part of the terminfo databases anywhere that I've found, but
+ // is an extension. The escape codes are documented in the XTerm
+ // manual, and all terminals that have kmous are expected to
+ // use these same codes, unless explicitly configured otherwise
+ // vi XM. Note that in any event, we only known how to parse either
+ // x11 or SGR mouse events -- if your terminal doesn't support one
+ // of these two forms, you maybe out of luck.
+ t.MouseMode = tc.getstr("XM")
+ if t.Mouse != "" && t.MouseMode == "" {
+ // we anticipate that all xterm mouse tracking compatible
+ // terminals understand mouse tracking (1000), but we hope
+ // that those that don't understand any-event tracking (1003)
+ // will at least ignore it. Likewise we hope that terminals
+ // that don't understand SGR reporting (1006) just ignore it.
+ t.MouseMode = "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;" +
+ "\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c"
+ }
+
+ // We only support colors in ANSI 8 or 256 color mode.
+ if t.Colors < 8 || t.SetFg == "" {
+ t.Colors = 0
+ }
+ if t.SetCursor == "" {
+ return nil, "", errors.New("terminal not cursor addressable")
+ }
+
+ // For padding, we lookup the pad char. If that isn't present,
+ // and npc is *not* set, then we assume a null byte.
+ t.PadChar = tc.getstr("pad")
+ if t.PadChar == "" {
+ if !tc.getflag("npc") {
+ t.PadChar = "\u0000"
+ }
+ }
+
+ // For some terminals we fabricate a -truecolor entry, that may
+ // not exist in terminfo.
+ if addTrueColor {
+ t.SetFgRGB = "\x1b[38;2;%p1%d;%p2%d;%p3%dm"
+ t.SetBgRGB = "\x1b[48;2;%p1%d;%p2%d;%p3%dm"
+ t.SetFgBgRGB = "\x1b[38;2;%p1%d;%p2%d;%p3%d;" +
+ "48;2;%p4%d;%p5%d;%p6%dm"
+ }
+
+ // For terminals that use "standard" SGR sequences, lets combine the
+ // foreground and background together.
+ if strings.HasPrefix(t.SetFg, "\x1b[") &&
+ strings.HasPrefix(t.SetBg, "\x1b[") &&
+ strings.HasSuffix(t.SetFg, "m") &&
+ strings.HasSuffix(t.SetBg, "m") {
+ fg := t.SetFg[:len(t.SetFg)-1]
+ r := regexp.MustCompile("%p1")
+ bg := r.ReplaceAllString(t.SetBg[2:], "%p2")
+ t.SetFgBg = fg + ";" + bg
+ }
+
+ return t, tc.desc, nil
+}
+
+func dotGoAddInt(w io.Writer, n string, i int) {
+ if i == 0 {
+ // initialized to 0, ignore
+ return
+ }
+ fmt.Fprintf(w, "\t\t%-13s %d,\n", n+":", i)
+}
+func dotGoAddStr(w io.Writer, n string, s string) {
+ if s == "" {
+ return
+ }
+ fmt.Fprintf(w, "\t\t%-13s %q,\n", n+":", s)
+}
+
+func dotGoAddArr(w io.Writer, n string, a []string) {
+ if len(a) == 0 {
+ return
+ }
+ fmt.Fprintf(w, "\t\t%-13s []string{", n+":")
+ did := false
+ for _, b := range a {
+ if did {
+ fmt.Fprint(w, ", ")
+ }
+ did = true
+ fmt.Fprintf(w, "%q", b)
+ }
+ fmt.Fprintln(w, "},")
+}
+
+func dotGoHeader(w io.Writer, packname string) {
+ fmt.Fprintln(w, "// Generated automatically. DO NOT HAND-EDIT.")
+ fmt.Fprintln(w, "")
+ fmt.Fprintf(w, "package %s\n", packname)
+ fmt.Fprintln(w, "")
+}
+
+func dotGoTrailer(w io.Writer) {
+}
+
+func dotGoInfo(w io.Writer, t *terminfo.Terminfo, desc string) {
+
+ fmt.Fprintln(w, "")
+ fmt.Fprintln(w, "func init() {")
+ fmt.Fprintf(w, "\t// %s\n", desc)
+ fmt.Fprintln(w, "\tAddTerminfo(&Terminfo{")
+ dotGoAddStr(w, "Name", t.Name)
+ dotGoAddArr(w, "Aliases", t.Aliases)
+ dotGoAddInt(w, "Columns", t.Columns)
+ dotGoAddInt(w, "Lines", t.Lines)
+ dotGoAddInt(w, "Colors", t.Colors)
+ dotGoAddStr(w, "Bell", t.Bell)
+ dotGoAddStr(w, "Clear", t.Clear)
+ dotGoAddStr(w, "EnterCA", t.EnterCA)
+ dotGoAddStr(w, "ExitCA", t.ExitCA)
+ dotGoAddStr(w, "ShowCursor", t.ShowCursor)
+ dotGoAddStr(w, "HideCursor", t.HideCursor)
+ dotGoAddStr(w, "AttrOff", t.AttrOff)
+ dotGoAddStr(w, "Underline", t.Underline)
+ dotGoAddStr(w, "Bold", t.Bold)
+ dotGoAddStr(w, "Italic", t.Italic)
+ dotGoAddStr(w, "Strikethrough", "\x1b[9m")
+ dotGoAddStr(w, "Dim", t.Dim)
+ dotGoAddStr(w, "Blink", t.Blink)
+ dotGoAddStr(w, "Reverse", t.Reverse)
+ dotGoAddStr(w, "EnterKeypad", t.EnterKeypad)
+ dotGoAddStr(w, "ExitKeypad", t.ExitKeypad)
+ dotGoAddStr(w, "SetFg", t.SetFg)
+ dotGoAddStr(w, "SetBg", t.SetBg)
+ dotGoAddStr(w, "SetFgBg", t.SetFgBg)
+ dotGoAddStr(w, "PadChar", t.PadChar)
+ dotGoAddStr(w, "AltChars", t.AltChars)
+ dotGoAddStr(w, "EnterAcs", t.EnterAcs)
+ dotGoAddStr(w, "ExitAcs", t.ExitAcs)
+ dotGoAddStr(w, "EnableAcs", t.EnableAcs)
+ dotGoAddStr(w, "SetFgRGB", t.SetFgRGB)
+ dotGoAddStr(w, "SetBgRGB", t.SetBgRGB)
+ dotGoAddStr(w, "SetFgBgRGB", t.SetFgBgRGB)
+ dotGoAddStr(w, "Mouse", t.Mouse)
+ dotGoAddStr(w, "MouseMode", t.MouseMode)
+ dotGoAddStr(w, "SetCursor", t.SetCursor)
+ dotGoAddStr(w, "CursorBack1", t.CursorBack1)
+ dotGoAddStr(w, "CursorUp1", t.CursorUp1)
+ dotGoAddStr(w, "KeyUp", t.KeyUp)
+ dotGoAddStr(w, "KeyDown", t.KeyDown)
+ dotGoAddStr(w, "KeyRight", t.KeyRight)
+ dotGoAddStr(w, "KeyLeft", t.KeyLeft)
+ dotGoAddStr(w, "KeyInsert", t.KeyInsert)
+ dotGoAddStr(w, "KeyDelete", t.KeyDelete)
+ dotGoAddStr(w, "KeyBackspace", t.KeyBackspace)
+ dotGoAddStr(w, "KeyHome", t.KeyHome)
+ dotGoAddStr(w, "KeyEnd", t.KeyEnd)
+ dotGoAddStr(w, "KeyPgUp", t.KeyPgUp)
+ dotGoAddStr(w, "KeyPgDn", t.KeyPgDn)
+ dotGoAddStr(w, "KeyF1", t.KeyF1)
+ dotGoAddStr(w, "KeyF2", t.KeyF2)
+ dotGoAddStr(w, "KeyF3", t.KeyF3)
+ dotGoAddStr(w, "KeyF4", t.KeyF4)
+ dotGoAddStr(w, "KeyF5", t.KeyF5)
+ dotGoAddStr(w, "KeyF6", t.KeyF6)
+ dotGoAddStr(w, "KeyF7", t.KeyF7)
+ dotGoAddStr(w, "KeyF8", t.KeyF8)
+ dotGoAddStr(w, "KeyF9", t.KeyF9)
+ dotGoAddStr(w, "KeyF10", t.KeyF10)
+ dotGoAddStr(w, "KeyF11", t.KeyF11)
+ dotGoAddStr(w, "KeyF12", t.KeyF12)
+ dotGoAddStr(w, "KeyF13", t.KeyF13)
+ dotGoAddStr(w, "KeyF14", t.KeyF14)
+ dotGoAddStr(w, "KeyF15", t.KeyF15)
+ dotGoAddStr(w, "KeyF16", t.KeyF16)
+ dotGoAddStr(w, "KeyF17", t.KeyF17)
+ dotGoAddStr(w, "KeyF18", t.KeyF18)
+ dotGoAddStr(w, "KeyF19", t.KeyF19)
+ dotGoAddStr(w, "KeyF20", t.KeyF20)
+ dotGoAddStr(w, "KeyF21", t.KeyF21)
+ dotGoAddStr(w, "KeyF22", t.KeyF22)
+ dotGoAddStr(w, "KeyF23", t.KeyF23)
+ dotGoAddStr(w, "KeyF24", t.KeyF24)
+ dotGoAddStr(w, "KeyF25", t.KeyF25)
+ dotGoAddStr(w, "KeyF26", t.KeyF26)
+ dotGoAddStr(w, "KeyF27", t.KeyF27)
+ dotGoAddStr(w, "KeyF28", t.KeyF28)
+ dotGoAddStr(w, "KeyF29", t.KeyF29)
+ dotGoAddStr(w, "KeyF30", t.KeyF30)
+ dotGoAddStr(w, "KeyF31", t.KeyF31)
+ dotGoAddStr(w, "KeyF32", t.KeyF32)
+ dotGoAddStr(w, "KeyF33", t.KeyF33)
+ dotGoAddStr(w, "KeyF34", t.KeyF34)
+ dotGoAddStr(w, "KeyF35", t.KeyF35)
+ dotGoAddStr(w, "KeyF36", t.KeyF36)
+ dotGoAddStr(w, "KeyF37", t.KeyF37)
+ dotGoAddStr(w, "KeyF38", t.KeyF38)
+ dotGoAddStr(w, "KeyF39", t.KeyF39)
+ dotGoAddStr(w, "KeyF40", t.KeyF40)
+ dotGoAddStr(w, "KeyF41", t.KeyF41)
+ dotGoAddStr(w, "KeyF42", t.KeyF42)
+ dotGoAddStr(w, "KeyF43", t.KeyF43)
+ dotGoAddStr(w, "KeyF44", t.KeyF44)
+ dotGoAddStr(w, "KeyF45", t.KeyF45)
+ dotGoAddStr(w, "KeyF46", t.KeyF46)
+ dotGoAddStr(w, "KeyF47", t.KeyF47)
+ dotGoAddStr(w, "KeyF48", t.KeyF48)
+ dotGoAddStr(w, "KeyF49", t.KeyF49)
+ dotGoAddStr(w, "KeyF50", t.KeyF50)
+ dotGoAddStr(w, "KeyF51", t.KeyF51)
+ dotGoAddStr(w, "KeyF52", t.KeyF52)
+ dotGoAddStr(w, "KeyF53", t.KeyF53)
+ dotGoAddStr(w, "KeyF54", t.KeyF54)
+ dotGoAddStr(w, "KeyF55", t.KeyF55)
+ dotGoAddStr(w, "KeyF56", t.KeyF56)
+ dotGoAddStr(w, "KeyF57", t.KeyF57)
+ dotGoAddStr(w, "KeyF58", t.KeyF58)
+ dotGoAddStr(w, "KeyF59", t.KeyF59)
+ dotGoAddStr(w, "KeyF60", t.KeyF60)
+ dotGoAddStr(w, "KeyF61", t.KeyF61)
+ dotGoAddStr(w, "KeyF62", t.KeyF62)
+ dotGoAddStr(w, "KeyF63", t.KeyF63)
+ dotGoAddStr(w, "KeyF64", t.KeyF64)
+ dotGoAddStr(w, "KeyCancel", t.KeyCancel)
+ dotGoAddStr(w, "KeyPrint", t.KeyPrint)
+ dotGoAddStr(w, "KeyExit", t.KeyExit)
+ dotGoAddStr(w, "KeyHelp", t.KeyHelp)
+ dotGoAddStr(w, "KeyClear", t.KeyClear)
+ dotGoAddStr(w, "KeyBacktab", t.KeyBacktab)
+ dotGoAddStr(w, "KeyShfLeft", t.KeyShfLeft)
+ dotGoAddStr(w, "KeyShfRight", t.KeyShfRight)
+ dotGoAddStr(w, "KeyShfUp", t.KeyShfUp)
+ dotGoAddStr(w, "KeyShfDown", t.KeyShfDown)
+ dotGoAddStr(w, "KeyCtrlLeft", t.KeyCtrlLeft)
+ dotGoAddStr(w, "KeyCtrlRight", t.KeyCtrlRight)
+ dotGoAddStr(w, "KeyCtrlUp", t.KeyCtrlUp)
+ dotGoAddStr(w, "KeyCtrlDown", t.KeyCtrlDown)
+ dotGoAddStr(w, "KeyMetaLeft", t.KeyMetaLeft)
+ dotGoAddStr(w, "KeyMetaRight", t.KeyMetaRight)
+ dotGoAddStr(w, "KeyMetaUp", t.KeyMetaUp)
+ dotGoAddStr(w, "KeyMetaDown", t.KeyMetaDown)
+ dotGoAddStr(w, "KeyAltLeft", t.KeyAltLeft)
+ dotGoAddStr(w, "KeyAltRight", t.KeyAltRight)
+ dotGoAddStr(w, "KeyAltUp", t.KeyAltUp)
+ dotGoAddStr(w, "KeyAltDown", t.KeyAltDown)
+ dotGoAddStr(w, "KeyAltShfLeft", t.KeyAltShfLeft)
+ dotGoAddStr(w, "KeyAltShfRight", t.KeyAltShfRight)
+ dotGoAddStr(w, "KeyAltShfUp", t.KeyAltShfUp)
+ dotGoAddStr(w, "KeyAltShfDown", t.KeyAltShfDown)
+ dotGoAddStr(w, "KeyMetaShfLeft", t.KeyMetaShfLeft)
+ dotGoAddStr(w, "KeyMetaShfRight", t.KeyMetaShfRight)
+ dotGoAddStr(w, "KeyMetaShfUp", t.KeyMetaShfUp)
+ dotGoAddStr(w, "KeyMetaShfDown", t.KeyMetaShfDown)
+ dotGoAddStr(w, "KeyCtrlShfLeft", t.KeyCtrlShfLeft)
+ dotGoAddStr(w, "KeyCtrlShfRight", t.KeyCtrlShfRight)
+ dotGoAddStr(w, "KeyCtrlShfUp", t.KeyCtrlShfUp)
+ dotGoAddStr(w, "KeyCtrlShfDown", t.KeyCtrlShfDown)
+ dotGoAddStr(w, "KeyShfHome", t.KeyShfHome)
+ dotGoAddStr(w, "KeyShfEnd", t.KeyShfEnd)
+ dotGoAddStr(w, "KeyCtrlHome", t.KeyCtrlHome)
+ dotGoAddStr(w, "KeyCtrlEnd", t.KeyCtrlEnd)
+ dotGoAddStr(w, "KeyMetaHome", t.KeyMetaHome)
+ dotGoAddStr(w, "KeyMetaEnd", t.KeyMetaEnd)
+ dotGoAddStr(w, "KeyAltHome", t.KeyAltHome)
+ dotGoAddStr(w, "KeyAltEnd", t.KeyAltEnd)
+ dotGoAddStr(w, "KeyCtrlShfHome", t.KeyCtrlShfHome)
+ dotGoAddStr(w, "KeyCtrlShfEnd", t.KeyCtrlShfEnd)
+ dotGoAddStr(w, "KeyMetaShfHome", t.KeyMetaShfHome)
+ dotGoAddStr(w, "KeyMetaShfEnd", t.KeyMetaShfEnd)
+ dotGoAddStr(w, "KeyAltShfHome", t.KeyAltShfHome)
+ dotGoAddStr(w, "KeyAltShfEnd", t.KeyAltShfEnd)
+ fmt.Fprintln(w, "\t})")
+ fmt.Fprintln(w, "}")
+}
+
+func main() {
+ gofile := ""
+ jsonfile := ""
+ packname := "terminfo"
+ nofatal := false
+ quiet := false
+ dogzip := false
+
+ flag.StringVar(&gofile, "go", "", "generate go source in named file")
+ flag.StringVar(&jsonfile, "json", "", "generate json in named file")
+ flag.StringVar(&packname, "P", packname, "package name (go source)")
+ flag.BoolVar(&nofatal, "nofatal", false, "errors are not fatal")
+ flag.BoolVar(&quiet, "quiet", false, "suppress error messages")
+ flag.BoolVar(&dogzip, "gzip", false, "compress json output")
+ flag.Parse()
+ var e error
+ js := []byte{}
+
+ args := flag.Args()
+ if len(args) == 0 {
+ args = []string{os.Getenv("TERM")}
+ }
+
+ tdata := make(map[string]*terminfo.Terminfo)
+ descs := make(map[string]string)
+
+ for _, term := range args {
+ if t, desc, e := getinfo(term); e != nil {
+ if !quiet {
+ fmt.Fprintf(os.Stderr,
+ "Failed loading %s: %v\n", term, e)
+ }
+ if !nofatal {
+ os.Exit(1)
+ }
+ } else {
+ tdata[term] = t
+ descs[term] = desc
+ }
+ }
+
+ if len(tdata) == 0 {
+ // No data.
+ os.Exit(0)
+ }
+ if gofile != "" {
+ w := os.Stdout
+ if gofile != "-" {
+ if w, e = os.Create(gofile); e != nil {
+ fmt.Fprintf(os.Stderr, "Failed: %v", e)
+ os.Exit(1)
+ }
+ }
+ dotGoHeader(w, packname)
+ for term, t := range tdata {
+ if t.Name == term {
+ dotGoInfo(w, t, descs[term])
+ }
+ }
+ dotGoTrailer(w)
+ if w != os.Stdout {
+ w.Close()
+ }
+ } else {
+ o := os.Stdout
+ if jsonfile != "-" && jsonfile != "" {
+ if o, e = os.Create(jsonfile); e != nil {
+ fmt.Fprintf(os.Stderr, "Failed: %v", e)
+ }
+ }
+ var w io.WriteCloser
+ w = o
+ if dogzip {
+ w = gzip.NewWriter(o)
+ }
+ for _, term := range args {
+ if t := tdata[term]; t != nil {
+ js, e = json.Marshal(t)
+ fmt.Fprintln(w, string(js))
+ }
+ // arguably if there is more than one term, this
+ // should be a javascript array, but that's not how
+ // we load it. We marshal objects one at a time from
+ // the file.
+ }
+ if e != nil {
+ fmt.Fprintf(os.Stderr, "Failed: %v", e)
+ os.Exit(1)
+ }
+ w.Close()
+ if w != o {
+ o.Close()
+ }
+ }
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/models.txt b/vendor/maunium.net/go/tcell/terminfo/models.txt
new file mode 100644
index 0000000..ac0676d
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/models.txt
@@ -0,0 +1,59 @@
+adm3a
+aixterm
+ansi
+aterm
+beterm
+bsdos-pc
+cygwin
+d200
+d210
+dtterm
+Eterm
+Eterm-256color
+eterm
+gnome
+gnome-256color
+hpterm
+hz1500
+konsole
+konsole-256color
+kterm
+linux
+pcansi
+rxvt
+rxvt-256color
+rxvt-unicode
+rxvt-unicode-256color
+screen
+screen-256color
+st
+st-256color
+st-truecolor
+st-meta
+st-meta-256color
+st-meta-truecolor
+sun
+sun-color
+tvi910
+tvi912
+tvi921
+tvi925
+tvi950
+tvi970
+vt52
+vt100
+vt102
+vt220
+vt320
+vt400
+vt420
+wy50
+wy60
+wy99-ansi
+wy99a-ansi
+xfce
+xnuppc
+xterm
+xterm
+xterm-256color
+xterm-truecolor
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_Eterm.go b/vendor/maunium.net/go/tcell/terminfo/term_Eterm.go
new file mode 100644
index 0000000..30d5af3
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_Eterm.go
@@ -0,0 +1,108 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // Eterm with xterm-style color support (X Window System)
+ AddTerminfo(&Terminfo{
+ Name: "Eterm",
+ Aliases: []string{"Eterm-color"},
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b7\x1b[?47h",
+ ExitCA: "\x1b[2J\x1b[?47l\x1b8",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[7~",
+ KeyEnd: "\x1b[8~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1b[11~",
+ KeyF2: "\x1b[12~",
+ KeyF3: "\x1b[13~",
+ KeyF4: "\x1b[14~",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[25~",
+ KeyF14: "\x1b[26~",
+ KeyF15: "\x1b[28~",
+ KeyF16: "\x1b[29~",
+ KeyF17: "\x1b[31~",
+ KeyF18: "\x1b[32~",
+ KeyF19: "\x1b[33~",
+ KeyF20: "\x1b[34~",
+ KeyF21: "\x1b[23$",
+ KeyF22: "\x1b[24$",
+ KeyF23: "\x1b[11^",
+ KeyF24: "\x1b[12^",
+ KeyF25: "\x1b[13^",
+ KeyF26: "\x1b[14^",
+ KeyF27: "\x1b[15^",
+ KeyF28: "\x1b[17^",
+ KeyF29: "\x1b[18^",
+ KeyF30: "\x1b[19^",
+ KeyF31: "\x1b[20^",
+ KeyF32: "\x1b[21^",
+ KeyF33: "\x1b[23^",
+ KeyF34: "\x1b[24^",
+ KeyF35: "\x1b[25^",
+ KeyF36: "\x1b[26^",
+ KeyF37: "\x1b[28^",
+ KeyF38: "\x1b[29^",
+ KeyF39: "\x1b[31^",
+ KeyF40: "\x1b[32^",
+ KeyF41: "\x1b[33^",
+ KeyF42: "\x1b[34^",
+ KeyF43: "\x1b[23@",
+ KeyF44: "\x1b[24@",
+ KeyHelp: "\x1b[28~",
+ KeyShfLeft: "\x1b[d",
+ KeyShfRight: "\x1b[c",
+ KeyShfUp: "\x1b[a",
+ KeyShfDown: "\x1b[b",
+ KeyCtrlLeft: "\x1b[Od",
+ KeyCtrlRight: "\x1b[Oc",
+ KeyCtrlUp: "\x1b[Oa",
+ KeyCtrlDown: "\x1b[Ob",
+ KeyShfHome: "\x1b[7$",
+ KeyShfEnd: "\x1b[8$",
+ KeyCtrlHome: "\x1b[7^",
+ KeyCtrlEnd: "\x1b[8^",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_Eterm_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_Eterm_256color.go
new file mode 100644
index 0000000..773b6c1
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_Eterm_256color.go
@@ -0,0 +1,107 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // Eterm with xterm 256-colors
+ AddTerminfo(&Terminfo{
+ Name: "Eterm-256color",
+ Columns: 80,
+ Lines: 24,
+ Colors: 256,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b7\x1b[?47h",
+ ExitCA: "\x1b[2J\x1b[?47l\x1b8",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ SetFg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
+ SetBg: "\x1b[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
+ SetFgBg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;;%?%p2%{8}%<%t4%p2%d%e%p2%{16}%<%t10%p2%{8}%-%d%e48;5;%p2%d%;m",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[7~",
+ KeyEnd: "\x1b[8~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1b[11~",
+ KeyF2: "\x1b[12~",
+ KeyF3: "\x1b[13~",
+ KeyF4: "\x1b[14~",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[25~",
+ KeyF14: "\x1b[26~",
+ KeyF15: "\x1b[28~",
+ KeyF16: "\x1b[29~",
+ KeyF17: "\x1b[31~",
+ KeyF18: "\x1b[32~",
+ KeyF19: "\x1b[33~",
+ KeyF20: "\x1b[34~",
+ KeyF21: "\x1b[23$",
+ KeyF22: "\x1b[24$",
+ KeyF23: "\x1b[11^",
+ KeyF24: "\x1b[12^",
+ KeyF25: "\x1b[13^",
+ KeyF26: "\x1b[14^",
+ KeyF27: "\x1b[15^",
+ KeyF28: "\x1b[17^",
+ KeyF29: "\x1b[18^",
+ KeyF30: "\x1b[19^",
+ KeyF31: "\x1b[20^",
+ KeyF32: "\x1b[21^",
+ KeyF33: "\x1b[23^",
+ KeyF34: "\x1b[24^",
+ KeyF35: "\x1b[25^",
+ KeyF36: "\x1b[26^",
+ KeyF37: "\x1b[28^",
+ KeyF38: "\x1b[29^",
+ KeyF39: "\x1b[31^",
+ KeyF40: "\x1b[32^",
+ KeyF41: "\x1b[33^",
+ KeyF42: "\x1b[34^",
+ KeyF43: "\x1b[23@",
+ KeyF44: "\x1b[24@",
+ KeyHelp: "\x1b[28~",
+ KeyShfLeft: "\x1b[d",
+ KeyShfRight: "\x1b[c",
+ KeyShfUp: "\x1b[a",
+ KeyShfDown: "\x1b[b",
+ KeyCtrlLeft: "\x1b[Od",
+ KeyCtrlRight: "\x1b[Oc",
+ KeyCtrlUp: "\x1b[Oa",
+ KeyCtrlDown: "\x1b[Ob",
+ KeyShfHome: "\x1b[7$",
+ KeyShfEnd: "\x1b[8$",
+ KeyCtrlHome: "\x1b[7^",
+ KeyCtrlEnd: "\x1b[8^",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_adm3a.go b/vendor/maunium.net/go/tcell/terminfo/term_adm3a.go
new file mode 100644
index 0000000..ddc17b0
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_adm3a.go
@@ -0,0 +1,24 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // lsi adm3a
+ AddTerminfo(&Terminfo{
+ Name: "adm3a",
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1a$<1/>",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ PadChar: "\x00",
+ SetCursor: "\x1b=%p1%' '%+%c%p2%' '%+%c",
+ CursorBack1: "\b",
+ CursorUp1: "\v",
+ KeyUp: "\v",
+ KeyDown: "\n",
+ KeyRight: "\f",
+ KeyLeft: "\b",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_aixterm.go b/vendor/maunium.net/go/tcell/terminfo/term_aixterm.go
new file mode 100644
index 0000000..9dc5f29
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_aixterm.go
@@ -0,0 +1,78 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // IBM Aixterm Terminal Emulator
+ AddTerminfo(&Terminfo{
+ Name: "aixterm",
+ Columns: 80,
+ Lines: 25,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J",
+ AttrOff: "\x1b[0;10m\x1b(B",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Reverse: "\x1b[7m",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "jjkkllmmnnqqttuuvvwwxx",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[139q",
+ KeyDelete: "\x1b[P",
+ KeyBackspace: "\b",
+ KeyHome: "\x1b[H",
+ KeyEnd: "\x1b[146q",
+ KeyPgUp: "\x1b[150q",
+ KeyPgDn: "\x1b[154q",
+ KeyF1: "\x1b[001q",
+ KeyF2: "\x1b[002q",
+ KeyF3: "\x1b[003q",
+ KeyF4: "\x1b[004q",
+ KeyF5: "\x1b[005q",
+ KeyF6: "\x1b[006q",
+ KeyF7: "\x1b[007q",
+ KeyF8: "\x1b[008q",
+ KeyF9: "\x1b[009q",
+ KeyF10: "\x1b[010q",
+ KeyF11: "\x1b[011q",
+ KeyF12: "\x1b[012q",
+ KeyF13: "\x1b[013q",
+ KeyF14: "\x1b[014q",
+ KeyF15: "\x1b[015q",
+ KeyF16: "\x1b[016q",
+ KeyF17: "\x1b[017q",
+ KeyF18: "\x1b[018q",
+ KeyF19: "\x1b[019q",
+ KeyF20: "\x1b[020q",
+ KeyF21: "\x1b[021q",
+ KeyF22: "\x1b[022q",
+ KeyF23: "\x1b[023q",
+ KeyF24: "\x1b[024q",
+ KeyF25: "\x1b[025q",
+ KeyF26: "\x1b[026q",
+ KeyF27: "\x1b[027q",
+ KeyF28: "\x1b[028q",
+ KeyF29: "\x1b[029q",
+ KeyF30: "\x1b[030q",
+ KeyF31: "\x1b[031q",
+ KeyF32: "\x1b[032q",
+ KeyF33: "\x1b[033q",
+ KeyF34: "\x1b[034q",
+ KeyF35: "\x1b[035q",
+ KeyF36: "\x1b[036q",
+ KeyClear: "\x1b[144q",
+ KeyBacktab: "\x1b[Z",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_ansi.go b/vendor/maunium.net/go/tcell/terminfo/term_ansi.go
new file mode 100644
index 0000000..2afdf94
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_ansi.go
@@ -0,0 +1,40 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // ansi/pc-term compatible with color
+ AddTerminfo(&Terminfo{
+ Name: "ansi",
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J",
+ AttrOff: "\x1b[0;10m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "+\x10,\x11-\x18.\x190\xdb`\x04a\xb1f\xf8g\xf1h\xb0j\xd9k\xbfl\xdam\xc0n\xc5o~p\xc4q\xc4r\xc4s_t\xc3u\xb4v\xc1w\xc2x\xb3y\xf3z\xf2{\xe3|\xd8}\x9c~\xfe",
+ EnterAcs: "\x1b[11m",
+ ExitAcs: "\x1b[10m",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\x1b[D",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[L",
+ KeyBackspace: "\b",
+ KeyHome: "\x1b[H",
+ KeyBacktab: "\x1b[Z",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_aterm.go b/vendor/maunium.net/go/tcell/terminfo/term_aterm.go
new file mode 100644
index 0000000..a8d2f99
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_aterm.go
@@ -0,0 +1,109 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // AfterStep terminal
+ AddTerminfo(&Terminfo{
+ Name: "aterm",
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b7\x1b[?47h",
+ ExitCA: "\x1b[2J\x1b[?47l\x1b8",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b=",
+ ExitKeypad: "\x1b>",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b(B\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[7~",
+ KeyEnd: "\x1b[8~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[25~",
+ KeyF14: "\x1b[26~",
+ KeyF15: "\x1b[28~",
+ KeyF16: "\x1b[29~",
+ KeyF17: "\x1b[31~",
+ KeyF18: "\x1b[32~",
+ KeyF19: "\x1b[33~",
+ KeyF20: "\x1b[34~",
+ KeyF21: "\x1b[23$",
+ KeyF22: "\x1b[24$",
+ KeyF23: "\x1b[11^",
+ KeyF24: "\x1b[12^",
+ KeyF25: "\x1b[13^",
+ KeyF26: "\x1b[14^",
+ KeyF27: "\x1b[15^",
+ KeyF28: "\x1b[17^",
+ KeyF29: "\x1b[18^",
+ KeyF30: "\x1b[19^",
+ KeyF31: "\x1b[20^",
+ KeyF32: "\x1b[21^",
+ KeyF33: "\x1b[23^",
+ KeyF34: "\x1b[24^",
+ KeyF35: "\x1b[25^",
+ KeyF36: "\x1b[26^",
+ KeyF37: "\x1b[28^",
+ KeyF38: "\x1b[29^",
+ KeyF39: "\x1b[31^",
+ KeyF40: "\x1b[32^",
+ KeyF41: "\x1b[33^",
+ KeyF42: "\x1b[34^",
+ KeyF43: "\x1b[23@",
+ KeyF44: "\x1b[24@",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[d",
+ KeyShfRight: "\x1b[c",
+ KeyShfUp: "\x1b[a",
+ KeyShfDown: "\x1b[b",
+ KeyCtrlLeft: "\x1b[Od",
+ KeyCtrlRight: "\x1b[Oc",
+ KeyCtrlUp: "\x1b[Oa",
+ KeyCtrlDown: "\x1b[Ob",
+ KeyShfHome: "\x1b[7$",
+ KeyShfEnd: "\x1b[8$",
+ KeyCtrlHome: "\x1b[7^",
+ KeyCtrlEnd: "\x1b[8^",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_beterm.go b/vendor/maunium.net/go/tcell/terminfo/term_beterm.go
new file mode 100644
index 0000000..6fdf015
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_beterm.go
@@ -0,0 +1,53 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // BeOS Terminal
+ AddTerminfo(&Terminfo{
+ Name: "beterm",
+ Columns: 80,
+ Lines: 25,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J",
+ AttrOff: "\x1b[0;10m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?4h",
+ ExitKeypad: "\x1b[?4l",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\b",
+ KeyHome: "\x1b[1~",
+ KeyEnd: "\x1b[4~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1b[11~",
+ KeyF2: "\x1b[12~",
+ KeyF3: "\x1b[13~",
+ KeyF4: "\x1b[14~",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[16~",
+ KeyF7: "\x1b[17~",
+ KeyF8: "\x1b[18~",
+ KeyF9: "\x1b[19~",
+ KeyF10: "\x1b[20~",
+ KeyF11: "\x1b[21~",
+ KeyF12: "\x1b[22~",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_bsdos_pc.go b/vendor/maunium.net/go/tcell/terminfo/term_bsdos_pc.go
new file mode 100644
index 0000000..119db3c
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_bsdos_pc.go
@@ -0,0 +1,41 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // IBM PC BSD/OS Console
+ AddTerminfo(&Terminfo{
+ Name: "bsdos-pc",
+ Columns: 80,
+ Lines: 25,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1bc",
+ AttrOff: "\x1b[0;10m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "+\x10,\x11-\x18.\x190\xdb`\x04a\xb1f\xf8g\xf1h\xb0j\xd9k\xbfl\xdam\xc0n\xc5o~p\xc4q\xc4r\xc4s_t\xc3u\xb4v\xc1w\xc2x\xb3y\xf3z\xf2{\xe3|\xd8}\x9c~\xfe",
+ EnterAcs: "\x1b[11m",
+ ExitAcs: "\x1b[10m",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[L",
+ KeyBackspace: "\b",
+ KeyHome: "\x1b[H",
+ KeyPgUp: "\x1b[I",
+ KeyPgDn: "\x1b[G",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_cygwin.go b/vendor/maunium.net/go/tcell/terminfo/term_cygwin.go
new file mode 100644
index 0000000..3c8477d
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_cygwin.go
@@ -0,0 +1,62 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // ansi emulation for Cygwin
+ AddTerminfo(&Terminfo{
+ Name: "cygwin",
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J",
+ EnterCA: "\x1b7\x1b[?47h",
+ ExitCA: "\x1b[2J\x1b[?47l\x1b8",
+ AttrOff: "\x1b[0;10m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Reverse: "\x1b[7m",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "+\x10,\x11-\x18.\x190\xdb`\x04a\xb1f\xf8g\xf1h\xb0j\xd9k\xbfl\xdam\xc0n\xc5o~p\xc4q\xc4r\xc4s_t\xc3u\xb4v\xc1w\xc2x\xb3y\xf3z\xf2{\xe3|\xd8}\x9c~\xfe",
+ EnterAcs: "\x1b[11m",
+ ExitAcs: "\x1b[10m",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\b",
+ KeyHome: "\x1b[1~",
+ KeyEnd: "\x1b[4~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1b[[A",
+ KeyF2: "\x1b[[B",
+ KeyF3: "\x1b[[C",
+ KeyF4: "\x1b[[D",
+ KeyF5: "\x1b[[E",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[25~",
+ KeyF14: "\x1b[26~",
+ KeyF15: "\x1b[28~",
+ KeyF16: "\x1b[29~",
+ KeyF17: "\x1b[31~",
+ KeyF18: "\x1b[32~",
+ KeyF19: "\x1b[33~",
+ KeyF20: "\x1b[34~",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_d200.go b/vendor/maunium.net/go/tcell/terminfo/term_d200.go
new file mode 100644
index 0000000..c9e0877
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_d200.go
@@ -0,0 +1,96 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // Data General DASHER D200
+ AddTerminfo(&Terminfo{
+ Name: "d200",
+ Aliases: []string{"d200-dg"},
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\f",
+ AttrOff: "\x0f\x15\x1d\x1eE",
+ Underline: "\x14",
+ Bold: "\x1eD\x14",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1c",
+ Blink: "\x0e",
+ Reverse: "\x1eD",
+ PadChar: "\x00",
+ SetCursor: "\x10%p2%c%p1%c",
+ CursorBack1: "\x19",
+ CursorUp1: "\x17",
+ KeyUp: "\x17",
+ KeyDown: "\x1a",
+ KeyRight: "\x18",
+ KeyLeft: "\x19",
+ KeyHome: "\b",
+ KeyF1: "\x1eq",
+ KeyF2: "\x1er",
+ KeyF3: "\x1es",
+ KeyF4: "\x1et",
+ KeyF5: "\x1eu",
+ KeyF6: "\x1ev",
+ KeyF7: "\x1ew",
+ KeyF8: "\x1ex",
+ KeyF9: "\x1ey",
+ KeyF10: "\x1ez",
+ KeyF11: "\x1e{",
+ KeyF12: "\x1e|",
+ KeyF13: "\x1e}",
+ KeyF14: "\x1e~",
+ KeyF15: "\x1ep",
+ KeyF16: "\x1ea",
+ KeyF17: "\x1eb",
+ KeyF18: "\x1ec",
+ KeyF19: "\x1ed",
+ KeyF20: "\x1ee",
+ KeyF21: "\x1ef",
+ KeyF22: "\x1eg",
+ KeyF23: "\x1eh",
+ KeyF24: "\x1ei",
+ KeyF25: "\x1ej",
+ KeyF26: "\x1ek",
+ KeyF27: "\x1el",
+ KeyF28: "\x1em",
+ KeyF29: "\x1en",
+ KeyF30: "\x1e`",
+ KeyF31: "\x1e1",
+ KeyF32: "\x1e2",
+ KeyF33: "\x1e3",
+ KeyF34: "\x1e4",
+ KeyF35: "\x1e5",
+ KeyF36: "\x1e6",
+ KeyF37: "\x1e7",
+ KeyF38: "\x1e8",
+ KeyF39: "\x1e9",
+ KeyF40: "\x1e:",
+ KeyF41: "\x1e;",
+ KeyF42: "\x1e<",
+ KeyF43: "\x1e=",
+ KeyF44: "\x1e>",
+ KeyF45: "\x1e0",
+ KeyF46: "\x1e!",
+ KeyF47: "\x1e\"",
+ KeyF48: "\x1e#",
+ KeyF49: "\x1e$",
+ KeyF50: "\x1e%%",
+ KeyF51: "\x1e&",
+ KeyF52: "\x1e'",
+ KeyF53: "\x1e(",
+ KeyF54: "\x1e)",
+ KeyF55: "\x1e*",
+ KeyF56: "\x1e+",
+ KeyF57: "\x1e,",
+ KeyF58: "\x1e-",
+ KeyF59: "\x1e.",
+ KeyF60: "\x1e ",
+ KeyClear: "\f",
+ KeyShfLeft: "\x1e\x19",
+ KeyShfRight: "\x1e\x18",
+ KeyShfHome: "\x1e\b",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_d210.go b/vendor/maunium.net/go/tcell/terminfo/term_d210.go
new file mode 100644
index 0000000..39cfd1d
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_d210.go
@@ -0,0 +1,94 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // Data General DASHER D210 series
+ AddTerminfo(&Terminfo{
+ Name: "d210",
+ Aliases: []string{"d214"},
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1b[2J",
+ AttrOff: "\x1b[m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[4;7m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1b[2m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ PadChar: "\x00",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyHome: "\x1b[H",
+ KeyF1: "\x1b[001z",
+ KeyF2: "\x1b[002z",
+ KeyF3: "\x1b[003z",
+ KeyF4: "\x1b[004z",
+ KeyF5: "\x1b[005z",
+ KeyF6: "\x1b[006z",
+ KeyF7: "\x1b[007z",
+ KeyF8: "\x1b[008z",
+ KeyF9: "\x1b[009z",
+ KeyF10: "\x1b[010z",
+ KeyF11: "\x1b[011z",
+ KeyF12: "\x1b[012z",
+ KeyF13: "\x1b[013z",
+ KeyF14: "\x1b[014z",
+ KeyF15: "\x1b[000z",
+ KeyF16: "\x1b[101z",
+ KeyF17: "\x1b[102z",
+ KeyF18: "\x1b[103z",
+ KeyF19: "\x1b[104z",
+ KeyF20: "\x1b[105z",
+ KeyF21: "\x1b[106z",
+ KeyF22: "\x1b[107z",
+ KeyF23: "\x1b[108z",
+ KeyF24: "\x1b[109z",
+ KeyF25: "\x1b[110z",
+ KeyF26: "\x1b[111z",
+ KeyF27: "\x1b[112z",
+ KeyF28: "\x1b[113z",
+ KeyF29: "\x1b[114z",
+ KeyF30: "\x1b[100z",
+ KeyF31: "\x1b[201z",
+ KeyF32: "\x1b[202z",
+ KeyF33: "\x1b[203z",
+ KeyF34: "\x1b[204z",
+ KeyF35: "\x1b[205z",
+ KeyF36: "\x1b[206z",
+ KeyF37: "\x1b[207z",
+ KeyF38: "\x1b[208z",
+ KeyF39: "\x1b[209z",
+ KeyF40: "\x1b[210z",
+ KeyF41: "\x1b[211z",
+ KeyF42: "\x1b[212z",
+ KeyF43: "\x1b[213z",
+ KeyF44: "\x1b[214z",
+ KeyF45: "\x1b[200z",
+ KeyF46: "\x1b[301z",
+ KeyF47: "\x1b[302z",
+ KeyF48: "\x1b[303z",
+ KeyF49: "\x1b[304z",
+ KeyF50: "\x1b[305z",
+ KeyF51: "\x1b[306z",
+ KeyF52: "\x1b[307z",
+ KeyF53: "\x1b[308z",
+ KeyF54: "\x1b[309z",
+ KeyF55: "\x1b[310z",
+ KeyF56: "\x1b[311z",
+ KeyF57: "\x1b[312z",
+ KeyF58: "\x1b[313z",
+ KeyF59: "\x1b[314z",
+ KeyF60: "\x1b[300z",
+ KeyPrint: "\x1b[i",
+ KeyClear: "\x1b[2J",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_dtterm.go b/vendor/maunium.net/go/tcell/terminfo/term_dtterm.go
new file mode 100644
index 0000000..9428a70
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_dtterm.go
@@ -0,0 +1,66 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // CDE desktop terminal
+ AddTerminfo(&Terminfo{
+ Name: "dtterm",
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1b[2m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b(B\x1b)0",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\b",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1b[11~",
+ KeyF2: "\x1b[12~",
+ KeyF3: "\x1b[13~",
+ KeyF4: "\x1b[14~",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[25~",
+ KeyF14: "\x1b[26~",
+ KeyF15: "\x1b[28~",
+ KeyF16: "\x1b[29~",
+ KeyF17: "\x1b[31~",
+ KeyF18: "\x1b[32~",
+ KeyF19: "\x1b[33~",
+ KeyF20: "\x1b[34~",
+ KeyHelp: "\x1b[28~",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_gnome.go b/vendor/maunium.net/go/tcell/terminfo/term_gnome.go
new file mode 100644
index 0000000..84c0957
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_gnome.go
@@ -0,0 +1,156 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // GNOME Terminal
+ AddTerminfo(&Terminfo{
+ Name: "gnome",
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b7\x1b[?47h",
+ ExitCA: "\x1b[2J\x1b[?47l\x1b8",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[0m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1b[2m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1bOH",
+ KeyEnd: "\x1bOF",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1bO1;2P",
+ KeyF14: "\x1bO1;2Q",
+ KeyF15: "\x1bO1;2R",
+ KeyF16: "\x1bO1;2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1bO1;5P",
+ KeyF26: "\x1bO1;5Q",
+ KeyF27: "\x1bO1;5R",
+ KeyF28: "\x1bO1;5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1bO1;6P",
+ KeyF38: "\x1bO1;6Q",
+ KeyF39: "\x1bO1;6R",
+ KeyF40: "\x1bO1;6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1bO1;3P",
+ KeyF50: "\x1bO1;3Q",
+ KeyF51: "\x1bO1;3R",
+ KeyF52: "\x1bO1;3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1bO1;4P",
+ KeyF62: "\x1bO1;4Q",
+ KeyF63: "\x1bO1;4R",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[1;2D",
+ KeyShfRight: "\x1b[1;2C",
+ KeyShfUp: "\x1b[1;2A",
+ KeyShfDown: "\x1b[1;2B",
+ KeyCtrlLeft: "\x1b[1;5D",
+ KeyCtrlRight: "\x1b[1;5C",
+ KeyCtrlUp: "\x1b[1;5A",
+ KeyCtrlDown: "\x1b[1;5B",
+ KeyMetaLeft: "\x1b[1;9D",
+ KeyMetaRight: "\x1b[1;9C",
+ KeyMetaUp: "\x1b[1;9A",
+ KeyMetaDown: "\x1b[1;9B",
+ KeyAltLeft: "\x1b[1;3D",
+ KeyAltRight: "\x1b[1;3C",
+ KeyAltUp: "\x1b[1;3A",
+ KeyAltDown: "\x1b[1;3B",
+ KeyAltShfLeft: "\x1b[1;4D",
+ KeyAltShfRight: "\x1b[1;4C",
+ KeyAltShfUp: "\x1b[1;4A",
+ KeyAltShfDown: "\x1b[1;4B",
+ KeyMetaShfLeft: "\x1b[1;10D",
+ KeyMetaShfRight: "\x1b[1;10C",
+ KeyMetaShfUp: "\x1b[1;10A",
+ KeyMetaShfDown: "\x1b[1;10B",
+ KeyCtrlShfLeft: "\x1b[1;6D",
+ KeyCtrlShfRight: "\x1b[1;6C",
+ KeyCtrlShfUp: "\x1b[1;6A",
+ KeyCtrlShfDown: "\x1b[1;6B",
+ KeyShfHome: "\x1b[1;2H",
+ KeyShfEnd: "\x1b[1;2F",
+ KeyCtrlHome: "\x1b[1;5H",
+ KeyCtrlEnd: "\x1b[1;5F",
+ KeyAltHome: "\x1b[1;9H",
+ KeyAltEnd: "\x1b[1;9F",
+ KeyCtrlShfHome: "\x1b[1;6H",
+ KeyCtrlShfEnd: "\x1b[1;6F",
+ KeyMetaShfHome: "\x1b[1;10H",
+ KeyMetaShfEnd: "\x1b[1;10F",
+ KeyAltShfHome: "\x1b[1;4H",
+ KeyAltShfEnd: "\x1b[1;4F",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_gnome_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_gnome_256color.go
new file mode 100644
index 0000000..cc504c3
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_gnome_256color.go
@@ -0,0 +1,156 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // GNOME Terminal with xterm 256-colors
+ AddTerminfo(&Terminfo{
+ Name: "gnome-256color",
+ Columns: 80,
+ Lines: 24,
+ Colors: 256,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b7\x1b[?47h",
+ ExitCA: "\x1b[2J\x1b[?47l\x1b8",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[0m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1b[2m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
+ SetBg: "\x1b[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
+ SetFgBg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;;%?%p2%{8}%<%t4%p2%d%e%p2%{16}%<%t10%p2%{8}%-%d%e48;5;%p2%d%;m",
+ PadChar: "\x00",
+ AltChars: "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1bOH",
+ KeyEnd: "\x1bOF",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[1;2P",
+ KeyF14: "\x1b[1;2Q",
+ KeyF15: "\x1b[1;2R",
+ KeyF16: "\x1b[1;2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1b[1;5P",
+ KeyF26: "\x1b[1;5Q",
+ KeyF27: "\x1b[1;5R",
+ KeyF28: "\x1b[1;5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1b[1;6P",
+ KeyF38: "\x1b[1;6Q",
+ KeyF39: "\x1b[1;6R",
+ KeyF40: "\x1b[1;6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1b[1;3P",
+ KeyF50: "\x1b[1;3Q",
+ KeyF51: "\x1b[1;3R",
+ KeyF52: "\x1b[1;3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1b[1;4P",
+ KeyF62: "\x1b[1;4Q",
+ KeyF63: "\x1b[1;4R",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[1;2D",
+ KeyShfRight: "\x1b[1;2C",
+ KeyShfUp: "\x1b[1;2A",
+ KeyShfDown: "\x1b[1;2B",
+ KeyCtrlLeft: "\x1b[1;5D",
+ KeyCtrlRight: "\x1b[1;5C",
+ KeyCtrlUp: "\x1b[1;5A",
+ KeyCtrlDown: "\x1b[1;5B",
+ KeyMetaLeft: "\x1b[1;9D",
+ KeyMetaRight: "\x1b[1;9C",
+ KeyMetaUp: "\x1b[1;9A",
+ KeyMetaDown: "\x1b[1;9B",
+ KeyAltLeft: "\x1b[1;3D",
+ KeyAltRight: "\x1b[1;3C",
+ KeyAltUp: "\x1b[1;3A",
+ KeyAltDown: "\x1b[1;3B",
+ KeyAltShfLeft: "\x1b[1;4D",
+ KeyAltShfRight: "\x1b[1;4C",
+ KeyAltShfUp: "\x1b[1;4A",
+ KeyAltShfDown: "\x1b[1;4B",
+ KeyMetaShfLeft: "\x1b[1;10D",
+ KeyMetaShfRight: "\x1b[1;10C",
+ KeyMetaShfUp: "\x1b[1;10A",
+ KeyMetaShfDown: "\x1b[1;10B",
+ KeyCtrlShfLeft: "\x1b[1;6D",
+ KeyCtrlShfRight: "\x1b[1;6C",
+ KeyCtrlShfUp: "\x1b[1;6A",
+ KeyCtrlShfDown: "\x1b[1;6B",
+ KeyShfHome: "\x1b[1;2H",
+ KeyShfEnd: "\x1b[1;2F",
+ KeyCtrlHome: "\x1b[1;5H",
+ KeyCtrlEnd: "\x1b[1;5F",
+ KeyAltHome: "\x1b[1;9H",
+ KeyAltEnd: "\x1b[1;9F",
+ KeyCtrlShfHome: "\x1b[1;6H",
+ KeyCtrlShfEnd: "\x1b[1;6F",
+ KeyMetaShfHome: "\x1b[1;10H",
+ KeyMetaShfEnd: "\x1b[1;10F",
+ KeyAltShfHome: "\x1b[1;4H",
+ KeyAltShfEnd: "\x1b[1;4F",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_hpterm.go b/vendor/maunium.net/go/tcell/terminfo/term_hpterm.go
new file mode 100644
index 0000000..b5e0c6e
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_hpterm.go
@@ -0,0 +1,49 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // hp X11 terminal emulator
+ AddTerminfo(&Terminfo{
+ Name: "hpterm",
+ Aliases: []string{"X-hpterm"},
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1b&a0y0C\x1bJ",
+ AttrOff: "\x1b&d@",
+ Underline: "\x1b&dD",
+ Bold: "\x1b&dB",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1b&dH",
+ Reverse: "\x1b&dB",
+ EnterKeypad: "\x1b&s1A",
+ ExitKeypad: "\x1b&s0A",
+ PadChar: "\x00",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ SetCursor: "\x1b&a%p1%dy%p2%dC",
+ CursorBack1: "\b",
+ CursorUp1: "\x1bA",
+ KeyUp: "\x1bA",
+ KeyDown: "\x1bB",
+ KeyRight: "\x1bC",
+ KeyLeft: "\x1bD",
+ KeyInsert: "\x1bQ",
+ KeyDelete: "\x1bP",
+ KeyBackspace: "\b",
+ KeyHome: "\x1bh",
+ KeyPgUp: "\x1bV",
+ KeyPgDn: "\x1bU",
+ KeyF1: "\x1bp",
+ KeyF2: "\x1bq",
+ KeyF3: "\x1br",
+ KeyF4: "\x1bs",
+ KeyF5: "\x1bt",
+ KeyF6: "\x1bu",
+ KeyF7: "\x1bv",
+ KeyF8: "\x1bw",
+ KeyClear: "\x1bJ",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_hz1500.go b/vendor/maunium.net/go/tcell/terminfo/term_hz1500.go
new file mode 100644
index 0000000..663aa29
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_hz1500.go
@@ -0,0 +1,25 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // hazeltine 1500
+ AddTerminfo(&Terminfo{
+ Name: "hz1500",
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "~\x1c",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ PadChar: "\x00",
+ SetCursor: "~\x11%p2%p2%?%{30}%>%t%' '%+%;%'`'%+%c%p1%'`'%+%c",
+ CursorBack1: "\b",
+ CursorUp1: "~\f",
+ KeyUp: "~\f",
+ KeyDown: "\n",
+ KeyRight: "\x10",
+ KeyLeft: "\b",
+ KeyHome: "~\x12",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_konsole.go b/vendor/maunium.net/go/tcell/terminfo/term_konsole.go
new file mode 100644
index 0000000..e545f4d
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_konsole.go
@@ -0,0 +1,114 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // KDE console window
+ AddTerminfo(&Terminfo{
+ Name: "konsole",
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b7\x1b[?47h",
+ ExitCA: "\x1b[2J\x1b[?47l\x1b8",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[0m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ AltChars: "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1bOH",
+ KeyEnd: "\x1bOF",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1bO2P",
+ KeyF14: "\x1bO2Q",
+ KeyF15: "\x1bO2R",
+ KeyF16: "\x1bO2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1bO5P",
+ KeyF26: "\x1bO5Q",
+ KeyF27: "\x1bO5R",
+ KeyF28: "\x1bO5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1bO6P",
+ KeyF38: "\x1bO6Q",
+ KeyF39: "\x1bO6R",
+ KeyF40: "\x1bO6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1bO3P",
+ KeyF50: "\x1bO3Q",
+ KeyF51: "\x1bO3R",
+ KeyF52: "\x1bO3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1bO4P",
+ KeyF62: "\x1bO4Q",
+ KeyF63: "\x1bO4R",
+ KeyBacktab: "\x1b[Z",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_konsole_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_konsole_256color.go
new file mode 100644
index 0000000..fb4e317
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_konsole_256color.go
@@ -0,0 +1,114 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // KDE console window with xterm 256-colors
+ AddTerminfo(&Terminfo{
+ Name: "konsole-256color",
+ Columns: 80,
+ Lines: 24,
+ Colors: 256,
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b7\x1b[?47h",
+ ExitCA: "\x1b[2J\x1b[?47l\x1b8",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[0m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
+ SetBg: "\x1b[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
+ SetFgBg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;;%?%p2%{8}%<%t4%p2%d%e%p2%{16}%<%t10%p2%{8}%-%d%e48;5;%p2%d%;m",
+ AltChars: "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1bOH",
+ KeyEnd: "\x1bOF",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1bO2P",
+ KeyF14: "\x1bO2Q",
+ KeyF15: "\x1bO2R",
+ KeyF16: "\x1bO2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1bO5P",
+ KeyF26: "\x1bO5Q",
+ KeyF27: "\x1bO5R",
+ KeyF28: "\x1bO5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1bO6P",
+ KeyF38: "\x1bO6Q",
+ KeyF39: "\x1bO6R",
+ KeyF40: "\x1bO6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1bO3P",
+ KeyF50: "\x1bO3Q",
+ KeyF51: "\x1bO3R",
+ KeyF52: "\x1bO3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1bO4P",
+ KeyF62: "\x1bO4Q",
+ KeyF63: "\x1bO4R",
+ KeyBacktab: "\x1b[Z",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_kterm.go b/vendor/maunium.net/go/tcell/terminfo/term_kterm.go
new file mode 100644
index 0000000..a1c6f3a
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_kterm.go
@@ -0,0 +1,66 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // kterm kanji terminal emulator (X window system)
+ AddTerminfo(&Terminfo{
+ Name: "kterm",
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b7\x1b[?47h",
+ ExitCA: "\x1b[2J\x1b[?47l\x1b8",
+ AttrOff: "\x1b[m\x1b(B",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "``aajjkkllmmnnooppqqrrssttuuvvwwxx~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\b",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1b[11~",
+ KeyF2: "\x1b[12~",
+ KeyF3: "\x1b[13~",
+ KeyF4: "\x1b[14~",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[25~",
+ KeyF14: "\x1b[26~",
+ KeyF15: "\x1b[28~",
+ KeyF16: "\x1b[29~",
+ KeyF17: "\x1b[31~",
+ KeyF18: "\x1b[32~",
+ KeyF19: "\x1b[33~",
+ KeyF20: "\x1b[34~",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_linux.go b/vendor/maunium.net/go/tcell/terminfo/term_linux.go
new file mode 100644
index 0000000..755e235
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_linux.go
@@ -0,0 +1,68 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // linux console
+ AddTerminfo(&Terminfo{
+ Name: "linux",
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J",
+ ShowCursor: "\x1b[?25h\x1b[?0c",
+ HideCursor: "\x1b[?25l\x1b[?1c",
+ AttrOff: "\x1b[m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1b[2m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "++,,--..00__``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}c~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b(B\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[1~",
+ KeyEnd: "\x1b[4~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1b[[A",
+ KeyF2: "\x1b[[B",
+ KeyF3: "\x1b[[C",
+ KeyF4: "\x1b[[D",
+ KeyF5: "\x1b[[E",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[25~",
+ KeyF14: "\x1b[26~",
+ KeyF15: "\x1b[28~",
+ KeyF16: "\x1b[29~",
+ KeyF17: "\x1b[31~",
+ KeyF18: "\x1b[32~",
+ KeyF19: "\x1b[33~",
+ KeyF20: "\x1b[34~",
+ KeyBacktab: "\x1b[Z",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_pcansi.go b/vendor/maunium.net/go/tcell/terminfo/term_pcansi.go
new file mode 100644
index 0000000..a51d80f
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_pcansi.go
@@ -0,0 +1,38 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // ibm-pc terminal programs claiming to be ansi
+ AddTerminfo(&Terminfo{
+ Name: "pcansi",
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J",
+ AttrOff: "\x1b[0;10m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "+\x10,\x11-\x18.\x190\xdb`\x04a\xb1f\xf8g\xf1h\xb0j\xd9k\xbfl\xdam\xc0n\xc5o~p\xc4q\xc4r\xc4s_t\xc3u\xb4v\xc1w\xc2x\xb3y\xf3z\xf2{\xe3|\xd8}\x9c~\xfe",
+ EnterAcs: "\x1b[12m",
+ ExitAcs: "\x1b[10m",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\x1b[D",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyBackspace: "\b",
+ KeyHome: "\x1b[H",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_rxvt.go b/vendor/maunium.net/go/tcell/terminfo/term_rxvt.go
new file mode 100644
index 0000000..0a63bb2
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_rxvt.go
@@ -0,0 +1,109 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // rxvt terminal emulator (X Window System)
+ AddTerminfo(&Terminfo{
+ Name: "rxvt",
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b7\x1b[?47h",
+ ExitCA: "\x1b[2J\x1b[?47l\x1b8",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b=",
+ ExitKeypad: "\x1b>",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b(B\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[7~",
+ KeyEnd: "\x1b[8~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1b[11~",
+ KeyF2: "\x1b[12~",
+ KeyF3: "\x1b[13~",
+ KeyF4: "\x1b[14~",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[25~",
+ KeyF14: "\x1b[26~",
+ KeyF15: "\x1b[28~",
+ KeyF16: "\x1b[29~",
+ KeyF17: "\x1b[31~",
+ KeyF18: "\x1b[32~",
+ KeyF19: "\x1b[33~",
+ KeyF20: "\x1b[34~",
+ KeyF21: "\x1b[23$",
+ KeyF22: "\x1b[24$",
+ KeyF23: "\x1b[11^",
+ KeyF24: "\x1b[12^",
+ KeyF25: "\x1b[13^",
+ KeyF26: "\x1b[14^",
+ KeyF27: "\x1b[15^",
+ KeyF28: "\x1b[17^",
+ KeyF29: "\x1b[18^",
+ KeyF30: "\x1b[19^",
+ KeyF31: "\x1b[20^",
+ KeyF32: "\x1b[21^",
+ KeyF33: "\x1b[23^",
+ KeyF34: "\x1b[24^",
+ KeyF35: "\x1b[25^",
+ KeyF36: "\x1b[26^",
+ KeyF37: "\x1b[28^",
+ KeyF38: "\x1b[29^",
+ KeyF39: "\x1b[31^",
+ KeyF40: "\x1b[32^",
+ KeyF41: "\x1b[33^",
+ KeyF42: "\x1b[34^",
+ KeyF43: "\x1b[23@",
+ KeyF44: "\x1b[24@",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[d",
+ KeyShfRight: "\x1b[c",
+ KeyShfUp: "\x1b[a",
+ KeyShfDown: "\x1b[b",
+ KeyCtrlLeft: "\x1b[Od",
+ KeyCtrlRight: "\x1b[Oc",
+ KeyCtrlUp: "\x1b[Oa",
+ KeyCtrlDown: "\x1b[Ob",
+ KeyShfHome: "\x1b[7$",
+ KeyShfEnd: "\x1b[8$",
+ KeyCtrlHome: "\x1b[7^",
+ KeyCtrlEnd: "\x1b[8^",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_rxvt_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_rxvt_256color.go
new file mode 100644
index 0000000..50a8b80
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_rxvt_256color.go
@@ -0,0 +1,109 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // rxvt 2.7.9 with xterm 256-colors
+ AddTerminfo(&Terminfo{
+ Name: "rxvt-256color",
+ Columns: 80,
+ Lines: 24,
+ Colors: 256,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b7\x1b[?47h",
+ ExitCA: "\x1b[2J\x1b[?47l\x1b8",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b=",
+ ExitKeypad: "\x1b>",
+ SetFg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
+ SetBg: "\x1b[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
+ SetFgBg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;;%?%p2%{8}%<%t4%p2%d%e%p2%{16}%<%t10%p2%{8}%-%d%e48;5;%p2%d%;m",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b(B\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[7~",
+ KeyEnd: "\x1b[8~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1b[11~",
+ KeyF2: "\x1b[12~",
+ KeyF3: "\x1b[13~",
+ KeyF4: "\x1b[14~",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[25~",
+ KeyF14: "\x1b[26~",
+ KeyF15: "\x1b[28~",
+ KeyF16: "\x1b[29~",
+ KeyF17: "\x1b[31~",
+ KeyF18: "\x1b[32~",
+ KeyF19: "\x1b[33~",
+ KeyF20: "\x1b[34~",
+ KeyF21: "\x1b[23$",
+ KeyF22: "\x1b[24$",
+ KeyF23: "\x1b[11^",
+ KeyF24: "\x1b[12^",
+ KeyF25: "\x1b[13^",
+ KeyF26: "\x1b[14^",
+ KeyF27: "\x1b[15^",
+ KeyF28: "\x1b[17^",
+ KeyF29: "\x1b[18^",
+ KeyF30: "\x1b[19^",
+ KeyF31: "\x1b[20^",
+ KeyF32: "\x1b[21^",
+ KeyF33: "\x1b[23^",
+ KeyF34: "\x1b[24^",
+ KeyF35: "\x1b[25^",
+ KeyF36: "\x1b[26^",
+ KeyF37: "\x1b[28^",
+ KeyF38: "\x1b[29^",
+ KeyF39: "\x1b[31^",
+ KeyF40: "\x1b[32^",
+ KeyF41: "\x1b[33^",
+ KeyF42: "\x1b[34^",
+ KeyF43: "\x1b[23@",
+ KeyF44: "\x1b[24@",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[d",
+ KeyShfRight: "\x1b[c",
+ KeyShfUp: "\x1b[a",
+ KeyShfDown: "\x1b[b",
+ KeyCtrlLeft: "\x1b[Od",
+ KeyCtrlRight: "\x1b[Oc",
+ KeyCtrlUp: "\x1b[Oa",
+ KeyCtrlDown: "\x1b[Ob",
+ KeyShfHome: "\x1b[7$",
+ KeyShfEnd: "\x1b[8$",
+ KeyCtrlHome: "\x1b[7^",
+ KeyCtrlEnd: "\x1b[8^",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode.go b/vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode.go
new file mode 100644
index 0000000..ab65632
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode.go
@@ -0,0 +1,83 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // rxvt-unicode terminal (X Window System)
+ AddTerminfo(&Terminfo{
+ Name: "rxvt-unicode",
+ Columns: 80,
+ Lines: 24,
+ Colors: 88,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b[?1049h",
+ ExitCA: "\x1b[r\x1b[?1049l",
+ ShowCursor: "\x1b[?12l\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x1b(B",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b=",
+ ExitKeypad: "\x1b>",
+ SetFg: "\x1b[38;5;%p1%dm",
+ SetBg: "\x1b[48;5;%p1%dm",
+ SetFgBg: "\x1b[38;5;%p1%d;48;5;%p2%dm",
+ AltChars: "+C,D-A.B0E``aaffgghFiGjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[7~",
+ KeyEnd: "\x1b[8~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1b[11~",
+ KeyF2: "\x1b[12~",
+ KeyF3: "\x1b[13~",
+ KeyF4: "\x1b[14~",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[25~",
+ KeyF14: "\x1b[26~",
+ KeyF15: "\x1b[28~",
+ KeyF16: "\x1b[29~",
+ KeyF17: "\x1b[31~",
+ KeyF18: "\x1b[32~",
+ KeyF19: "\x1b[33~",
+ KeyF20: "\x1b[34~",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[d",
+ KeyShfRight: "\x1b[c",
+ KeyShfUp: "\x1b[a",
+ KeyShfDown: "\x1b[b",
+ KeyCtrlLeft: "\x1b[Od",
+ KeyCtrlRight: "\x1b[Oc",
+ KeyCtrlUp: "\x1b[Oa",
+ KeyCtrlDown: "\x1b[Ob",
+ KeyShfHome: "\x1b[7$",
+ KeyShfEnd: "\x1b[8$",
+ KeyCtrlHome: "\x1b[7^",
+ KeyCtrlEnd: "\x1b[8^",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode_256color.go
new file mode 100644
index 0000000..e019f6a
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode_256color.go
@@ -0,0 +1,83 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // rxvt-unicode terminal with 256 colors (X Window System)
+ AddTerminfo(&Terminfo{
+ Name: "rxvt-unicode-256color",
+ Columns: 80,
+ Lines: 24,
+ Colors: 256,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b[?1049h",
+ ExitCA: "\x1b[r\x1b[?1049l",
+ ShowCursor: "\x1b[?12l\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x1b(B",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b=",
+ ExitKeypad: "\x1b>",
+ SetFg: "\x1b[38;5;%p1%dm",
+ SetBg: "\x1b[48;5;%p1%dm",
+ SetFgBg: "\x1b[38;5;%p1%d;48;5;%p2%dm",
+ AltChars: "+C,D-A.B0E``aaffgghFiGjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[7~",
+ KeyEnd: "\x1b[8~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1b[11~",
+ KeyF2: "\x1b[12~",
+ KeyF3: "\x1b[13~",
+ KeyF4: "\x1b[14~",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[25~",
+ KeyF14: "\x1b[26~",
+ KeyF15: "\x1b[28~",
+ KeyF16: "\x1b[29~",
+ KeyF17: "\x1b[31~",
+ KeyF18: "\x1b[32~",
+ KeyF19: "\x1b[33~",
+ KeyF20: "\x1b[34~",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[d",
+ KeyShfRight: "\x1b[c",
+ KeyShfUp: "\x1b[a",
+ KeyShfDown: "\x1b[b",
+ KeyCtrlLeft: "\x1b[Od",
+ KeyCtrlRight: "\x1b[Oc",
+ KeyCtrlUp: "\x1b[Oa",
+ KeyCtrlDown: "\x1b[Ob",
+ KeyShfHome: "\x1b[7$",
+ KeyShfEnd: "\x1b[8$",
+ KeyCtrlHome: "\x1b[7^",
+ KeyCtrlEnd: "\x1b[8^",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_screen.go b/vendor/maunium.net/go/tcell/terminfo/term_screen.go
new file mode 100644
index 0000000..e7e6414
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_screen.go
@@ -0,0 +1,66 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // VT 100/ANSI X3.64 virtual terminal
+ AddTerminfo(&Terminfo{
+ Name: "screen",
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J",
+ EnterCA: "\x1b[?1049h",
+ ExitCA: "\x1b[?1049l",
+ ShowCursor: "\x1b[34h\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1b[2m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "++,,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b(B\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1bM",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[1~",
+ KeyEnd: "\x1b[4~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyBacktab: "\x1b[Z",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_screen_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_screen_256color.go
new file mode 100644
index 0000000..9a8da8b
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_screen_256color.go
@@ -0,0 +1,66 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // GNU Screen with 256 colors
+ AddTerminfo(&Terminfo{
+ Name: "screen-256color",
+ Columns: 80,
+ Lines: 24,
+ Colors: 256,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J",
+ EnterCA: "\x1b[?1049h",
+ ExitCA: "\x1b[?1049l",
+ ShowCursor: "\x1b[34h\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1b[2m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
+ SetBg: "\x1b[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
+ SetFgBg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;;%?%p2%{8}%<%t4%p2%d%e%p2%{16}%<%t10%p2%{8}%-%d%e48;5;%p2%d%;m",
+ PadChar: "\x00",
+ AltChars: "++,,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b(B\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1bM",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[1~",
+ KeyEnd: "\x1b[4~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyBacktab: "\x1b[Z",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_st.go b/vendor/maunium.net/go/tcell/terminfo/term_st.go
new file mode 100644
index 0000000..67f557b
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_st.go
@@ -0,0 +1,158 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // simpleterm 0.4.1
+ AddTerminfo(&Terminfo{
+ Name: "st",
+ Aliases: []string{"stterm"},
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b[?1049h",
+ ExitCA: "\x1b[?1049l",
+ ShowCursor: "\x1b[?12l\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[0m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ EnableAcs: "\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[1~",
+ KeyEnd: "\x1b[4~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[1;2P",
+ KeyF14: "\x1b[1;2Q",
+ KeyF15: "\x1b[1;2R",
+ KeyF16: "\x1b[1;2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1b[1;5P",
+ KeyF26: "\x1b[1;5Q",
+ KeyF27: "\x1b[1;5R",
+ KeyF28: "\x1b[1;5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1b[1;6P",
+ KeyF38: "\x1b[1;6Q",
+ KeyF39: "\x1b[1;6R",
+ KeyF40: "\x1b[1;6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1b[1;3P",
+ KeyF50: "\x1b[1;3Q",
+ KeyF51: "\x1b[1;3R",
+ KeyF52: "\x1b[1;3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1b[1;4P",
+ KeyF62: "\x1b[1;4Q",
+ KeyF63: "\x1b[1;4R",
+ KeyClear: "\x1b[3;5~",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[1;2D",
+ KeyShfRight: "\x1b[1;2C",
+ KeyShfUp: "\x1b[1;2A",
+ KeyShfDown: "\x1b[1;2B",
+ KeyCtrlLeft: "\x1b[1;5D",
+ KeyCtrlRight: "\x1b[1;5C",
+ KeyCtrlUp: "\x1b[1;5A",
+ KeyCtrlDown: "\x1b[1;5B",
+ KeyMetaLeft: "\x1b[1;9D",
+ KeyMetaRight: "\x1b[1;9C",
+ KeyMetaUp: "\x1b[1;9A",
+ KeyMetaDown: "\x1b[1;9B",
+ KeyAltLeft: "\x1b[1;3D",
+ KeyAltRight: "\x1b[1;3C",
+ KeyAltUp: "\x1b[1;3A",
+ KeyAltDown: "\x1b[1;3B",
+ KeyAltShfLeft: "\x1b[1;4D",
+ KeyAltShfRight: "\x1b[1;4C",
+ KeyAltShfUp: "\x1b[1;4A",
+ KeyAltShfDown: "\x1b[1;4B",
+ KeyMetaShfLeft: "\x1b[1;10D",
+ KeyMetaShfRight: "\x1b[1;10C",
+ KeyMetaShfUp: "\x1b[1;10A",
+ KeyMetaShfDown: "\x1b[1;10B",
+ KeyCtrlShfLeft: "\x1b[1;6D",
+ KeyCtrlShfRight: "\x1b[1;6C",
+ KeyCtrlShfUp: "\x1b[1;6A",
+ KeyCtrlShfDown: "\x1b[1;6B",
+ KeyShfHome: "\x1b[1;2H",
+ KeyShfEnd: "\x1b[1;2F",
+ KeyCtrlHome: "\x1b[1;5H",
+ KeyCtrlEnd: "\x1b[1;5F",
+ KeyAltHome: "\x1b[1;9H",
+ KeyAltEnd: "\x1b[1;9F",
+ KeyCtrlShfHome: "\x1b[1;6H",
+ KeyCtrlShfEnd: "\x1b[1;6F",
+ KeyMetaShfHome: "\x1b[1;10H",
+ KeyMetaShfEnd: "\x1b[1;10F",
+ KeyAltShfHome: "\x1b[1;4H",
+ KeyAltShfEnd: "\x1b[1;4F",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_st_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_st_256color.go
new file mode 100644
index 0000000..7eecbcb
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_st_256color.go
@@ -0,0 +1,158 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // simpleterm with 256 colors
+ AddTerminfo(&Terminfo{
+ Name: "st-256color",
+ Aliases: []string{"stterm-256color"},
+ Columns: 80,
+ Lines: 24,
+ Colors: 256,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b[?1049h",
+ ExitCA: "\x1b[?1049l",
+ ShowCursor: "\x1b[?12l\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[0m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
+ SetBg: "\x1b[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
+ SetFgBg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;;%?%p2%{8}%<%t4%p2%d%e%p2%{16}%<%t10%p2%{8}%-%d%e48;5;%p2%d%;m",
+ PadChar: "\x00",
+ AltChars: "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ EnableAcs: "\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[1~",
+ KeyEnd: "\x1b[4~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[1;2P",
+ KeyF14: "\x1b[1;2Q",
+ KeyF15: "\x1b[1;2R",
+ KeyF16: "\x1b[1;2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1b[1;5P",
+ KeyF26: "\x1b[1;5Q",
+ KeyF27: "\x1b[1;5R",
+ KeyF28: "\x1b[1;5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1b[1;6P",
+ KeyF38: "\x1b[1;6Q",
+ KeyF39: "\x1b[1;6R",
+ KeyF40: "\x1b[1;6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1b[1;3P",
+ KeyF50: "\x1b[1;3Q",
+ KeyF51: "\x1b[1;3R",
+ KeyF52: "\x1b[1;3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1b[1;4P",
+ KeyF62: "\x1b[1;4Q",
+ KeyF63: "\x1b[1;4R",
+ KeyClear: "\x1b[3;5~",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[1;2D",
+ KeyShfRight: "\x1b[1;2C",
+ KeyShfUp: "\x1b[1;2A",
+ KeyShfDown: "\x1b[1;2B",
+ KeyCtrlLeft: "\x1b[1;5D",
+ KeyCtrlRight: "\x1b[1;5C",
+ KeyCtrlUp: "\x1b[1;5A",
+ KeyCtrlDown: "\x1b[1;5B",
+ KeyMetaLeft: "\x1b[1;9D",
+ KeyMetaRight: "\x1b[1;9C",
+ KeyMetaUp: "\x1b[1;9A",
+ KeyMetaDown: "\x1b[1;9B",
+ KeyAltLeft: "\x1b[1;3D",
+ KeyAltRight: "\x1b[1;3C",
+ KeyAltUp: "\x1b[1;3A",
+ KeyAltDown: "\x1b[1;3B",
+ KeyAltShfLeft: "\x1b[1;4D",
+ KeyAltShfRight: "\x1b[1;4C",
+ KeyAltShfUp: "\x1b[1;4A",
+ KeyAltShfDown: "\x1b[1;4B",
+ KeyMetaShfLeft: "\x1b[1;10D",
+ KeyMetaShfRight: "\x1b[1;10C",
+ KeyMetaShfUp: "\x1b[1;10A",
+ KeyMetaShfDown: "\x1b[1;10B",
+ KeyCtrlShfLeft: "\x1b[1;6D",
+ KeyCtrlShfRight: "\x1b[1;6C",
+ KeyCtrlShfUp: "\x1b[1;6A",
+ KeyCtrlShfDown: "\x1b[1;6B",
+ KeyShfHome: "\x1b[1;2H",
+ KeyShfEnd: "\x1b[1;2F",
+ KeyCtrlHome: "\x1b[1;5H",
+ KeyCtrlEnd: "\x1b[1;5F",
+ KeyAltHome: "\x1b[1;9H",
+ KeyAltEnd: "\x1b[1;9F",
+ KeyCtrlShfHome: "\x1b[1;6H",
+ KeyCtrlShfEnd: "\x1b[1;6F",
+ KeyMetaShfHome: "\x1b[1;10H",
+ KeyMetaShfEnd: "\x1b[1;10F",
+ KeyAltShfHome: "\x1b[1;4H",
+ KeyAltShfEnd: "\x1b[1;4F",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_st_meta.go b/vendor/maunium.net/go/tcell/terminfo/term_st_meta.go
new file mode 100644
index 0000000..1fd5f14
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_st_meta.go
@@ -0,0 +1,155 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // simpleterm with meta key
+ AddTerminfo(&Terminfo{
+ Name: "st-meta",
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b[?1049h",
+ ExitCA: "\x1b[?1049l",
+ ShowCursor: "\x1b[?12l\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[0m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Dim: "\x1b[2m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ AltChars: "+C,D-A.B0E``aaffgghFiGjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ EnableAcs: "\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[1~",
+ KeyEnd: "\x1b[4~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[1;2P",
+ KeyF14: "\x1b[1;2Q",
+ KeyF15: "\x1b[1;2R",
+ KeyF16: "\x1b[1;2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1b[1;5P",
+ KeyF26: "\x1b[1;5Q",
+ KeyF27: "\x1b[1;5R",
+ KeyF28: "\x1b[1;5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1b[1;6P",
+ KeyF38: "\x1b[1;6Q",
+ KeyF39: "\x1b[1;6R",
+ KeyF40: "\x1b[1;6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1b[1;3P",
+ KeyF50: "\x1b[1;3Q",
+ KeyF51: "\x1b[1;3R",
+ KeyF52: "\x1b[1;3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1b[1;4P",
+ KeyF62: "\x1b[1;4Q",
+ KeyF63: "\x1b[1;4R",
+ KeyClear: "\x1b[3;5~",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[1;2D",
+ KeyShfRight: "\x1b[1;2C",
+ KeyShfUp: "\x1b[1;2A",
+ KeyShfDown: "\x1b[1;2B",
+ KeyCtrlLeft: "\x1b[1;5D",
+ KeyCtrlRight: "\x1b[1;5C",
+ KeyCtrlUp: "\x1b[1;5A",
+ KeyCtrlDown: "\x1b[1;5B",
+ KeyMetaLeft: "\x1b[1;9D",
+ KeyMetaRight: "\x1b[1;9C",
+ KeyMetaUp: "\x1b[1;9A",
+ KeyMetaDown: "\x1b[1;9B",
+ KeyAltLeft: "\x1b[1;3D",
+ KeyAltRight: "\x1b[1;3C",
+ KeyAltUp: "\x1b[1;3A",
+ KeyAltDown: "\x1b[1;3B",
+ KeyAltShfLeft: "\x1b[1;4D",
+ KeyAltShfRight: "\x1b[1;4C",
+ KeyAltShfUp: "\x1b[1;4A",
+ KeyAltShfDown: "\x1b[1;4B",
+ KeyMetaShfLeft: "\x1b[1;10D",
+ KeyMetaShfRight: "\x1b[1;10C",
+ KeyMetaShfUp: "\x1b[1;10A",
+ KeyMetaShfDown: "\x1b[1;10B",
+ KeyCtrlShfLeft: "\x1b[1;6D",
+ KeyCtrlShfRight: "\x1b[1;6C",
+ KeyCtrlShfUp: "\x1b[1;6A",
+ KeyCtrlShfDown: "\x1b[1;6B",
+ KeyShfHome: "\x1b[1;2H",
+ KeyShfEnd: "\x1b[1;2F",
+ KeyCtrlHome: "\x1b[1;5H",
+ KeyCtrlEnd: "\x1b[1;5F",
+ KeyAltHome: "\x1b[1;9H",
+ KeyAltEnd: "\x1b[1;9F",
+ KeyCtrlShfHome: "\x1b[1;6H",
+ KeyCtrlShfEnd: "\x1b[1;6F",
+ KeyMetaShfHome: "\x1b[1;10H",
+ KeyMetaShfEnd: "\x1b[1;10F",
+ KeyAltShfHome: "\x1b[1;4H",
+ KeyAltShfEnd: "\x1b[1;4F",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_st_meta_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_st_meta_256color.go
new file mode 100644
index 0000000..5f181b2
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_st_meta_256color.go
@@ -0,0 +1,155 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // simpleterm with meta key and 256 colors
+ AddTerminfo(&Terminfo{
+ Name: "st-meta-256color",
+ Columns: 80,
+ Lines: 24,
+ Colors: 256,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b[?1049h",
+ ExitCA: "\x1b[?1049l",
+ ShowCursor: "\x1b[?12l\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[0m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Dim: "\x1b[2m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
+ SetBg: "\x1b[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
+ SetFgBg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;;%?%p2%{8}%<%t4%p2%d%e%p2%{16}%<%t10%p2%{8}%-%d%e48;5;%p2%d%;m",
+ AltChars: "+C,D-A.B0E``aaffgghFiGjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ EnableAcs: "\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[1~",
+ KeyEnd: "\x1b[4~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[1;2P",
+ KeyF14: "\x1b[1;2Q",
+ KeyF15: "\x1b[1;2R",
+ KeyF16: "\x1b[1;2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1b[1;5P",
+ KeyF26: "\x1b[1;5Q",
+ KeyF27: "\x1b[1;5R",
+ KeyF28: "\x1b[1;5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1b[1;6P",
+ KeyF38: "\x1b[1;6Q",
+ KeyF39: "\x1b[1;6R",
+ KeyF40: "\x1b[1;6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1b[1;3P",
+ KeyF50: "\x1b[1;3Q",
+ KeyF51: "\x1b[1;3R",
+ KeyF52: "\x1b[1;3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1b[1;4P",
+ KeyF62: "\x1b[1;4Q",
+ KeyF63: "\x1b[1;4R",
+ KeyClear: "\x1b[3;5~",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[1;2D",
+ KeyShfRight: "\x1b[1;2C",
+ KeyShfUp: "\x1b[1;2A",
+ KeyShfDown: "\x1b[1;2B",
+ KeyCtrlLeft: "\x1b[1;5D",
+ KeyCtrlRight: "\x1b[1;5C",
+ KeyCtrlUp: "\x1b[1;5A",
+ KeyCtrlDown: "\x1b[1;5B",
+ KeyMetaLeft: "\x1b[1;9D",
+ KeyMetaRight: "\x1b[1;9C",
+ KeyMetaUp: "\x1b[1;9A",
+ KeyMetaDown: "\x1b[1;9B",
+ KeyAltLeft: "\x1b[1;3D",
+ KeyAltRight: "\x1b[1;3C",
+ KeyAltUp: "\x1b[1;3A",
+ KeyAltDown: "\x1b[1;3B",
+ KeyAltShfLeft: "\x1b[1;4D",
+ KeyAltShfRight: "\x1b[1;4C",
+ KeyAltShfUp: "\x1b[1;4A",
+ KeyAltShfDown: "\x1b[1;4B",
+ KeyMetaShfLeft: "\x1b[1;10D",
+ KeyMetaShfRight: "\x1b[1;10C",
+ KeyMetaShfUp: "\x1b[1;10A",
+ KeyMetaShfDown: "\x1b[1;10B",
+ KeyCtrlShfLeft: "\x1b[1;6D",
+ KeyCtrlShfRight: "\x1b[1;6C",
+ KeyCtrlShfUp: "\x1b[1;6A",
+ KeyCtrlShfDown: "\x1b[1;6B",
+ KeyShfHome: "\x1b[1;2H",
+ KeyShfEnd: "\x1b[1;2F",
+ KeyCtrlHome: "\x1b[1;5H",
+ KeyCtrlEnd: "\x1b[1;5F",
+ KeyAltHome: "\x1b[1;9H",
+ KeyAltEnd: "\x1b[1;9F",
+ KeyCtrlShfHome: "\x1b[1;6H",
+ KeyCtrlShfEnd: "\x1b[1;6F",
+ KeyMetaShfHome: "\x1b[1;10H",
+ KeyMetaShfEnd: "\x1b[1;10F",
+ KeyAltShfHome: "\x1b[1;4H",
+ KeyAltShfEnd: "\x1b[1;4F",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_st_meta_truecolor.go b/vendor/maunium.net/go/tcell/terminfo/term_st_meta_truecolor.go
new file mode 100644
index 0000000..fc53a97
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_st_meta_truecolor.go
@@ -0,0 +1,158 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // simpleterm with meta key and 256 colors
+ AddTerminfo(&Terminfo{
+ Name: "st-meta-truecolor",
+ Columns: 80,
+ Lines: 24,
+ Colors: 256,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b[?1049h",
+ ExitCA: "\x1b[?1049l",
+ ShowCursor: "\x1b[?12l\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[0m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Dim: "\x1b[2m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
+ SetBg: "\x1b[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
+ SetFgBg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;;%?%p2%{8}%<%t4%p2%d%e%p2%{16}%<%t10%p2%{8}%-%d%e48;5;%p2%d%;m",
+ AltChars: "+C,D-A.B0E``aaffgghFiGjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ EnableAcs: "\x1b)0",
+ SetFgRGB: "\x1b[38;2;%p1%d;%p2%d;%p3%dm",
+ SetBgRGB: "\x1b[48;2;%p1%d;%p2%d;%p3%dm",
+ SetFgBgRGB: "\x1b[38;2;%p1%d;%p2%d;%p3%d;48;2;%p4%d;%p5%d;%p6%dm",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "177",
+ KeyHome: "\x1b[1~",
+ KeyEnd: "\x1b[4~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[1;2P",
+ KeyF14: "\x1b[1;2Q",
+ KeyF15: "\x1b[1;2R",
+ KeyF16: "\x1b[1;2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1b[1;5P",
+ KeyF26: "\x1b[1;5Q",
+ KeyF27: "\x1b[1;5R",
+ KeyF28: "\x1b[1;5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1b[1;6P",
+ KeyF38: "\x1b[1;6Q",
+ KeyF39: "\x1b[1;6R",
+ KeyF40: "\x1b[1;6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1b[1;3P",
+ KeyF50: "\x1b[1;3Q",
+ KeyF51: "\x1b[1;3R",
+ KeyF52: "\x1b[1;3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1b[1;4P",
+ KeyF62: "\x1b[1;4Q",
+ KeyF63: "\x1b[1;4R",
+ KeyClear: "\x1b[3;5~",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[1;2D",
+ KeyShfRight: "\x1b[1;2C",
+ KeyShfUp: "\x1b[1;2A",
+ KeyShfDown: "\x1b[1;2B",
+ KeyCtrlLeft: "\x1b[1;5D",
+ KeyCtrlRight: "\x1b[1;5C",
+ KeyCtrlUp: "\x1b[1;5A",
+ KeyCtrlDown: "\x1b[1;5B",
+ KeyMetaLeft: "\x1b[1;9D",
+ KeyMetaRight: "\x1b[1;9C",
+ KeyMetaUp: "\x1b[1;9A",
+ KeyMetaDown: "\x1b[1;9B",
+ KeyAltLeft: "\x1b[1;3D",
+ KeyAltRight: "\x1b[1;3C",
+ KeyAltUp: "\x1b[1;3A",
+ KeyAltDown: "\x1b[1;3B",
+ KeyAltShfLeft: "\x1b[1;4D",
+ KeyAltShfRight: "\x1b[1;4C",
+ KeyAltShfUp: "\x1b[1;4A",
+ KeyAltShfDown: "\x1b[1;4B",
+ KeyMetaShfLeft: "\x1b[1;10D",
+ KeyMetaShfRight: "\x1b[1;10C",
+ KeyMetaShfUp: "\x1b[1;10A",
+ KeyMetaShfDown: "\x1b[1;10B",
+ KeyCtrlShfLeft: "\x1b[1;6D",
+ KeyCtrlShfRight: "\x1b[1;6C",
+ KeyCtrlShfUp: "\x1b[1;6A",
+ KeyCtrlShfDown: "\x1b[1;6B",
+ KeyShfHome: "\x1b[1;2H",
+ KeyShfEnd: "\x1b[1;2F",
+ KeyCtrlHome: "\x1b[1;5H",
+ KeyCtrlEnd: "\x1b[1;5F",
+ KeyAltHome: "\x1b[1;9H",
+ KeyAltEnd: "\x1b[1;9F",
+ KeyCtrlShfHome: "\x1b[1;6H",
+ KeyCtrlShfEnd: "\x1b[1;6F",
+ KeyMetaShfHome: "\x1b[1;10H",
+ KeyMetaShfEnd: "\x1b[1;10F",
+ KeyAltShfHome: "\x1b[1;4H",
+ KeyAltShfEnd: "\x1b[1;4F",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_st_truecolor.go b/vendor/maunium.net/go/tcell/terminfo/term_st_truecolor.go
new file mode 100644
index 0000000..006cd1c
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_st_truecolor.go
@@ -0,0 +1,158 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // simpleterm with 256 colors
+ AddTerminfo(&Terminfo{
+ Name: "st-truecolor",
+ Columns: 80,
+ Lines: 24,
+ Colors: 256,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b[?1049h",
+ ExitCA: "\x1b[?1049l",
+ ShowCursor: "\x1b[?12l\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[0m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Dim: "\x1b[2m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
+ SetBg: "\x1b[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
+ SetFgBg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;;%?%p2%{8}%<%t4%p2%d%e%p2%{16}%<%t10%p2%{8}%-%d%e48;5;%p2%d%;m",
+ AltChars: "+C,D-A.B0E``aaffgghFiGjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ EnableAcs: "\x1b)0",
+ SetFgRGB: "\x1b[38;2;%p1%d;%p2%d;%p3%dm",
+ SetBgRGB: "\x1b[48;2;%p1%d;%p2%d;%p3%dm",
+ SetFgBgRGB: "\x1b[38;2;%p1%d;%p2%d;%p3%d;48;2;%p4%d;%p5%d;%p6%dm",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "177",
+ KeyHome: "\x1b[1~",
+ KeyEnd: "\x1b[4~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[1;2P",
+ KeyF14: "\x1b[1;2Q",
+ KeyF15: "\x1b[1;2R",
+ KeyF16: "\x1b[1;2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1b[1;5P",
+ KeyF26: "\x1b[1;5Q",
+ KeyF27: "\x1b[1;5R",
+ KeyF28: "\x1b[1;5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1b[1;6P",
+ KeyF38: "\x1b[1;6Q",
+ KeyF39: "\x1b[1;6R",
+ KeyF40: "\x1b[1;6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1b[1;3P",
+ KeyF50: "\x1b[1;3Q",
+ KeyF51: "\x1b[1;3R",
+ KeyF52: "\x1b[1;3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1b[1;4P",
+ KeyF62: "\x1b[1;4Q",
+ KeyF63: "\x1b[1;4R",
+ KeyClear: "\x1b[3;5~",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[1;2D",
+ KeyShfRight: "\x1b[1;2C",
+ KeyShfUp: "\x1b[1;2A",
+ KeyShfDown: "\x1b[1;2B",
+ KeyCtrlLeft: "\x1b[1;5D",
+ KeyCtrlRight: "\x1b[1;5C",
+ KeyCtrlUp: "\x1b[1;5A",
+ KeyCtrlDown: "\x1b[1;5B",
+ KeyMetaLeft: "\x1b[1;9D",
+ KeyMetaRight: "\x1b[1;9C",
+ KeyMetaUp: "\x1b[1;9A",
+ KeyMetaDown: "\x1b[1;9B",
+ KeyAltLeft: "\x1b[1;3D",
+ KeyAltRight: "\x1b[1;3C",
+ KeyAltUp: "\x1b[1;3A",
+ KeyAltDown: "\x1b[1;3B",
+ KeyAltShfLeft: "\x1b[1;4D",
+ KeyAltShfRight: "\x1b[1;4C",
+ KeyAltShfUp: "\x1b[1;4A",
+ KeyAltShfDown: "\x1b[1;4B",
+ KeyMetaShfLeft: "\x1b[1;10D",
+ KeyMetaShfRight: "\x1b[1;10C",
+ KeyMetaShfUp: "\x1b[1;10A",
+ KeyMetaShfDown: "\x1b[1;10B",
+ KeyCtrlShfLeft: "\x1b[1;6D",
+ KeyCtrlShfRight: "\x1b[1;6C",
+ KeyCtrlShfUp: "\x1b[1;6A",
+ KeyCtrlShfDown: "\x1b[1;6B",
+ KeyShfHome: "\x1b[1;2H",
+ KeyShfEnd: "\x1b[1;2F",
+ KeyCtrlHome: "\x1b[1;5H",
+ KeyCtrlEnd: "\x1b[1;5F",
+ KeyAltHome: "\x1b[1;9H",
+ KeyAltEnd: "\x1b[1;9F",
+ KeyCtrlShfHome: "\x1b[1;6H",
+ KeyCtrlShfEnd: "\x1b[1;6F",
+ KeyMetaShfHome: "\x1b[1;10H",
+ KeyMetaShfEnd: "\x1b[1;10F",
+ KeyAltShfHome: "\x1b[1;4H",
+ KeyAltShfEnd: "\x1b[1;4F",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_sun.go b/vendor/maunium.net/go/tcell/terminfo/term_sun.go
new file mode 100644
index 0000000..5b0235b
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_sun.go
@@ -0,0 +1,46 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // Sun Microsystems Inc. workstation console
+ AddTerminfo(&Terminfo{
+ Name: "sun",
+ Aliases: []string{"sun1", "sun2"},
+ Columns: 80,
+ Lines: 34,
+ Bell: "\a",
+ Clear: "\f",
+ AttrOff: "\x1b[m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Reverse: "\x1b[7m",
+ PadChar: "\x00",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[247z",
+ KeyDelete: "\u007f",
+ KeyBackspace: "\b",
+ KeyHome: "\x1b[214z",
+ KeyEnd: "\x1b[220z",
+ KeyPgUp: "\x1b[216z",
+ KeyPgDn: "\x1b[222z",
+ KeyF1: "\x1b[224z",
+ KeyF2: "\x1b[225z",
+ KeyF3: "\x1b[226z",
+ KeyF4: "\x1b[227z",
+ KeyF5: "\x1b[228z",
+ KeyF6: "\x1b[229z",
+ KeyF7: "\x1b[230z",
+ KeyF8: "\x1b[231z",
+ KeyF9: "\x1b[232z",
+ KeyF10: "\x1b[233z",
+ KeyF11: "\x1b[234z",
+ KeyF12: "\x1b[235z",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_sun_color.go b/vendor/maunium.net/go/tcell/terminfo/term_sun_color.go
new file mode 100644
index 0000000..5d298b9
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_sun_color.go
@@ -0,0 +1,50 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // Sun Microsystems Workstation console with color support (IA systems)
+ AddTerminfo(&Terminfo{
+ Name: "sun-color",
+ Columns: 80,
+ Lines: 34,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\f",
+ AttrOff: "\x1b[m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Reverse: "\x1b[7m",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[247z",
+ KeyDelete: "\u007f",
+ KeyBackspace: "\b",
+ KeyHome: "\x1b[214z",
+ KeyEnd: "\x1b[220z",
+ KeyPgUp: "\x1b[216z",
+ KeyPgDn: "\x1b[222z",
+ KeyF1: "\x1b[224z",
+ KeyF2: "\x1b[225z",
+ KeyF3: "\x1b[226z",
+ KeyF4: "\x1b[227z",
+ KeyF5: "\x1b[228z",
+ KeyF6: "\x1b[229z",
+ KeyF7: "\x1b[230z",
+ KeyF8: "\x1b[231z",
+ KeyF9: "\x1b[232z",
+ KeyF10: "\x1b[233z",
+ KeyF11: "\x1b[234z",
+ KeyF12: "\x1b[235z",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_tvi910.go b/vendor/maunium.net/go/tcell/terminfo/term_tvi910.go
new file mode 100644
index 0000000..83e8080
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_tvi910.go
@@ -0,0 +1,38 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // televideo model 910
+ AddTerminfo(&Terminfo{
+ Name: "tvi910",
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1a",
+ AttrOff: "\x1bG0",
+ Underline: "\x1bG8",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Reverse: "\x1bG4",
+ PadChar: "\x00",
+ SetCursor: "\x1b=%p1%' '%+%c%p2%' '%+%c",
+ CursorBack1: "\b",
+ CursorUp1: "\v",
+ KeyUp: "\v",
+ KeyDown: "\n",
+ KeyRight: "\f",
+ KeyLeft: "\b",
+ KeyBackspace: "\b",
+ KeyHome: "\x1e",
+ KeyF1: "\x01@\r",
+ KeyF2: "\x01A\r",
+ KeyF3: "\x01B\r",
+ KeyF4: "\x01C\r",
+ KeyF5: "\x01D\r",
+ KeyF6: "\x01E\r",
+ KeyF7: "\x01F\r",
+ KeyF8: "\x01G\r",
+ KeyF9: "\x01H\r",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_tvi912.go b/vendor/maunium.net/go/tcell/terminfo/term_tvi912.go
new file mode 100644
index 0000000..7d4094b
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_tvi912.go
@@ -0,0 +1,37 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // old televideo 912/914/920
+ AddTerminfo(&Terminfo{
+ Name: "tvi912",
+ Aliases: []string{"tvi914", "tvi920"},
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1a",
+ Underline: "\x1bl",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ PadChar: "\x00",
+ SetCursor: "\x1b=%p1%' '%+%c%p2%' '%+%c",
+ CursorBack1: "\b",
+ CursorUp1: "\v",
+ KeyUp: "\v",
+ KeyDown: "\n",
+ KeyRight: "\f",
+ KeyLeft: "\b",
+ KeyBackspace: "\b",
+ KeyHome: "\x1e",
+ KeyF1: "\x01@\r",
+ KeyF2: "\x01A\r",
+ KeyF3: "\x01B\r",
+ KeyF4: "\x01C\r",
+ KeyF5: "\x01D\r",
+ KeyF6: "\x01E\r",
+ KeyF7: "\x01F\r",
+ KeyF8: "\x01G\r",
+ KeyF9: "\x01H\r",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_tvi921.go b/vendor/maunium.net/go/tcell/terminfo/term_tvi921.go
new file mode 100644
index 0000000..da661d8
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_tvi921.go
@@ -0,0 +1,33 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // televideo model 921 with sysline same as page & real vi function
+ AddTerminfo(&Terminfo{
+ Name: "tvi921",
+ Columns: 80,
+ Lines: 24,
+ Clear: "\x1a",
+ ShowCursor: "\x1b.3",
+ AttrOff: "\x1bG0",
+ Underline: "\x1bG8",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Reverse: "\x1bG4",
+ PadChar: "\x00",
+ EnterAcs: "\x1b$",
+ ExitAcs: "\x1b%%",
+ SetCursor: "\x1b=%p1%' '%+%c%p2%' '%+%c$<3/>",
+ CursorBack1: "\b",
+ CursorUp1: "\v",
+ KeyUp: "\v",
+ KeyDown: "\x16",
+ KeyRight: "\f",
+ KeyLeft: "\b",
+ KeyInsert: "\x1bQ",
+ KeyDelete: "\x1bW",
+ KeyBackspace: "\b",
+ KeyClear: "\x1a",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_tvi925.go b/vendor/maunium.net/go/tcell/terminfo/term_tvi925.go
new file mode 100644
index 0000000..40e6b43
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_tvi925.go
@@ -0,0 +1,42 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // televideo 925
+ AddTerminfo(&Terminfo{
+ Name: "tvi925",
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1a",
+ ShowCursor: "\x1b.4",
+ AttrOff: "\x1bG0",
+ Underline: "\x1bG8",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Reverse: "\x1bG4",
+ PadChar: "\x00",
+ SetCursor: "\x1b=%p1%' '%+%c%p2%' '%+%c",
+ CursorBack1: "\b",
+ CursorUp1: "\v",
+ KeyUp: "\v",
+ KeyDown: "\x16",
+ KeyRight: "\f",
+ KeyLeft: "\b",
+ KeyInsert: "\x1bQ",
+ KeyDelete: "\x1bW",
+ KeyBackspace: "\b",
+ KeyHome: "\x1e",
+ KeyF1: "\x01@\r",
+ KeyF2: "\x01A\r",
+ KeyF3: "\x01B\r",
+ KeyF4: "\x01C\r",
+ KeyF5: "\x01D\r",
+ KeyF6: "\x01E\r",
+ KeyF7: "\x01F\r",
+ KeyF8: "\x01G\r",
+ KeyF9: "\x01H\r",
+ KeyClear: "\x1a",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_tvi950.go b/vendor/maunium.net/go/tcell/terminfo/term_tvi950.go
new file mode 100644
index 0000000..f5718c4
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_tvi950.go
@@ -0,0 +1,45 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // televideo 950
+ AddTerminfo(&Terminfo{
+ Name: "tvi950",
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1b*",
+ AttrOff: "\x1bG0",
+ Underline: "\x1bG8",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Reverse: "\x1bG4",
+ PadChar: "\x00",
+ AltChars: "b\tc\fd\re\ni\v",
+ EnterAcs: "\x15",
+ ExitAcs: "\x18",
+ SetCursor: "\x1b=%p1%' '%+%c%p2%' '%+%c",
+ CursorBack1: "\b",
+ CursorUp1: "\v",
+ KeyUp: "\v",
+ KeyDown: "\x16",
+ KeyRight: "\f",
+ KeyLeft: "\b",
+ KeyInsert: "\x1bQ",
+ KeyDelete: "\x1bW",
+ KeyBackspace: "\b",
+ KeyHome: "\x1e",
+ KeyF1: "\x01@\r",
+ KeyF2: "\x01A\r",
+ KeyF3: "\x01B\r",
+ KeyF4: "\x01C\r",
+ KeyF5: "\x01D\r",
+ KeyF6: "\x01E\r",
+ KeyF7: "\x01F\r",
+ KeyF8: "\x01G\r",
+ KeyF9: "\x01H\r",
+ KeyClear: "\x1b*",
+ KeyBacktab: "\x1bI",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_tvi970.go b/vendor/maunium.net/go/tcell/terminfo/term_tvi970.go
new file mode 100644
index 0000000..16cace2
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_tvi970.go
@@ -0,0 +1,39 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // televideo 970
+ AddTerminfo(&Terminfo{
+ Name: "tvi970",
+ Columns: 80,
+ Lines: 24,
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b[?20l\x1b[?7h\x1b[1Q",
+ AttrOff: "\x1b[m",
+ Underline: "\x1b[4m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ PadChar: "\x00",
+ EnterAcs: "\x1b(B",
+ ExitAcs: "\x1b(B",
+ SetCursor: "\x1b[%i%p1%d;%p2%df",
+ CursorBack1: "\b",
+ CursorUp1: "\x1bM",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyBackspace: "\b",
+ KeyHome: "\x1b[H",
+ KeyF1: "\x1b?a",
+ KeyF2: "\x1b?b",
+ KeyF3: "\x1b?c",
+ KeyF4: "\x1b?d",
+ KeyF5: "\x1b?e",
+ KeyF6: "\x1b?f",
+ KeyF7: "\x1b?g",
+ KeyF8: "\x1b?h",
+ KeyF9: "\x1b?i",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_vt100.go b/vendor/maunium.net/go/tcell/terminfo/term_vt100.go
new file mode 100644
index 0000000..9ee7117
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_vt100.go
@@ -0,0 +1,47 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // dec vt100 (w/advanced video)
+ AddTerminfo(&Terminfo{
+ Name: "vt100",
+ Aliases: []string{"vt100-am"},
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J$<50>",
+ AttrOff: "\x1b[m\x0f$<2>",
+ Underline: "\x1b[4m$<2>",
+ Bold: "\x1b[1m$<2>",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m$<2>",
+ Reverse: "\x1b[7m$<2>",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b(B\x1b)0",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH$<5>",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A$<2>",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyBackspace: "\b",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1bOt",
+ KeyF6: "\x1bOu",
+ KeyF7: "\x1bOv",
+ KeyF8: "\x1bOl",
+ KeyF9: "\x1bOw",
+ KeyF10: "\x1bOx",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_vt102.go b/vendor/maunium.net/go/tcell/terminfo/term_vt102.go
new file mode 100644
index 0000000..2980c49
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_vt102.go
@@ -0,0 +1,46 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // dec vt102
+ AddTerminfo(&Terminfo{
+ Name: "vt102",
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J$<50>",
+ AttrOff: "\x1b[m\x0f$<2>",
+ Underline: "\x1b[4m$<2>",
+ Bold: "\x1b[1m$<2>",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m$<2>",
+ Reverse: "\x1b[7m$<2>",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b(B\x1b)0",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH$<5>",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A$<2>",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyBackspace: "\b",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1bOt",
+ KeyF6: "\x1bOu",
+ KeyF7: "\x1bOv",
+ KeyF8: "\x1bOl",
+ KeyF9: "\x1bOw",
+ KeyF10: "\x1bOx",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_vt220.go b/vendor/maunium.net/go/tcell/terminfo/term_vt220.go
new file mode 100644
index 0000000..50e4869
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_vt220.go
@@ -0,0 +1,57 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // dec vt220
+ AddTerminfo(&Terminfo{
+ Name: "vt220",
+ Aliases: []string{"vt200"},
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J",
+ AttrOff: "\x1b[m\x1b(B",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0$<2>",
+ ExitAcs: "\x1b(B$<4>",
+ EnableAcs: "\x1b)0",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\b",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[25~",
+ KeyF14: "\x1b[26~",
+ KeyF17: "\x1b[31~",
+ KeyF18: "\x1b[32~",
+ KeyF19: "\x1b[33~",
+ KeyF20: "\x1b[34~",
+ KeyHelp: "\x1b[28~",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_vt320.go b/vendor/maunium.net/go/tcell/terminfo/term_vt320.go
new file mode 100644
index 0000000..4541bf0
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_vt320.go
@@ -0,0 +1,62 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // dec vt320 7 bit terminal
+ AddTerminfo(&Terminfo{
+ Name: "vt320",
+ Aliases: []string{"vt300"},
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x1b(B",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1b[1~",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[25~",
+ KeyF14: "\x1b[26~",
+ KeyF15: "\x1b[28~",
+ KeyF16: "\x1b[29~",
+ KeyF17: "\x1b[31~",
+ KeyF18: "\x1b[32~",
+ KeyF19: "\x1b[33~",
+ KeyF20: "\x1b[34~",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_vt400.go b/vendor/maunium.net/go/tcell/terminfo/term_vt400.go
new file mode 100644
index 0000000..ae19451
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_vt400.go
@@ -0,0 +1,45 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // dec vt400 24x80 column autowrap
+ AddTerminfo(&Terminfo{
+ Name: "vt400",
+ Aliases: []string{"vt400-24", "dec-vt400"},
+ Columns: 80,
+ Lines: 24,
+ Clear: "\x1b[H\x1b[J$<10/>",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x1b(B",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyBackspace: "\b",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_vt420.go b/vendor/maunium.net/go/tcell/terminfo/term_vt420.go
new file mode 100644
index 0000000..7e500a5
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_vt420.go
@@ -0,0 +1,52 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // DEC VT420
+ AddTerminfo(&Terminfo{
+ Name: "vt420",
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J$<50>",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x1b(B$<2>",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m$<2>",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Blink: "\x1b[5m$<2>",
+ Reverse: "\x1b[7m$<2>",
+ EnterKeypad: "\x1b=",
+ ExitKeypad: "\x1b>",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0$<2>",
+ ExitAcs: "\x1b(B$<4>",
+ EnableAcs: "\x1b)0",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH$<10>",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1b[A",
+ KeyDown: "\x1b[B",
+ KeyRight: "\x1b[C",
+ KeyLeft: "\x1b[D",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\b",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[17~",
+ KeyF6: "\x1b[18~",
+ KeyF7: "\x1b[19~",
+ KeyF8: "\x1b[20~",
+ KeyF9: "\x1b[21~",
+ KeyF10: "\x1b[29~",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_vt52.go b/vendor/maunium.net/go/tcell/terminfo/term_vt52.go
new file mode 100644
index 0000000..993a77a
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_vt52.go
@@ -0,0 +1,28 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // dec vt52
+ AddTerminfo(&Terminfo{
+ Name: "vt52",
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1bH\x1bJ",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ PadChar: "\x00",
+ AltChars: "+h.k0affggolpnqprrss",
+ EnterAcs: "\x1bF",
+ ExitAcs: "\x1bG",
+ SetCursor: "\x1bY%p1%' '%+%c%p2%' '%+%c",
+ CursorBack1: "\x1bD",
+ CursorUp1: "\x1bA",
+ KeyUp: "\x1bA",
+ KeyDown: "\x1bB",
+ KeyRight: "\x1bC",
+ KeyLeft: "\x1bD",
+ KeyBackspace: "\b",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_wy50.go b/vendor/maunium.net/go/tcell/terminfo/term_wy50.go
new file mode 100644
index 0000000..a5a4af8
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_wy50.go
@@ -0,0 +1,58 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // Wyse 50
+ AddTerminfo(&Terminfo{
+ Name: "wy50",
+ Aliases: []string{"wyse50"},
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1b+$<20>",
+ ShowCursor: "\x1b`1",
+ HideCursor: "\x1b`0",
+ AttrOff: "\x1b(\x1bH\x03",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1b`7\x1b)",
+ Reverse: "\x1b`6\x1b)",
+ PadChar: "\x00",
+ AltChars: "0wa_h[jukslrmqnxqzttuyv]wpxv",
+ EnterAcs: "\x1bH\x02",
+ ExitAcs: "\x1bH\x03",
+ SetCursor: "\x1b=%p1%' '%+%c%p2%' '%+%c",
+ CursorBack1: "\b",
+ CursorUp1: "\v",
+ KeyUp: "\v",
+ KeyDown: "\n",
+ KeyRight: "\f",
+ KeyLeft: "\b",
+ KeyInsert: "\x1bQ",
+ KeyDelete: "\x1bW",
+ KeyBackspace: "\b",
+ KeyHome: "\x1e",
+ KeyPgUp: "\x1bJ",
+ KeyPgDn: "\x1bK",
+ KeyF1: "\x01@\r",
+ KeyF2: "\x01A\r",
+ KeyF3: "\x01B\r",
+ KeyF4: "\x01C\r",
+ KeyF5: "\x01D\r",
+ KeyF6: "\x01E\r",
+ KeyF7: "\x01F\r",
+ KeyF8: "\x01G\r",
+ KeyF9: "\x01H\r",
+ KeyF10: "\x01I\r",
+ KeyF11: "\x01J\r",
+ KeyF12: "\x01K\r",
+ KeyF13: "\x01L\r",
+ KeyF14: "\x01M\r",
+ KeyF15: "\x01N\r",
+ KeyF16: "\x01O\r",
+ KeyPrint: "\x1bP",
+ KeyBacktab: "\x1bI",
+ KeyShfHome: "\x1b{",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_wy60.go b/vendor/maunium.net/go/tcell/terminfo/term_wy60.go
new file mode 100644
index 0000000..be2b74b
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_wy60.go
@@ -0,0 +1,62 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // Wyse 60
+ AddTerminfo(&Terminfo{
+ Name: "wy60",
+ Aliases: []string{"wyse60"},
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1b+$<100>",
+ EnterCA: "\x1bw0",
+ ExitCA: "\x1bw1",
+ ShowCursor: "\x1b`1",
+ HideCursor: "\x1b`0",
+ AttrOff: "\x1b(\x1bH\x03\x1bG0\x1bcD",
+ Underline: "\x1bG8",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1bGp",
+ Blink: "\x1bG2",
+ Reverse: "\x1bG4",
+ PadChar: "\x00",
+ AltChars: "+/,.0[a2fxgqh1ihjYk?lZm@nEqDtCu4vAwBx3yszr{c~~",
+ EnterAcs: "\x1bcE",
+ ExitAcs: "\x1bcD",
+ SetCursor: "\x1b=%p1%' '%+%c%p2%' '%+%c",
+ CursorBack1: "\b",
+ CursorUp1: "\v",
+ KeyUp: "\v",
+ KeyDown: "\n",
+ KeyRight: "\f",
+ KeyLeft: "\b",
+ KeyInsert: "\x1bQ",
+ KeyDelete: "\x1bW",
+ KeyBackspace: "\b",
+ KeyHome: "\x1e",
+ KeyPgUp: "\x1bJ",
+ KeyPgDn: "\x1bK",
+ KeyF1: "\x01@\r",
+ KeyF2: "\x01A\r",
+ KeyF3: "\x01B\r",
+ KeyF4: "\x01C\r",
+ KeyF5: "\x01D\r",
+ KeyF6: "\x01E\r",
+ KeyF7: "\x01F\r",
+ KeyF8: "\x01G\r",
+ KeyF9: "\x01H\r",
+ KeyF10: "\x01I\r",
+ KeyF11: "\x01J\r",
+ KeyF12: "\x01K\r",
+ KeyF13: "\x01L\r",
+ KeyF14: "\x01M\r",
+ KeyF15: "\x01N\r",
+ KeyF16: "\x01O\r",
+ KeyPrint: "\x1bP",
+ KeyBacktab: "\x1bI",
+ KeyShfHome: "\x1b{",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_wy99_ansi.go b/vendor/maunium.net/go/tcell/terminfo/term_wy99_ansi.go
new file mode 100644
index 0000000..9bd646e
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_wy99_ansi.go
@@ -0,0 +1,60 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // Wyse WY-99GT in ansi mode (int'l PC keyboard)
+ AddTerminfo(&Terminfo{
+ Name: "wy99-ansi",
+ Columns: 80,
+ Lines: 25,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J$<200>",
+ ShowCursor: "\x1b[34h\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x0f\x1b[\"q",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1b[2m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h",
+ ExitKeypad: "\x1b[?1l",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooqqssttuuvvwwxx{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b)0",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b$<1>",
+ CursorUp1: "\x1bM",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyBackspace: "\b",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[M",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF17: "\x1b[K",
+ KeyF18: "\x1b[31~",
+ KeyF19: "\x1b[32~",
+ KeyF20: "\x1b[33~",
+ KeyF21: "\x1b[34~",
+ KeyF22: "\x1b[35~",
+ KeyF23: "\x1b[1~",
+ KeyF24: "\x1b[2~",
+ KeyBacktab: "\x1b[z",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_wy99a_ansi.go b/vendor/maunium.net/go/tcell/terminfo/term_wy99a_ansi.go
new file mode 100644
index 0000000..097e57c
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_wy99a_ansi.go
@@ -0,0 +1,60 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // Wyse WY-99GT in ansi mode (US PC keyboard)
+ AddTerminfo(&Terminfo{
+ Name: "wy99a-ansi",
+ Columns: 80,
+ Lines: 25,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J$<200>",
+ ShowCursor: "\x1b[34h\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[m\x0f\x1b[\"q",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1b[2m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h",
+ ExitKeypad: "\x1b[?1l",
+ PadChar: "\x00",
+ AltChars: "``aaffggjjkkllmmnnooqqssttuuvvwwxx{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b)0",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b$<1>",
+ CursorUp1: "\x1bM",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyBackspace: "\b",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[M",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF17: "\x1b[K",
+ KeyF18: "\x1b[31~",
+ KeyF19: "\x1b[32~",
+ KeyF20: "\x1b[33~",
+ KeyF21: "\x1b[34~",
+ KeyF22: "\x1b[35~",
+ KeyF23: "\x1b[1~",
+ KeyF24: "\x1b[2~",
+ KeyBacktab: "\x1b[z",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_xfce.go b/vendor/maunium.net/go/tcell/terminfo/term_xfce.go
new file mode 100644
index 0000000..1a83727
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_xfce.go
@@ -0,0 +1,155 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // Xfce Terminal
+ AddTerminfo(&Terminfo{
+ Name: "xfce",
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b7\x1b[?47h",
+ ExitCA: "\x1b[2J\x1b[?47l\x1b8",
+ ShowCursor: "\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b[0m\x0f",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ AltChars: "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x0e",
+ ExitAcs: "\x0f",
+ EnableAcs: "\x1b)0",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1bOH",
+ KeyEnd: "\x1bOF",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1bO1;2P",
+ KeyF14: "\x1bO1;2Q",
+ KeyF15: "\x1bO1;2R",
+ KeyF16: "\x1bO1;2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1bO1;5P",
+ KeyF26: "\x1bO1;5Q",
+ KeyF27: "\x1bO1;5R",
+ KeyF28: "\x1bO1;5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1bO1;6P",
+ KeyF38: "\x1bO1;6Q",
+ KeyF39: "\x1bO1;6R",
+ KeyF40: "\x1bO1;6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1bO1;3P",
+ KeyF50: "\x1bO1;3Q",
+ KeyF51: "\x1bO1;3R",
+ KeyF52: "\x1bO1;3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1bO1;4P",
+ KeyF62: "\x1bO1;4Q",
+ KeyF63: "\x1bO1;4R",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[1;2D",
+ KeyShfRight: "\x1b[1;2C",
+ KeyShfUp: "\x1b[1;2A",
+ KeyShfDown: "\x1b[1;2B",
+ KeyCtrlLeft: "\x1b[1;5D",
+ KeyCtrlRight: "\x1b[1;5C",
+ KeyCtrlUp: "\x1b[1;5A",
+ KeyCtrlDown: "\x1b[1;5B",
+ KeyMetaLeft: "\x1b[1;9D",
+ KeyMetaRight: "\x1b[1;9C",
+ KeyMetaUp: "\x1b[1;9A",
+ KeyMetaDown: "\x1b[1;9B",
+ KeyAltLeft: "\x1b[1;3D",
+ KeyAltRight: "\x1b[1;3C",
+ KeyAltUp: "\x1b[1;3A",
+ KeyAltDown: "\x1b[1;3B",
+ KeyAltShfLeft: "\x1b[1;4D",
+ KeyAltShfRight: "\x1b[1;4C",
+ KeyAltShfUp: "\x1b[1;4A",
+ KeyAltShfDown: "\x1b[1;4B",
+ KeyMetaShfLeft: "\x1b[1;10D",
+ KeyMetaShfRight: "\x1b[1;10C",
+ KeyMetaShfUp: "\x1b[1;10A",
+ KeyMetaShfDown: "\x1b[1;10B",
+ KeyCtrlShfLeft: "\x1b[1;6D",
+ KeyCtrlShfRight: "\x1b[1;6C",
+ KeyCtrlShfUp: "\x1b[1;6A",
+ KeyCtrlShfDown: "\x1b[1;6B",
+ KeyShfHome: "\x1b[1;2H",
+ KeyShfEnd: "\x1b[1;2F",
+ KeyCtrlHome: "\x1b[1;5H",
+ KeyCtrlEnd: "\x1b[1;5F",
+ KeyAltHome: "\x1b[1;9H",
+ KeyAltEnd: "\x1b[1;9F",
+ KeyCtrlShfHome: "\x1b[1;6H",
+ KeyCtrlShfEnd: "\x1b[1;6F",
+ KeyMetaShfHome: "\x1b[1;10H",
+ KeyMetaShfEnd: "\x1b[1;10F",
+ KeyAltShfHome: "\x1b[1;4H",
+ KeyAltShfEnd: "\x1b[1;4F",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_xnuppc.go b/vendor/maunium.net/go/tcell/terminfo/term_xnuppc.go
new file mode 100644
index 0000000..e2c0861
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_xnuppc.go
@@ -0,0 +1,33 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // Darwin PowerPC Console (color)
+ AddTerminfo(&Terminfo{
+ Name: "xnuppc",
+ Aliases: []string{"darwin"},
+ Colors: 8,
+ Clear: "\x1b[H\x1b[J",
+ AttrOff: "\x1b[m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ PadChar: "\x00",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\x1b[D",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyBackspace: "\u007f",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_xterm.go b/vendor/maunium.net/go/tcell/terminfo/term_xterm.go
new file mode 100644
index 0000000..aeb89ce
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_xterm.go
@@ -0,0 +1,156 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // X11 terminal emulator
+ AddTerminfo(&Terminfo{
+ Name: "xterm",
+ Aliases: []string{"xterm-debian"},
+ Columns: 80,
+ Lines: 24,
+ Colors: 8,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b[?1049h",
+ ExitCA: "\x1b[?1049l",
+ ShowCursor: "\x1b[?12l\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b(B\x1b[m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1b[2m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[3%p1%dm",
+ SetBg: "\x1b[4%p1%dm",
+ SetFgBg: "\x1b[3%p1%d;4%p2%dm",
+ AltChars: "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1bOH",
+ KeyEnd: "\x1bOF",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[1;2P",
+ KeyF14: "\x1b[1;2Q",
+ KeyF15: "\x1b[1;2R",
+ KeyF16: "\x1b[1;2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1b[1;5P",
+ KeyF26: "\x1b[1;5Q",
+ KeyF27: "\x1b[1;5R",
+ KeyF28: "\x1b[1;5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1b[1;6P",
+ KeyF38: "\x1b[1;6Q",
+ KeyF39: "\x1b[1;6R",
+ KeyF40: "\x1b[1;6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1b[1;3P",
+ KeyF50: "\x1b[1;3Q",
+ KeyF51: "\x1b[1;3R",
+ KeyF52: "\x1b[1;3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1b[1;4P",
+ KeyF62: "\x1b[1;4Q",
+ KeyF63: "\x1b[1;4R",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[1;2D",
+ KeyShfRight: "\x1b[1;2C",
+ KeyShfUp: "\x1b[1;2A",
+ KeyShfDown: "\x1b[1;2B",
+ KeyCtrlLeft: "\x1b[1;5D",
+ KeyCtrlRight: "\x1b[1;5C",
+ KeyCtrlUp: "\x1b[1;5A",
+ KeyCtrlDown: "\x1b[1;5B",
+ KeyMetaLeft: "\x1b[1;9D",
+ KeyMetaRight: "\x1b[1;9C",
+ KeyMetaUp: "\x1b[1;9A",
+ KeyMetaDown: "\x1b[1;9B",
+ KeyAltLeft: "\x1b[1;3D",
+ KeyAltRight: "\x1b[1;3C",
+ KeyAltUp: "\x1b[1;3A",
+ KeyAltDown: "\x1b[1;3B",
+ KeyAltShfLeft: "\x1b[1;4D",
+ KeyAltShfRight: "\x1b[1;4C",
+ KeyAltShfUp: "\x1b[1;4A",
+ KeyAltShfDown: "\x1b[1;4B",
+ KeyMetaShfLeft: "\x1b[1;10D",
+ KeyMetaShfRight: "\x1b[1;10C",
+ KeyMetaShfUp: "\x1b[1;10A",
+ KeyMetaShfDown: "\x1b[1;10B",
+ KeyCtrlShfLeft: "\x1b[1;6D",
+ KeyCtrlShfRight: "\x1b[1;6C",
+ KeyCtrlShfUp: "\x1b[1;6A",
+ KeyCtrlShfDown: "\x1b[1;6B",
+ KeyShfHome: "\x1b[1;2H",
+ KeyShfEnd: "\x1b[1;2F",
+ KeyCtrlHome: "\x1b[1;5H",
+ KeyCtrlEnd: "\x1b[1;5F",
+ KeyAltHome: "\x1b[1;9H",
+ KeyAltEnd: "\x1b[1;9F",
+ KeyCtrlShfHome: "\x1b[1;6H",
+ KeyCtrlShfEnd: "\x1b[1;6F",
+ KeyMetaShfHome: "\x1b[1;10H",
+ KeyMetaShfEnd: "\x1b[1;10F",
+ KeyAltShfHome: "\x1b[1;4H",
+ KeyAltShfEnd: "\x1b[1;4F",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_xterm_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_xterm_256color.go
new file mode 100644
index 0000000..b5b498d
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_xterm_256color.go
@@ -0,0 +1,155 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // xterm with 256 colors
+ AddTerminfo(&Terminfo{
+ Name: "xterm-256color",
+ Columns: 80,
+ Lines: 24,
+ Colors: 256,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b[?1049h",
+ ExitCA: "\x1b[?1049l",
+ ShowCursor: "\x1b[?12l\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b(B\x1b[m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Dim: "\x1b[2m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
+ SetBg: "\x1b[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
+ SetFgBg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;;%?%p2%{8}%<%t4%p2%d%e%p2%{16}%<%t10%p2%{8}%-%d%e48;5;%p2%d%;m",
+ AltChars: "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\u007f",
+ KeyHome: "\x1bOH",
+ KeyEnd: "\x1bOF",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[1;2P",
+ KeyF14: "\x1b[1;2Q",
+ KeyF15: "\x1b[1;2R",
+ KeyF16: "\x1b[1;2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1b[1;5P",
+ KeyF26: "\x1b[1;5Q",
+ KeyF27: "\x1b[1;5R",
+ KeyF28: "\x1b[1;5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1b[1;6P",
+ KeyF38: "\x1b[1;6Q",
+ KeyF39: "\x1b[1;6R",
+ KeyF40: "\x1b[1;6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1b[1;3P",
+ KeyF50: "\x1b[1;3Q",
+ KeyF51: "\x1b[1;3R",
+ KeyF52: "\x1b[1;3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1b[1;4P",
+ KeyF62: "\x1b[1;4Q",
+ KeyF63: "\x1b[1;4R",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[1;2D",
+ KeyShfRight: "\x1b[1;2C",
+ KeyShfUp: "\x1b[1;2A",
+ KeyShfDown: "\x1b[1;2B",
+ KeyCtrlLeft: "\x1b[1;5D",
+ KeyCtrlRight: "\x1b[1;5C",
+ KeyCtrlUp: "\x1b[1;5A",
+ KeyCtrlDown: "\x1b[1;5B",
+ KeyMetaLeft: "\x1b[1;9D",
+ KeyMetaRight: "\x1b[1;9C",
+ KeyMetaUp: "\x1b[1;9A",
+ KeyMetaDown: "\x1b[1;9B",
+ KeyAltLeft: "\x1b[1;3D",
+ KeyAltRight: "\x1b[1;3C",
+ KeyAltUp: "\x1b[1;3A",
+ KeyAltDown: "\x1b[1;3B",
+ KeyAltShfLeft: "\x1b[1;4D",
+ KeyAltShfRight: "\x1b[1;4C",
+ KeyAltShfUp: "\x1b[1;4A",
+ KeyAltShfDown: "\x1b[1;4B",
+ KeyMetaShfLeft: "\x1b[1;10D",
+ KeyMetaShfRight: "\x1b[1;10C",
+ KeyMetaShfUp: "\x1b[1;10A",
+ KeyMetaShfDown: "\x1b[1;10B",
+ KeyCtrlShfLeft: "\x1b[1;6D",
+ KeyCtrlShfRight: "\x1b[1;6C",
+ KeyCtrlShfUp: "\x1b[1;6A",
+ KeyCtrlShfDown: "\x1b[1;6B",
+ KeyShfHome: "\x1b[1;2H",
+ KeyShfEnd: "\x1b[1;2F",
+ KeyCtrlHome: "\x1b[1;5H",
+ KeyCtrlEnd: "\x1b[1;5F",
+ KeyAltHome: "\x1b[1;9H",
+ KeyAltEnd: "\x1b[1;9F",
+ KeyCtrlShfHome: "\x1b[1;6H",
+ KeyCtrlShfEnd: "\x1b[1;6F",
+ KeyMetaShfHome: "\x1b[1;10H",
+ KeyMetaShfEnd: "\x1b[1;10F",
+ KeyAltShfHome: "\x1b[1;4H",
+ KeyAltShfEnd: "\x1b[1;4F",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_xterm_truecolor.go b/vendor/maunium.net/go/tcell/terminfo/term_xterm_truecolor.go
new file mode 100644
index 0000000..d035e44
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_xterm_truecolor.go
@@ -0,0 +1,155 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // xterm with 256 colors
+ AddTerminfo(&Terminfo{
+ Name: "xterm-truecolor",
+ Columns: 80,
+ Lines: 24,
+ Colors: 256,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[2J",
+ EnterCA: "\x1b[?1049h",
+ ExitCA: "\x1b[?1049l",
+ ShowCursor: "\x1b[?12l\x1b[?25h",
+ HideCursor: "\x1b[?25l",
+ AttrOff: "\x1b(B\x1b[m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Blink: "\x1b[5m",
+ Reverse: "\x1b[7m",
+ EnterKeypad: "\x1b[?1h\x1b=",
+ ExitKeypad: "\x1b[?1l\x1b>",
+ SetFg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m",
+ SetBg: "\x1b[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m",
+ SetFgBg: "\x1b[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;;%?%p2%{8}%<%t4%p2%d%e%p2%{16}%<%t10%p2%{8}%-%d%e48;5;%p2%d%;m",
+ AltChars: "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
+ SetFgRGB: "\x1b[38;2;%p1%d;%p2%d;%p3%dm",
+ SetBgRGB: "\x1b[48;2;%p1%d;%p2%d;%p3%dm",
+ SetFgBgRGB: "\x1b[38;2;%p1%d;%p2%d;%p3%d;48;2;%p4%d;%p5%d;%p6%dm",
+ Mouse: "\x1b[M",
+ MouseMode: "%?%p1%{1}%=%t%'h'%Pa%e%'l'%Pa%;\x1b[?1000%ga%c\x1b[?1002%ga%c\x1b[?1003%ga%c\x1b[?1006%ga%c",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ KeyUp: "\x1bOA",
+ KeyDown: "\x1bOB",
+ KeyRight: "\x1bOC",
+ KeyLeft: "\x1bOD",
+ KeyInsert: "\x1b[2~",
+ KeyDelete: "\x1b[3~",
+ KeyBackspace: "\b",
+ KeyHome: "\x1bOH",
+ KeyEnd: "\x1bOF",
+ KeyPgUp: "\x1b[5~",
+ KeyPgDn: "\x1b[6~",
+ KeyF1: "\x1bOP",
+ KeyF2: "\x1bOQ",
+ KeyF3: "\x1bOR",
+ KeyF4: "\x1bOS",
+ KeyF5: "\x1b[15~",
+ KeyF6: "\x1b[17~",
+ KeyF7: "\x1b[18~",
+ KeyF8: "\x1b[19~",
+ KeyF9: "\x1b[20~",
+ KeyF10: "\x1b[21~",
+ KeyF11: "\x1b[23~",
+ KeyF12: "\x1b[24~",
+ KeyF13: "\x1b[1;2P",
+ KeyF14: "\x1b[1;2Q",
+ KeyF15: "\x1b[1;2R",
+ KeyF16: "\x1b[1;2S",
+ KeyF17: "\x1b[15;2~",
+ KeyF18: "\x1b[17;2~",
+ KeyF19: "\x1b[18;2~",
+ KeyF20: "\x1b[19;2~",
+ KeyF21: "\x1b[20;2~",
+ KeyF22: "\x1b[21;2~",
+ KeyF23: "\x1b[23;2~",
+ KeyF24: "\x1b[24;2~",
+ KeyF25: "\x1b[1;5P",
+ KeyF26: "\x1b[1;5Q",
+ KeyF27: "\x1b[1;5R",
+ KeyF28: "\x1b[1;5S",
+ KeyF29: "\x1b[15;5~",
+ KeyF30: "\x1b[17;5~",
+ KeyF31: "\x1b[18;5~",
+ KeyF32: "\x1b[19;5~",
+ KeyF33: "\x1b[20;5~",
+ KeyF34: "\x1b[21;5~",
+ KeyF35: "\x1b[23;5~",
+ KeyF36: "\x1b[24;5~",
+ KeyF37: "\x1b[1;6P",
+ KeyF38: "\x1b[1;6Q",
+ KeyF39: "\x1b[1;6R",
+ KeyF40: "\x1b[1;6S",
+ KeyF41: "\x1b[15;6~",
+ KeyF42: "\x1b[17;6~",
+ KeyF43: "\x1b[18;6~",
+ KeyF44: "\x1b[19;6~",
+ KeyF45: "\x1b[20;6~",
+ KeyF46: "\x1b[21;6~",
+ KeyF47: "\x1b[23;6~",
+ KeyF48: "\x1b[24;6~",
+ KeyF49: "\x1b[1;3P",
+ KeyF50: "\x1b[1;3Q",
+ KeyF51: "\x1b[1;3R",
+ KeyF52: "\x1b[1;3S",
+ KeyF53: "\x1b[15;3~",
+ KeyF54: "\x1b[17;3~",
+ KeyF55: "\x1b[18;3~",
+ KeyF56: "\x1b[19;3~",
+ KeyF57: "\x1b[20;3~",
+ KeyF58: "\x1b[21;3~",
+ KeyF59: "\x1b[23;3~",
+ KeyF60: "\x1b[24;3~",
+ KeyF61: "\x1b[1;4P",
+ KeyF62: "\x1b[1;4Q",
+ KeyF63: "\x1b[1;4R",
+ KeyBacktab: "\x1b[Z",
+ KeyShfLeft: "\x1b[1;2D",
+ KeyShfRight: "\x1b[1;2C",
+ KeyShfUp: "\x1b[1;2A",
+ KeyShfDown: "\x1b[1;2B",
+ KeyCtrlLeft: "\x1b[1;5D",
+ KeyCtrlRight: "\x1b[1;5C",
+ KeyCtrlUp: "\x1b[1;5A",
+ KeyCtrlDown: "\x1b[1;5B",
+ KeyMetaLeft: "\x1b[1;9D",
+ KeyMetaRight: "\x1b[1;9C",
+ KeyMetaUp: "\x1b[1;9A",
+ KeyMetaDown: "\x1b[1;9B",
+ KeyAltLeft: "\x1b[1;3D",
+ KeyAltRight: "\x1b[1;3C",
+ KeyAltUp: "\x1b[1;3A",
+ KeyAltDown: "\x1b[1;3B",
+ KeyAltShfLeft: "\x1b[1;4D",
+ KeyAltShfRight: "\x1b[1;4C",
+ KeyAltShfUp: "\x1b[1;4A",
+ KeyAltShfDown: "\x1b[1;4B",
+ KeyMetaShfLeft: "\x1b[1;10D",
+ KeyMetaShfRight: "\x1b[1;10C",
+ KeyMetaShfUp: "\x1b[1;10A",
+ KeyMetaShfDown: "\x1b[1;10B",
+ KeyCtrlShfLeft: "\x1b[1;6D",
+ KeyCtrlShfRight: "\x1b[1;6C",
+ KeyCtrlShfUp: "\x1b[1;6A",
+ KeyCtrlShfDown: "\x1b[1;6B",
+ KeyShfHome: "\x1b[1;2H",
+ KeyShfEnd: "\x1b[1;2F",
+ KeyCtrlHome: "\x1b[1;5H",
+ KeyCtrlEnd: "\x1b[1;5F",
+ KeyAltHome: "\x1b[1;9H",
+ KeyAltEnd: "\x1b[1;9F",
+ KeyCtrlShfHome: "\x1b[1;6H",
+ KeyCtrlShfEnd: "\x1b[1;6F",
+ KeyMetaShfHome: "\x1b[1;10H",
+ KeyMetaShfEnd: "\x1b[1;10F",
+ KeyAltShfHome: "\x1b[1;4H",
+ KeyAltShfEnd: "\x1b[1;4F",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/terminfo.go b/vendor/maunium.net/go/tcell/terminfo/terminfo.go
new file mode 100644
index 0000000..013d312
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/terminfo.go
@@ -0,0 +1,841 @@
+// Copyright 2017 The TCell Authors
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use file except in compliance with the License.
+// You may obtain a copy of the license at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package terminfo
+
+import (
+ "bytes"
+ "compress/gzip"
+ "encoding/json"
+ "errors"
+ "fmt"
+ "io"
+ "os"
+ "path"
+ "strconv"
+ "strings"
+ "sync"
+)
+
+var (
+ // ErrTermNotFound indicates that a suitable terminal entry could
+ // not be found. This can result from either not having TERM set,
+ // or from the TERM failing to support certain minimal functionality,
+ // in particular absolute cursor addressability (the cup capability)
+ // is required. For example, legacy "adm3" lacks this capability,
+ // whereas the slightly newer "adm3a" supports it. This failure
+ // occurs most often with "dumb".
+ ErrTermNotFound = errors.New("terminal entry not found")
+)
+
+// Terminfo represents a terminfo entry. Note that we use friendly names
+// in Go, but when we write out JSON, we use the same names as terminfo.
+// The name, aliases and smous, rmous fields do not come from terminfo directly.
+type Terminfo struct {
+ Name string `json:"name"`
+ Aliases []string `json:"aliases,omitempty"`
+ Columns int `json:"cols,omitempty"` // cols
+ Lines int `json:"lines,omitempty"` // lines
+ Colors int `json:"colors,omitempty"` // colors
+ Bell string `json:"bell,omitempty"` // bell
+ Clear string `json:"clear,omitempty"` // clear
+ EnterCA string `json:"smcup,omitempty"` // smcup
+ ExitCA string `json:"rmcup,omitempty"` // rmcup
+ ShowCursor string `json:"cnorm,omitempty"` // cnorm
+ HideCursor string `json:"civis,omitempty"` // civis
+ AttrOff string `json:"sgr0,omitempty"` // sgr0
+ Underline string `json:"smul,omitempty"` // smul
+ Bold string `json:"bold,omitempty"` // bold
+ Italic string `json:"sitm,omitempty"` // sitm
+ Strikethrough string `json:"strikethrough,omitempty"` // strikethrough
+ Blink string `json:"blink,omitempty"` // blink
+ Reverse string `json:"rev,omitempty"` // rev
+ Dim string `json:"dim,omitempty"` // dim
+ EnterKeypad string `json:"smkx,omitempty"` // smkx
+ ExitKeypad string `json:"rmkx,omitempty"` // rmkx
+ SetFg string `json:"setaf,omitempty"` // setaf
+ SetBg string `json:"setbg,omitempty"` // setab
+ SetCursor string `json:"cup,omitempty"` // cup
+ CursorBack1 string `json:"cub1,omitempty"` // cub1
+ CursorUp1 string `json:"cuu1,omitempty"` // cuu1
+ PadChar string `json:"pad,omitempty"` // pad
+ KeyBackspace string `json:"kbs,omitempty"` // kbs
+ KeyF1 string `json:"kf1,omitempty"` // kf1
+ KeyF2 string `json:"kf2,omitempty"` // kf2
+ KeyF3 string `json:"kf3,omitempty"` // kf3
+ KeyF4 string `json:"kf4,omitempty"` // kf4
+ KeyF5 string `json:"kf5,omitempty"` // kf5
+ KeyF6 string `json:"kf6,omitempty"` // kf6
+ KeyF7 string `json:"kf7,omitempty"` // kf7
+ KeyF8 string `json:"kf8,omitempty"` // kf8
+ KeyF9 string `json:"kf9,omitempty"` // kf9
+ KeyF10 string `json:"kf10,omitempty"` // kf10
+ KeyF11 string `json:"kf11,omitempty"` // kf11
+ KeyF12 string `json:"kf12,omitempty"` // kf12
+ KeyF13 string `json:"kf13,omitempty"` // kf13
+ KeyF14 string `json:"kf14,omitempty"` // kf14
+ KeyF15 string `json:"kf15,omitempty"` // kf15
+ KeyF16 string `json:"kf16,omitempty"` // kf16
+ KeyF17 string `json:"kf17,omitempty"` // kf17
+ KeyF18 string `json:"kf18,omitempty"` // kf18
+ KeyF19 string `json:"kf19,omitempty"` // kf19
+ KeyF20 string `json:"kf20,omitempty"` // kf20
+ KeyF21 string `json:"kf21,omitempty"` // kf21
+ KeyF22 string `json:"kf22,omitempty"` // kf22
+ KeyF23 string `json:"kf23,omitempty"` // kf23
+ KeyF24 string `json:"kf24,omitempty"` // kf24
+ KeyF25 string `json:"kf25,omitempty"` // kf25
+ KeyF26 string `json:"kf26,omitempty"` // kf26
+ KeyF27 string `json:"kf27,omitempty"` // kf27
+ KeyF28 string `json:"kf28,omitempty"` // kf28
+ KeyF29 string `json:"kf29,omitempty"` // kf29
+ KeyF30 string `json:"kf30,omitempty"` // kf30
+ KeyF31 string `json:"kf31,omitempty"` // kf31
+ KeyF32 string `json:"kf32,omitempty"` // kf32
+ KeyF33 string `json:"kf33,omitempty"` // kf33
+ KeyF34 string `json:"kf34,omitempty"` // kf34
+ KeyF35 string `json:"kf35,omitempty"` // kf35
+ KeyF36 string `json:"kf36,omitempty"` // kf36
+ KeyF37 string `json:"kf37,omitempty"` // kf37
+ KeyF38 string `json:"kf38,omitempty"` // kf38
+ KeyF39 string `json:"kf39,omitempty"` // kf39
+ KeyF40 string `json:"kf40,omitempty"` // kf40
+ KeyF41 string `json:"kf41,omitempty"` // kf41
+ KeyF42 string `json:"kf42,omitempty"` // kf42
+ KeyF43 string `json:"kf43,omitempty"` // kf43
+ KeyF44 string `json:"kf44,omitempty"` // kf44
+ KeyF45 string `json:"kf45,omitempty"` // kf45
+ KeyF46 string `json:"kf46,omitempty"` // kf46
+ KeyF47 string `json:"kf47,omitempty"` // kf47
+ KeyF48 string `json:"kf48,omitempty"` // kf48
+ KeyF49 string `json:"kf49,omitempty"` // kf49
+ KeyF50 string `json:"kf50,omitempty"` // kf50
+ KeyF51 string `json:"kf51,omitempty"` // kf51
+ KeyF52 string `json:"kf52,omitempty"` // kf52
+ KeyF53 string `json:"kf53,omitempty"` // kf53
+ KeyF54 string `json:"kf54,omitempty"` // kf54
+ KeyF55 string `json:"kf55,omitempty"` // kf55
+ KeyF56 string `json:"kf56,omitempty"` // kf56
+ KeyF57 string `json:"kf57,omitempty"` // kf57
+ KeyF58 string `json:"kf58,omitempty"` // kf58
+ KeyF59 string `json:"kf59,omitempty"` // kf59
+ KeyF60 string `json:"kf60,omitempty"` // kf60
+ KeyF61 string `json:"kf61,omitempty"` // kf61
+ KeyF62 string `json:"kf62,omitempty"` // kf62
+ KeyF63 string `json:"kf63,omitempty"` // kf63
+ KeyF64 string `json:"kf64,omitempty"` // kf64
+ KeyInsert string `json:"kich,omitempty"` // kich1
+ KeyDelete string `json:"kdch,omitempty"` // kdch1
+ KeyHome string `json:"khome,omitempty"` // khome
+ KeyEnd string `json:"kend,omitempty"` // kend
+ KeyHelp string `json:"khlp,omitempty"` // khlp
+ KeyPgUp string `json:"kpp,omitempty"` // kpp
+ KeyPgDn string `json:"knp,omitempty"` // knp
+ KeyUp string `json:"kcuu1,omitempty"` // kcuu1
+ KeyDown string `json:"kcud1,omitempty"` // kcud1
+ KeyLeft string `json:"kcub1,omitempty"` // kcub1
+ KeyRight string `json:"kcuf1,omitempty"` // kcuf1
+ KeyBacktab string `json:"kcbt,omitempty"` // kcbt
+ KeyExit string `json:"kext,omitempty"` // kext
+ KeyClear string `json:"kclr,omitempty"` // kclr
+ KeyPrint string `json:"kprt,omitempty"` // kprt
+ KeyCancel string `json:"kcan,omitempty"` // kcan
+ Mouse string `json:"kmous,omitempty"` // kmous
+ MouseMode string `json:"XM,omitempty"` // XM
+ AltChars string `json:"acsc,omitempty"` // acsc
+ EnterAcs string `json:"smacs,omitempty"` // smacs
+ ExitAcs string `json:"rmacs,omitempty"` // rmacs
+ EnableAcs string `json:"enacs,omitempty"` // enacs
+ KeyShfRight string `json:"kRIT,omitempty"` // kRIT
+ KeyShfLeft string `json:"kLFT,omitempty"` // kLFT
+ KeyShfHome string `json:"kHOM,omitempty"` // kHOM
+ KeyShfEnd string `json:"kEND,omitempty"` // kEND
+
+ // These are non-standard extensions to terminfo. This includes
+ // true color support, and some additional keys. Its kind of bizarre
+ // that shifted variants of left and right exist, but not up and down.
+ // Terminal support for these are going to vary amongst XTerm
+ // emulations, so don't depend too much on them in your application.
+
+ SetFgBg string `json:"_setfgbg,omitempty"` // setfgbg
+ SetFgBgRGB string `json:"_setfgbgrgb,omitempty"` // setfgbgrgb
+ SetFgRGB string `json:"_setfrgb,omitempty"` // setfrgb
+ SetBgRGB string `json:"_setbrgb,omitempty"` // setbrgb
+ KeyShfUp string `json:"_kscu1,omitempty"` // shift-up
+ KeyShfDown string `json:"_kscud1,omitempty"` // shift-down
+ KeyCtrlUp string `json:"_kccu1,omitempty"` // ctrl-up
+ KeyCtrlDown string `json:"_kccud1,omitempty"` // ctrl-left
+ KeyCtrlRight string `json:"_kccuf1,omitempty"` // ctrl-right
+ KeyCtrlLeft string `json:"_kccub1,omitempty"` // ctrl-left
+ KeyMetaUp string `json:"_kmcu1,omitempty"` // meta-up
+ KeyMetaDown string `json:"_kmcud1,omitempty"` // meta-left
+ KeyMetaRight string `json:"_kmcuf1,omitempty"` // meta-right
+ KeyMetaLeft string `json:"_kmcub1,omitempty"` // meta-left
+ KeyAltUp string `json:"_kacu1,omitempty"` // alt-up
+ KeyAltDown string `json:"_kacud1,omitempty"` // alt-left
+ KeyAltRight string `json:"_kacuf1,omitempty"` // alt-right
+ KeyAltLeft string `json:"_kacub1,omitempty"` // alt-left
+ KeyCtrlHome string `json:"_kchome,omitempty"`
+ KeyCtrlEnd string `json:"_kcend,omitempty"`
+ KeyMetaHome string `json:"_kmhome,omitempty"`
+ KeyMetaEnd string `json:"_kmend,omitempty"`
+ KeyAltHome string `json:"_kahome,omitempty"`
+ KeyAltEnd string `json:"_kaend,omitempty"`
+ KeyAltShfUp string `json:"_kascu1,omitempty"`
+ KeyAltShfDown string `json:"_kascud1,omitempty"`
+ KeyAltShfLeft string `json:"_kascub1,omitempty"`
+ KeyAltShfRight string `json:"_kascuf1,omitempty"`
+ KeyMetaShfUp string `json:"_kmscu1,omitempty"`
+ KeyMetaShfDown string `json:"_kmscud1,omitempty"`
+ KeyMetaShfLeft string `json:"_kmscub1,omitempty"`
+ KeyMetaShfRight string `json:"_kmscuf1,omitempty"`
+ KeyCtrlShfUp string `json:"_kcscu1,omitempty"`
+ KeyCtrlShfDown string `json:"_kcscud1,omitempty"`
+ KeyCtrlShfLeft string `json:"_kcscub1,omitempty"`
+ KeyCtrlShfRight string `json:"_kcscuf1,omitempty"`
+ KeyCtrlShfHome string `json:"_kcHOME,omitempty"`
+ KeyCtrlShfEnd string `json:"_kcEND,omitempty"`
+ KeyAltShfHome string `json:"_kaHOME,omitempty"`
+ KeyAltShfEnd string `json:"_kaEND,omitempty"`
+ KeyMetaShfHome string `json:"_kmHOME,omitempty"`
+ KeyMetaShfEnd string `json:"_kmEND,omitempty"`
+ KeyCtrlPgUp string
+ KeyCtrlPgDn string
+}
+
+type stackElem struct {
+ s string
+ i int
+ isStr bool
+ isInt bool
+}
+
+type stack []stackElem
+
+func (st stack) Push(v string) stack {
+ e := stackElem{
+ s: v,
+ isStr: true,
+ }
+ return append(st, e)
+}
+
+func (st stack) Pop() (string, stack) {
+ v := ""
+ if len(st) > 0 {
+ e := st[len(st)-1]
+ st = st[:len(st)-1]
+ if e.isStr {
+ v = e.s
+ } else {
+ v = strconv.Itoa(e.i)
+ }
+ }
+ return v, st
+}
+
+func (st stack) PopInt() (int, stack) {
+ if len(st) > 0 {
+ e := st[len(st)-1]
+ st = st[:len(st)-1]
+ if e.isInt {
+ return e.i, st
+ } else if e.isStr {
+ i, _ := strconv.Atoi(e.s)
+ return i, st
+ }
+ }
+ return 0, st
+}
+
+func (st stack) PopBool() (bool, stack) {
+ if len(st) > 0 {
+ e := st[len(st)-1]
+ st = st[:len(st)-1]
+ if e.isStr {
+ if e.s == "1" {
+ return true, st
+ }
+ return false, st
+ } else if e.i == 1 {
+ return true, st
+ } else {
+ return false, st
+ }
+ }
+ return false, st
+}
+
+func (st stack) PushInt(i int) stack {
+ e := stackElem{
+ i: i,
+ isInt: true,
+ }
+ return append(st, e)
+}
+
+func (st stack) PushBool(i bool) stack {
+ if i {
+ return st.PushInt(1)
+ }
+ return st.PushInt(0)
+}
+
+func nextch(s string, index int) (byte, int) {
+ if index < len(s) {
+ return s[index], index + 1
+ }
+ return 0, index
+}
+
+// static vars
+var svars [26]string
+
+// paramsBuffer handles some persistent state for TParam. Technically we
+// could probably dispense with this, but caching buffer arrays gives us
+// a nice little performance boost. Furthermore, we know that TParam is
+// rarely (never?) called re-entrantly, so we can just reuse the same
+// buffers, making it thread-safe by stashing a lock.
+type paramsBuffer struct {
+ out bytes.Buffer
+ buf bytes.Buffer
+ lk sync.Mutex
+}
+
+// Start initializes the params buffer with the initial string data.
+// It also locks the paramsBuffer. The caller must call End() when
+// finished.
+func (pb *paramsBuffer) Start(s string) {
+ pb.lk.Lock()
+ pb.out.Reset()
+ pb.buf.Reset()
+ pb.buf.WriteString(s)
+}
+
+// End returns the final output from TParam, but it also releases the lock.
+func (pb *paramsBuffer) End() string {
+ s := pb.out.String()
+ pb.lk.Unlock()
+ return s
+}
+
+// NextCh returns the next input character to the expander.
+func (pb *paramsBuffer) NextCh() (byte, error) {
+ return pb.buf.ReadByte()
+}
+
+// PutCh "emits" (rather schedules for output) a single byte character.
+func (pb *paramsBuffer) PutCh(ch byte) {
+ pb.out.WriteByte(ch)
+}
+
+// PutString schedules a string for output.
+func (pb *paramsBuffer) PutString(s string) {
+ pb.out.WriteString(s)
+}
+
+var pb = &paramsBuffer{}
+
+// TParm takes a terminfo parameterized string, such as setaf or cup, and
+// evaluates the string, and returns the result with the parameter
+// applied.
+func (t *Terminfo) TParm(s string, p ...int) string {
+ var stk stack
+ var a, b string
+ var ai, bi int
+ var ab bool
+ var dvars [26]string
+ var params [9]int
+
+ pb.Start(s)
+
+ // make sure we always have 9 parameters -- makes it easier
+ // later to skip checks
+ for i := 0; i < len(params) && i < len(p); i++ {
+ params[i] = p[i]
+ }
+
+ nest := 0
+
+ for {
+
+ ch, err := pb.NextCh()
+ if err != nil {
+ break
+ }
+
+ if ch != '%' {
+ pb.PutCh(ch)
+ continue
+ }
+
+ ch, err = pb.NextCh()
+ if err != nil {
+ // XXX Error
+ break
+ }
+
+ switch ch {
+ case '%': // quoted %
+ pb.PutCh(ch)
+
+ case 'i': // increment both parameters (ANSI cup support)
+ params[0]++
+ params[1]++
+
+ case 'c', 's':
+ // NB: these, and 'd' below are special cased for
+ // efficiency. They could be handled by the richer
+ // format support below, less efficiently.
+ a, stk = stk.Pop()
+ pb.PutString(a)
+
+ case 'd':
+ ai, stk = stk.PopInt()
+ pb.PutString(strconv.Itoa(ai))
+
+ case '0', '1', '2', '3', '4', 'x', 'X', 'o', ':':
+ // This is pretty suboptimal, but this is rarely used.
+ // None of the mainstream terminals use any of this,
+ // and it would surprise me if this code is ever
+ // executed outside of test cases.
+ f := "%"
+ if ch == ':' {
+ ch, _ = pb.NextCh()
+ }
+ f += string(ch)
+ for ch == '+' || ch == '-' || ch == '#' || ch == ' ' {
+ ch, _ = pb.NextCh()
+ f += string(ch)
+ }
+ for (ch >= '0' && ch <= '9') || ch == '.' {
+ ch, _ = pb.NextCh()
+ f += string(ch)
+ }
+ switch ch {
+ case 'd', 'x', 'X', 'o':
+ ai, stk = stk.PopInt()
+ pb.PutString(fmt.Sprintf(f, ai))
+ case 'c', 's':
+ a, stk = stk.Pop()
+ pb.PutString(fmt.Sprintf(f, a))
+ }
+
+ case 'p': // push parameter
+ ch, _ = pb.NextCh()
+ ai = int(ch - '1')
+ if ai >= 0 && ai < len(params) {
+ stk = stk.PushInt(params[ai])
+ } else {
+ stk = stk.PushInt(0)
+ }
+
+ case 'P': // pop & store variable
+ ch, _ = pb.NextCh()
+ if ch >= 'A' && ch <= 'Z' {
+ svars[int(ch-'A')], stk = stk.Pop()
+ } else if ch >= 'a' && ch <= 'z' {
+ dvars[int(ch-'a')], stk = stk.Pop()
+ }
+
+ case 'g': // recall & push variable
+ ch, _ = pb.NextCh()
+ if ch >= 'A' && ch <= 'Z' {
+ stk = stk.Push(svars[int(ch-'A')])
+ } else if ch >= 'a' && ch <= 'z' {
+ stk = stk.Push(dvars[int(ch-'a')])
+ }
+
+ case '\'': // push(char)
+ ch, _ = pb.NextCh()
+ pb.NextCh() // must be ' but we don't check
+ stk = stk.Push(string(ch))
+
+ case '{': // push(int)
+ ai = 0
+ ch, _ = pb.NextCh()
+ for ch >= '0' && ch <= '9' {
+ ai *= 10
+ ai += int(ch - '0')
+ ch, _ = pb.NextCh()
+ }
+ // ch must be '}' but no verification
+ stk = stk.PushInt(ai)
+
+ case 'l': // push(strlen(pop))
+ a, stk = stk.Pop()
+ stk = stk.PushInt(len(a))
+
+ case '+':
+ bi, stk = stk.PopInt()
+ ai, stk = stk.PopInt()
+ stk = stk.PushInt(ai + bi)
+
+ case '-':
+ bi, stk = stk.PopInt()
+ ai, stk = stk.PopInt()
+ stk = stk.PushInt(ai - bi)
+
+ case '*':
+ bi, stk = stk.PopInt()
+ ai, stk = stk.PopInt()
+ stk = stk.PushInt(ai * bi)
+
+ case '/':
+ bi, stk = stk.PopInt()
+ ai, stk = stk.PopInt()
+ if bi != 0 {
+ stk = stk.PushInt(ai / bi)
+ } else {
+ stk = stk.PushInt(0)
+ }
+
+ case 'm': // push(pop mod pop)
+ bi, stk = stk.PopInt()
+ ai, stk = stk.PopInt()
+ if bi != 0 {
+ stk = stk.PushInt(ai % bi)
+ } else {
+ stk = stk.PushInt(0)
+ }
+
+ case '&': // AND
+ bi, stk = stk.PopInt()
+ ai, stk = stk.PopInt()
+ stk = stk.PushInt(ai & bi)
+
+ case '|': // OR
+ bi, stk = stk.PopInt()
+ ai, stk = stk.PopInt()
+ stk = stk.PushInt(ai | bi)
+
+ case '^': // XOR
+ bi, stk = stk.PopInt()
+ ai, stk = stk.PopInt()
+ stk = stk.PushInt(ai ^ bi)
+
+ case '~': // bit complement
+ ai, stk = stk.PopInt()
+ stk = stk.PushInt(ai ^ -1)
+
+ case '!': // logical NOT
+ ai, stk = stk.PopInt()
+ stk = stk.PushBool(ai != 0)
+
+ case '=': // numeric compare or string compare
+ b, stk = stk.Pop()
+ a, stk = stk.Pop()
+ stk = stk.PushBool(a == b)
+
+ case '>': // greater than, numeric
+ bi, stk = stk.PopInt()
+ ai, stk = stk.PopInt()
+ stk = stk.PushBool(ai > bi)
+
+ case '<': // less than, numeric
+ bi, stk = stk.PopInt()
+ ai, stk = stk.PopInt()
+ stk = stk.PushBool(ai < bi)
+
+ case '?': // start conditional
+
+ case 't':
+ ab, stk = stk.PopBool()
+ if ab {
+ // just keep going
+ break
+ }
+ nest = 0
+ ifloop:
+ // this loop consumes everything until we hit our else,
+ // or the end of the conditional
+ for {
+ ch, err = pb.NextCh()
+ if err != nil {
+ break
+ }
+ if ch != '%' {
+ continue
+ }
+ ch, _ = pb.NextCh()
+ switch ch {
+ case ';':
+ if nest == 0 {
+ break ifloop
+ }
+ nest--
+ case '?':
+ nest++
+ case 'e':
+ if nest == 0 {
+ break ifloop
+ }
+ }
+ }
+
+ case 'e':
+ // if we got here, it means we didn't use the else
+ // in the 't' case above, and we should skip until
+ // the end of the conditional
+ nest = 0
+ elloop:
+ for {
+ ch, err = pb.NextCh()
+ if err != nil {
+ break
+ }
+ if ch != '%' {
+ continue
+ }
+ ch, _ = pb.NextCh()
+ switch ch {
+ case ';':
+ if nest == 0 {
+ break elloop
+ }
+ nest--
+ case '?':
+ nest++
+ }
+ }
+
+ case ';': // endif
+
+ }
+ }
+
+ return pb.End()
+}
+
+// TPuts emits the string to the writer, but expands inline padding
+// indications (of the form $<[delay]> where [delay] is msec) to
+// a suitable number of padding characters (usually null bytes) based
+// upon the supplied baud. At high baud rates, more padding characters
+// will be inserted. All Terminfo based strings should be emitted using
+// this function.
+func (t *Terminfo) TPuts(w io.Writer, s string, baud int) {
+ for {
+ beg := strings.Index(s, "$<")
+ if beg < 0 {
+ // Most strings don't need padding, which is good news!
+ io.WriteString(w, s)
+ return
+ }
+ io.WriteString(w, s[:beg])
+ s = s[beg+2:]
+ end := strings.Index(s, ">")
+ if end < 0 {
+ // unterminated.. just emit bytes unadulterated
+ io.WriteString(w, "$<"+s)
+ return
+ }
+ val := s[:end]
+ s = s[end+1:]
+ padus := 0
+ unit := 1000
+ dot := false
+ loop:
+ for i := range val {
+ switch val[i] {
+ case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9':
+ padus *= 10
+ padus += int(val[i] - '0')
+ if dot {
+ unit *= 10
+ }
+ case '.':
+ if !dot {
+ dot = true
+ } else {
+ break loop
+ }
+ default:
+ break loop
+ }
+ }
+ cnt := int(((baud / 8) * padus) / unit)
+ for cnt > 0 {
+ io.WriteString(w, t.PadChar)
+ cnt--
+ }
+ }
+}
+
+// TGoto returns a string suitable for addressing the cursor at the given
+// row and column. The origin 0, 0 is in the upper left corner of the screen.
+func (t *Terminfo) TGoto(col, row int) string {
+ return t.TParm(t.SetCursor, row, col)
+}
+
+// TColor returns a string corresponding to the given foreground and background
+// colors. Either fg or bg can be set to -1 to elide.
+func (t *Terminfo) TColor(fi, bi int) string {
+ rv := ""
+ // As a special case, we map bright colors to lower versions if the
+ // color table only holds 8. For the remaining 240 colors, the user
+ // is out of luck. Someday we could create a mapping table, but its
+ // not worth it.
+ if t.Colors == 8 {
+ if fi > 7 && fi < 16 {
+ fi -= 8
+ }
+ if bi > 7 && bi < 16 {
+ bi -= 8
+ }
+ }
+ if t.Colors > fi && fi >= 0 {
+ rv += t.TParm(t.SetFg, fi)
+ }
+ if t.Colors > bi && bi >= 0 {
+ rv += t.TParm(t.SetBg, bi)
+ }
+ return rv
+}
+
+var (
+ dblock sync.Mutex
+ terminfos = make(map[string]*Terminfo)
+ aliases = make(map[string]string)
+)
+
+// AddTerminfo can be called to register a new Terminfo entry.
+func AddTerminfo(t *Terminfo) {
+ dblock.Lock()
+ terminfos[t.Name] = t
+ for _, x := range t.Aliases {
+ terminfos[x] = t
+ }
+ dblock.Unlock()
+}
+
+func loadFromFile(fname string, term string) (*Terminfo, error) {
+ var e error
+ var f io.Reader
+ if f, e = os.Open(fname); e != nil {
+ return nil, e
+ }
+ if strings.HasSuffix(fname, ".gz") {
+ if f, e = gzip.NewReader(f); e != nil {
+ return nil, e
+ }
+ }
+ d := json.NewDecoder(f)
+ for {
+ t := &Terminfo{}
+ if e := d.Decode(t); e != nil {
+ if e == io.EOF {
+ return nil, ErrTermNotFound
+ }
+ return nil, e
+ }
+ if t.SetCursor == "" {
+ // This must be an alias record, return it.
+ return t, nil
+ }
+ if t.Name == term {
+ return t, nil
+ }
+ for _, a := range t.Aliases {
+ if a == term {
+ return t, nil
+ }
+ }
+ }
+}
+
+// LookupTerminfo attempts to find a definition for the named $TERM.
+// It first looks in the builtin database, which should cover just about
+// everyone. If it can't find one there, then it will attempt to read
+// one from the JSON file located in either $TCELLDB, $HOME/.tcelldb
+// or in this package's source directory as database.json).
+func LookupTerminfo(name string) (*Terminfo, error) {
+ if name == "" {
+ // else on windows: index out of bounds
+ // on the name[0] reference below
+ return nil, ErrTermNotFound
+ }
+
+ dblock.Lock()
+ t := terminfos[name]
+ dblock.Unlock()
+
+ if t == nil {
+
+ var files []string
+ letter := fmt.Sprintf("%02x", name[0])
+ gzfile := path.Join(letter, name+".gz")
+ jsfile := path.Join(letter, name)
+
+ // Build up the search path. Old versions of tcell used a
+ // single database file, whereas the new ones locate them
+ // in JSON (optionally compressed) files.
+ //
+ // The search path looks like:
+ //
+ // $TCELLDB/x/xterm.gz
+ // $TCELLDB/x/xterm
+ // $TCELLDB
+ // $HOME/.tcelldb/x/xterm.gz
+ // $HOME/.tcelldb/x/xterm
+ // $HOME/.tcelldb
+ // $GOPATH/terminfo/database/x/xterm.gz
+ // $GOPATH/terminfo/database/x/xterm
+ //
+ if pth := os.Getenv("TCELLDB"); pth != "" {
+ files = append(files, path.Join(pth, gzfile))
+ files = append(files, path.Join(pth, jsfile))
+ files = append(files, pth)
+ }
+ if pth := os.Getenv("HOME"); pth != "" {
+ pth = path.Join(pth, ".tcelldb")
+ files = append(files, path.Join(pth, gzfile))
+ files = append(files, path.Join(pth, jsfile))
+ files = append(files, pth)
+ }
+
+ for _, pth := range strings.Split(os.Getenv("GOPATH"), string(os.PathListSeparator)) {
+ pth = path.Join(pth, "src", "github.com", "gdamore", "tcell", "terminfo", "database")
+ files = append(files, path.Join(pth, gzfile))
+ files = append(files, path.Join(pth, jsfile))
+ }
+
+ for _, fname := range files {
+ t, _ = loadFromFile(fname, name)
+ if t != nil {
+ break
+ }
+ }
+ if t != nil {
+ if t.Name != name {
+ // Check for a database loop (no infinite
+ // recursion).
+ dblock.Lock()
+ if aliases[name] != "" {
+ dblock.Unlock()
+ return nil, ErrTermNotFound
+ }
+ aliases[name] = t.Name
+ dblock.Unlock()
+ return LookupTerminfo(t.Name)
+ }
+ dblock.Lock()
+ terminfos[name] = t
+ dblock.Unlock()
+ }
+ }
+ if t == nil {
+ return nil, ErrTermNotFound
+ }
+ return t, nil
+}