aboutsummaryrefslogtreecommitdiff
path: root/vendor/maunium.net/go/tcell/terminfo
diff options
context:
space:
mode:
authorTulir Asokan <tulir@maunium.net>2018-05-25 22:44:12 +0300
committerTulir Asokan <tulir@maunium.net>2018-05-25 22:44:12 +0300
commit7b8229dab12ddfe34b91a6eccce7744db17d398a (patch)
treeb569a2c085e2cbaab1975497500a1dd9001e7ba8 /vendor/maunium.net/go/tcell/terminfo
parenta76ce88a30e8c09603350a88827cf24239e8e44a (diff)
Update dependencies
Diffstat (limited to 'vendor/maunium.net/go/tcell/terminfo')
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/README.md8
-rwxr-xr-xvendor/maunium.net/go/tcell/terminfo/mkdatabase.sh189
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/mkinfo.go233
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/models.txt2
-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_aixterm.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_aterm.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_eterm.go26
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_gnome.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_gnome_256color.go4
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_hpterm.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_konsole.go251
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_konsole_256color.go251
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_kterm.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_linux.go4
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_rxvt.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_rxvt_256color.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode_256color.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_screen.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_screen_256color.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_st.go9
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_st_256color.go7
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_sun.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_sun_color.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_vt320.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_xfce.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_xnuppc.go2
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_xterm.go6
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/term_xterm_256color.go6
-rw-r--r--vendor/maunium.net/go/tcell/terminfo/terminfo.go77
32 files changed, 604 insertions, 716 deletions
diff --git a/vendor/maunium.net/go/tcell/terminfo/README.md b/vendor/maunium.net/go/tcell/terminfo/README.md
new file mode 100644
index 0000000..b333701
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/README.md
@@ -0,0 +1,8 @@
+To run the database:
+
+./mkinfo -all
+
+You can also generate a single entry:
+
+./mkinfo -db <term>
+
diff --git a/vendor/maunium.net/go/tcell/terminfo/mkdatabase.sh b/vendor/maunium.net/go/tcell/terminfo/mkdatabase.sh
deleted file mode 100755
index fd968bd..0000000
--- a/vendor/maunium.net/go/tcell/terminfo/mkdatabase.sh
+++ /dev/null
@@ -1,189 +0,0 @@
-#!/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
index 0040e6c..9e4b710 100644
--- a/vendor/maunium.net/go/tcell/terminfo/mkinfo.go
+++ b/vendor/maunium.net/go/tcell/terminfo/mkinfo.go
@@ -1,6 +1,6 @@
// +build ignore
-// Copyright 2017 The TCell Authors
+// Copyright 2018 The TCell Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use file except in compliance with the License.
@@ -22,6 +22,8 @@
//
// mkinfo [-init] [-go file.go] [-json file.json] [-quiet] [-nofatal] [<term>...]
//
+// -all scan terminfo to determine database entries to use
+// -db generate database entries (database/*), implied for -all
// -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
@@ -31,8 +33,10 @@
package main
import (
+ "bufio"
"bytes"
"compress/gzip"
+ "crypto/sha1"
"encoding/json"
"errors"
"flag"
@@ -40,6 +44,7 @@ import (
"io"
"os"
"os/exec"
+ "path"
"regexp"
"strconv"
"strings"
@@ -74,6 +79,8 @@ const (
ESC
)
+var notaddressable = errors.New("terminal not cursor addressable")
+
func unescape(s string) string {
// Various escapes are in \x format. Control codes are
// encoded as ^M (carat followed by ASCII equivalent).
@@ -131,6 +138,25 @@ func unescape(s string) string {
return (buf.String())
}
+func getallterms() ([]string, error) {
+ out := []string{}
+ cmd := exec.Command("toe", "-a")
+ output := &bytes.Buffer{}
+ cmd.Stdout = output
+ err := cmd.Run()
+ if err != nil {
+ return nil, err
+ }
+ lines := strings.Split(output.String(), "\n")
+ for _, l := range lines {
+ fields := strings.Fields(l)
+ if len(fields) > 0 {
+ out = append(out, fields[0])
+ }
+ }
+ return out, nil
+}
+
func (tc *termcap) setupterm(name string) error {
cmd := exec.Command("infocmp", "-1", name)
output := &bytes.Buffer{}
@@ -183,7 +209,7 @@ func (tc *termcap) setupterm(name string) error {
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 {
+ if u, err := strconv.ParseUint(k[1], 0, 0); err != nil {
return (err)
} else {
tc.nums[k[0]] = int(u)
@@ -438,7 +464,7 @@ func getinfo(name string) (*terminfo.Terminfo, string, error) {
t.Colors = 0
}
if t.SetCursor == "" {
- return nil, "", errors.New("terminal not cursor addressable")
+ return nil, "", notaddressable
}
// For padding, we lookup the pad char. If that isn't present,
@@ -684,13 +710,135 @@ func dotGoInfo(w io.Writer, t *terminfo.Terminfo, desc string) {
fmt.Fprintln(w, "}")
}
+var packname = "terminfo"
+
+func dotGoFile(fname string, term *terminfo.Terminfo, desc string, makeDir bool) error {
+ w := os.Stdout
+ var e error
+ if fname != "-" && fname != "" {
+ if makeDir {
+ dname := path.Dir(fname)
+ _ = os.Mkdir(dname, 0777)
+ }
+ if w, e = os.Create(fname); e != nil {
+ return e
+ }
+ }
+ dotGoHeader(w, packname)
+ dotGoInfo(w, term, desc)
+ dotGoTrailer(w)
+ if w != os.Stdout {
+ w.Close()
+ }
+ cmd := exec.Command("go", "fmt", fname)
+ cmd.Run()
+ return nil
+}
+
+func dotGzFile(fname string, term *terminfo.Terminfo, makeDir bool) error {
+
+ var w io.WriteCloser = os.Stdout
+ var e error
+ if fname != "-" && fname != "" {
+ if makeDir {
+ dname := path.Dir(fname)
+ _ = os.Mkdir(dname, 0777)
+ }
+ if w, e = os.Create(fname); e != nil {
+ return e
+ }
+ }
+
+ w = gzip.NewWriter(w)
+
+ js, e := json.Marshal(term)
+ fmt.Fprintln(w, string(js))
+
+ if w != os.Stdout {
+ w.Close()
+ }
+ return nil
+}
+
+func jsonFile(fname string, term *terminfo.Terminfo, makeDir bool) error {
+ w := os.Stdout
+ var e error
+ if fname != "-" && fname != "" {
+ if makeDir {
+ dname := path.Dir(fname)
+ _ = os.Mkdir(dname, 0777)
+ }
+ if w, e = os.Create(fname); e != nil {
+ return e
+ }
+ }
+
+ js, e := json.Marshal(term)
+ fmt.Fprintln(w, string(js))
+
+ if w != os.Stdout {
+ w.Close()
+ }
+ return nil
+}
+
+func dumpDatabase(terms map[string]*terminfo.Terminfo, descs map[string]string) {
+
+ // Load models .text
+ mfile, e := os.Open("models.txt")
+ models := make(map[string]bool)
+ if e != nil {
+ fmt.Fprintf(os.Stderr, "Failed reading models.txt: %v", e)
+ }
+ scanner := bufio.NewScanner(mfile)
+ for scanner.Scan() {
+ models[scanner.Text()] = true
+ }
+
+ for name, t := range terms {
+
+ // If this is one of our builtin models, generate the GO file
+ if models[name] {
+ desc := descs[name]
+ safename := strings.Replace(name, "-", "_", -1)
+ goname := fmt.Sprintf("term_%s.go", safename)
+ e = dotGoFile(goname, t, desc, true)
+ if e != nil {
+ fmt.Fprintf(os.Stderr, "Failed creating %s: %v", goname, e)
+ os.Exit(1)
+ }
+ continue
+ }
+
+ hash := fmt.Sprintf("%x", sha1.Sum([]byte(name)))
+ fname := fmt.Sprintf("%s.gz", hash[0:8])
+ fname = path.Join("database", hash[0:2], fname)
+ e = dotGzFile(fname, t, true)
+ if e != nil {
+ fmt.Fprintf(os.Stderr, "Failed creating %s: %v", fname, e)
+ os.Exit(1)
+ }
+
+ for _, a := range t.Aliases {
+ hash = fmt.Sprintf("%x", sha1.Sum([]byte(a)))
+ fname = path.Join("database", hash[0:2], hash[0:8])
+ e = jsonFile(fname, &terminfo.Terminfo{Name: t.Name}, true)
+ if e != nil {
+ fmt.Fprintf(os.Stderr, "Failed creating %s: %v", fname, e)
+ os.Exit(1)
+ }
+ }
+ }
+}
+
func main() {
gofile := ""
jsonfile := ""
- packname := "terminfo"
nofatal := false
quiet := false
dogzip := false
+ all := false
+ db := false
flag.StringVar(&gofile, "go", "", "generate go source in named file")
flag.StringVar(&jsonfile, "json", "", "generate json in named file")
@@ -698,11 +846,21 @@ func main() {
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.BoolVar(&all, "all", false, "load all terminals from terminfo")
+ flag.BoolVar(&db, "db", false, "generate json db file in place")
flag.Parse()
var e error
- js := []byte{}
args := flag.Args()
+ if all {
+ db = true // implied
+ allterms, e := getallterms()
+ if e != nil {
+ fmt.Fprintf(os.Stderr, "Failed: %v", e)
+ os.Exit(1)
+ }
+ args = append(args, allterms...)
+ }
if len(args) == 0 {
args = []string{os.Getenv("TERM")}
}
@@ -712,6 +870,9 @@ func main() {
for _, term := range args {
if t, desc, e := getinfo(term); e != nil {
+ if all && e == notaddressable {
+ continue
+ }
if !quiet {
fmt.Fprintf(os.Stderr,
"Failed loading %s: %v\n", term, e)
@@ -729,53 +890,33 @@ func main() {
// 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)
+
+ if db {
+ dumpDatabase(tdata, descs)
+ } else if gofile != "" {
for term, t := range tdata {
if t.Name == term {
- dotGoInfo(w, t, descs[term])
+ e = dotGoFile(gofile, t, descs[term], false)
+ if e != nil {
+ fmt.Fprintf(os.Stderr, "Failed %s: %v", gofile, e)
+ os.Exit(1)
+ }
}
}
- 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))
+ for _, t := range tdata {
+ if dogzip {
+ if e = dotGzFile(jsonfile, t, false); e != nil {
+ fmt.Fprintf(os.Stderr, "Failed %s: %v", gofile, e)
+ os.Exit(1)
+ }
+ } else {
+ if e = jsonFile(jsonfile, t, false); e != nil {
+ fmt.Fprintf(os.Stderr, "Failed %s: %v", gofile, e)
+ os.Exit(1)
+ }
}
- // 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
index ac0676d..718eb9b 100644
--- a/vendor/maunium.net/go/tcell/terminfo/models.txt
+++ b/vendor/maunium.net/go/tcell/terminfo/models.txt
@@ -8,8 +8,6 @@ cygwin
d200
d210
dtterm
-Eterm
-Eterm-256color
eterm
gnome
gnome-256color
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_Eterm.go b/vendor/maunium.net/go/tcell/terminfo/term_Eterm.go
deleted file mode 100644
index 30d5af3..0000000
--- a/vendor/maunium.net/go/tcell/terminfo/term_Eterm.go
+++ /dev/null
@@ -1,108 +0,0 @@
-// 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
deleted file mode 100644
index 773b6c1..0000000
--- a/vendor/maunium.net/go/tcell/terminfo/term_Eterm_256color.go
+++ /dev/null
@@ -1,107 +0,0 @@
-// 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_aixterm.go b/vendor/maunium.net/go/tcell/terminfo/term_aixterm.go
index 9dc5f29..f8ec2d9 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_aixterm.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_aixterm.go
@@ -22,6 +22,8 @@ func init() {
SetFgBg: "\x1b[3%p1%d;4%p2%dm",
PadChar: "\x00",
AltChars: "jjkkllmmnnqqttuuvvwwxx",
+ EnterAcs: "\x1b(0",
+ ExitAcs: "\x1b(B",
SetCursor: "\x1b[%i%p1%d;%p2%dH",
CursorBack1: "\b",
CursorUp1: "\x1b[A",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_aterm.go b/vendor/maunium.net/go/tcell/terminfo/term_aterm.go
index a8d2f99..aef93f5 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_aterm.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_aterm.go
@@ -43,7 +43,7 @@ func init() {
KeyLeft: "\x1b[D",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1b[7~",
KeyEnd: "\x1b[8~",
KeyPgUp: "\x1b[5~",
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..c568a47
--- /dev/null
+++ b/vendor/maunium.net/go/tcell/terminfo/term_eterm.go
@@ -0,0 +1,26 @@
+// Generated automatically. DO NOT HAND-EDIT.
+
+package terminfo
+
+func init() {
+ // gnu emacs term.el terminal emulation
+ AddTerminfo(&Terminfo{
+ Name: "eterm",
+ Columns: 80,
+ Lines: 24,
+ Bell: "\a",
+ Clear: "\x1b[H\x1b[J",
+ EnterCA: "\x1b7\x1b[?47h",
+ ExitCA: "\x1b[2J\x1b[?47l\x1b8",
+ AttrOff: "\x1b[m",
+ Underline: "\x1b[4m",
+ Bold: "\x1b[1m",
+ Italic: "\x1b[3m",
+ Strikethrough: "\x1b[9m",
+ Reverse: "\x1b[7m",
+ PadChar: "\x00",
+ SetCursor: "\x1b[%i%p1%d;%p2%dH",
+ CursorBack1: "\b",
+ CursorUp1: "\x1b[A",
+ })
+}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_gnome.go b/vendor/maunium.net/go/tcell/terminfo/term_gnome.go
index 84c0957..aab921e 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_gnome.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_gnome.go
@@ -43,7 +43,7 @@ func init() {
KeyLeft: "\x1bOD",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1bOH",
KeyEnd: "\x1bOF",
KeyPgUp: "\x1b[5~",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_gnome_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_gnome_256color.go
index cc504c3..cabcd93 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_gnome_256color.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_gnome_256color.go
@@ -32,7 +32,7 @@ func init() {
EnterAcs: "\x0e",
ExitAcs: "\x0f",
EnableAcs: "\x1b)0",
- Mouse: "\x1b[M",
+ Mouse: "\x1b[<",
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",
@@ -43,7 +43,7 @@ func init() {
KeyLeft: "\x1bOD",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1bOH",
KeyEnd: "\x1bOF",
KeyPgUp: "\x1b[5~",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_hpterm.go b/vendor/maunium.net/go/tcell/terminfo/term_hpterm.go
index b5e0c6e..3e93a2f 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_hpterm.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_hpterm.go
@@ -11,7 +11,7 @@ func init() {
Lines: 24,
Bell: "\a",
Clear: "\x1b&a0y0C\x1bJ",
- AttrOff: "\x1b&d@",
+ AttrOff: "\x1b&d@\x0f",
Underline: "\x1b&dD",
Bold: "\x1b&dB",
Italic: "\x1b[3m",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_konsole.go b/vendor/maunium.net/go/tcell/terminfo/term_konsole.go
index e545f4d..52fcf1f 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_konsole.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_konsole.go
@@ -5,110 +5,151 @@ 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",
+ 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",
+ 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: "\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: "\xff",
+ 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",
+ 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_konsole_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_konsole_256color.go
index fb4e317..3f6def0 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_konsole_256color.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_konsole_256color.go
@@ -5,110 +5,151 @@ 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",
+ 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",
+ 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: "\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: "\xff",
+ 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",
+ 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_kterm.go b/vendor/maunium.net/go/tcell/terminfo/term_kterm.go
index a1c6f3a..cb2c23d 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_kterm.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_kterm.go
@@ -39,7 +39,7 @@ func init() {
KeyLeft: "\x1bOD",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\b",
+ KeyBackspace: "\xff",
KeyPgUp: "\x1b[5~",
KeyPgDn: "\x1b[6~",
KeyF1: "\x1b[11~",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_linux.go b/vendor/maunium.net/go/tcell/terminfo/term_linux.go
index 755e235..65b3842 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_linux.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_linux.go
@@ -26,7 +26,7 @@ func init() {
AltChars: "++,,--..00__``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}c~~",
EnterAcs: "\x0e",
ExitAcs: "\x0f",
- EnableAcs: "\x1b(B\x1b)0",
+ 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",
@@ -38,7 +38,7 @@ func init() {
KeyLeft: "\x1b[D",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1b[1~",
KeyEnd: "\x1b[4~",
KeyPgUp: "\x1b[5~",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_rxvt.go b/vendor/maunium.net/go/tcell/terminfo/term_rxvt.go
index 0a63bb2..1f33314 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_rxvt.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_rxvt.go
@@ -43,7 +43,7 @@ func init() {
KeyLeft: "\x1b[D",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1b[7~",
KeyEnd: "\x1b[8~",
KeyPgUp: "\x1b[5~",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_rxvt_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_rxvt_256color.go
index 50a8b80..dd89a17 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_rxvt_256color.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_rxvt_256color.go
@@ -43,7 +43,7 @@ func init() {
KeyLeft: "\x1b[D",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1b[7~",
KeyEnd: "\x1b[8~",
KeyPgUp: "\x1b[5~",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode.go b/vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode.go
index ab65632..afc933a 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode.go
@@ -41,7 +41,7 @@ func init() {
KeyLeft: "\x1b[D",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1b[7~",
KeyEnd: "\x1b[8~",
KeyPgUp: "\x1b[5~",
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
index e019f6a..70ee364 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode_256color.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_rxvt_unicode_256color.go
@@ -41,7 +41,7 @@ func init() {
KeyLeft: "\x1b[D",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1b[7~",
KeyEnd: "\x1b[8~",
KeyPgUp: "\x1b[5~",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_screen.go b/vendor/maunium.net/go/tcell/terminfo/term_screen.go
index e7e6414..09ede53 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_screen.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_screen.go
@@ -44,7 +44,7 @@ func init() {
KeyLeft: "\x1bOD",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1b[1~",
KeyEnd: "\x1b[4~",
KeyPgUp: "\x1b[5~",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_screen_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_screen_256color.go
index 9a8da8b..409bec5 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_screen_256color.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_screen_256color.go
@@ -44,7 +44,7 @@ func init() {
KeyLeft: "\x1bOD",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1b[1~",
KeyEnd: "\x1b[4~",
KeyPgUp: "\x1b[5~",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_st.go b/vendor/maunium.net/go/tcell/terminfo/term_st.go
index 67f557b..83e48e7 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_st.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_st.go
@@ -3,7 +3,7 @@
package terminfo
func init() {
- // simpleterm 0.4.1
+ // simpleterm
AddTerminfo(&Terminfo{
Name: "st",
Aliases: []string{"stterm"},
@@ -21,6 +21,7 @@ func init() {
Bold: "\x1b[1m",
Italic: "\x1b[3m",
Strikethrough: "\x1b[9m",
+ Dim: "\x1b[2m",
Blink: "\x1b[5m",
Reverse: "\x1b[7m",
EnterKeypad: "\x1b[?1h\x1b=",
@@ -28,8 +29,7 @@ func init() {
SetFg: "\x1b[3%p1%dm",
SetBg: "\x1b[4%p1%dm",
SetFgBg: "\x1b[3%p1%d;4%p2%dm",
- PadChar: "\x00",
- AltChars: "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
+ AltChars: "+C,D-A.B0E``aaffgghFiGjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
EnterAcs: "\x1b(0",
ExitAcs: "\x1b(B",
EnableAcs: "\x1b)0",
@@ -44,7 +44,7 @@ func init() {
KeyLeft: "\x1bOD",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1b[1~",
KeyEnd: "\x1b[4~",
KeyPgUp: "\x1b[5~",
@@ -113,7 +113,6 @@ func init() {
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",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_st_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_st_256color.go
index 7eecbcb..8e3e8d6 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_st_256color.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_st_256color.go
@@ -21,6 +21,7 @@ func init() {
Bold: "\x1b[1m",
Italic: "\x1b[3m",
Strikethrough: "\x1b[9m",
+ Dim: "\x1b[2m",
Blink: "\x1b[5m",
Reverse: "\x1b[7m",
EnterKeypad: "\x1b[?1h\x1b=",
@@ -28,8 +29,7 @@ func init() {
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{{||}}~~",
+ AltChars: "+C,D-A.B0E``aaffgghFiGjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~",
EnterAcs: "\x1b(0",
ExitAcs: "\x1b(B",
EnableAcs: "\x1b)0",
@@ -44,7 +44,7 @@ func init() {
KeyLeft: "\x1bOD",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1b[1~",
KeyEnd: "\x1b[4~",
KeyPgUp: "\x1b[5~",
@@ -113,7 +113,6 @@ func init() {
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",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_sun.go b/vendor/maunium.net/go/tcell/terminfo/term_sun.go
index 5b0235b..706c57e 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_sun.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_sun.go
@@ -24,7 +24,7 @@ func init() {
KeyRight: "\x1b[C",
KeyLeft: "\x1b[D",
KeyInsert: "\x1b[247z",
- KeyDelete: "\u007f",
+ KeyDelete: "\xff",
KeyBackspace: "\b",
KeyHome: "\x1b[214z",
KeyEnd: "\x1b[220z",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_sun_color.go b/vendor/maunium.net/go/tcell/terminfo/term_sun_color.go
index 5d298b9..92c9375 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_sun_color.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_sun_color.go
@@ -28,7 +28,7 @@ func init() {
KeyRight: "\x1b[C",
KeyLeft: "\x1b[D",
KeyInsert: "\x1b[247z",
- KeyDelete: "\u007f",
+ KeyDelete: "\xff",
KeyBackspace: "\b",
KeyHome: "\x1b[214z",
KeyEnd: "\x1b[220z",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_vt320.go b/vendor/maunium.net/go/tcell/terminfo/term_vt320.go
index 4541bf0..b09b29f 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_vt320.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_vt320.go
@@ -35,7 +35,7 @@ func init() {
KeyLeft: "\x1bOD",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1b[1~",
KeyPgUp: "\x1b[5~",
KeyPgDn: "\x1b[6~",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_xfce.go b/vendor/maunium.net/go/tcell/terminfo/term_xfce.go
index 1a83727..a3862a4 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_xfce.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_xfce.go
@@ -42,7 +42,7 @@ func init() {
KeyLeft: "\x1bOD",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1bOH",
KeyEnd: "\x1bOF",
KeyPgUp: "\x1b[5~",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_xnuppc.go b/vendor/maunium.net/go/tcell/terminfo/term_xnuppc.go
index e2c0861..595ae2f 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_xnuppc.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_xnuppc.go
@@ -28,6 +28,6 @@ func init() {
KeyDown: "\x1bOB",
KeyRight: "\x1bOC",
KeyLeft: "\x1bOD",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
})
}
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_xterm.go b/vendor/maunium.net/go/tcell/terminfo/term_xterm.go
index aeb89ce..a2e42b2 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_xterm.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_xterm.go
@@ -12,8 +12,8 @@ func init() {
Colors: 8,
Bell: "\a",
Clear: "\x1b[H\x1b[2J",
- EnterCA: "\x1b[?1049h",
- ExitCA: "\x1b[?1049l",
+ EnterCA: "\x1b[?1049h\x1b[22;0;0t",
+ ExitCA: "\x1b[?1049l\x1b[23;0;0t",
ShowCursor: "\x1b[?12l\x1b[?25h",
HideCursor: "\x1b[?25l",
AttrOff: "\x1b(B\x1b[m",
@@ -43,7 +43,7 @@ func init() {
KeyLeft: "\x1bOD",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1bOH",
KeyEnd: "\x1bOF",
KeyPgUp: "\x1b[5~",
diff --git a/vendor/maunium.net/go/tcell/terminfo/term_xterm_256color.go b/vendor/maunium.net/go/tcell/terminfo/term_xterm_256color.go
index b5b498d..47024c1 100644
--- a/vendor/maunium.net/go/tcell/terminfo/term_xterm_256color.go
+++ b/vendor/maunium.net/go/tcell/terminfo/term_xterm_256color.go
@@ -11,8 +11,8 @@ func init() {
Colors: 256,
Bell: "\a",
Clear: "\x1b[H\x1b[2J",
- EnterCA: "\x1b[?1049h",
- ExitCA: "\x1b[?1049l",
+ EnterCA: "\x1b[?1049h\x1b[22;0;0t",
+ ExitCA: "\x1b[?1049l\x1b[23;0;0t",
ShowCursor: "\x1b[?12l\x1b[?25h",
HideCursor: "\x1b[?25l",
AttrOff: "\x1b(B\x1b[m",
@@ -42,7 +42,7 @@ func init() {
KeyLeft: "\x1bOD",
KeyInsert: "\x1b[2~",
KeyDelete: "\x1b[3~",
- KeyBackspace: "\u007f",
+ KeyBackspace: "\xff",
KeyHome: "\x1bOH",
KeyEnd: "\x1bOF",
KeyPgUp: "\x1b[5~",
diff --git a/vendor/maunium.net/go/tcell/terminfo/terminfo.go b/vendor/maunium.net/go/tcell/terminfo/terminfo.go
index 013d312..aa1654d 100644
--- a/vendor/maunium.net/go/tcell/terminfo/terminfo.go
+++ b/vendor/maunium.net/go/tcell/terminfo/terminfo.go
@@ -1,4 +1,4 @@
-// Copyright 2017 The TCell Authors
+// Copyright 2018 The TCell Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use file except in compliance with the License.
@@ -17,12 +17,14 @@ package terminfo
import (
"bytes"
"compress/gzip"
+ "crypto/sha1"
"encoding/json"
"errors"
"fmt"
"io"
"os"
"path"
+ "path/filepath"
"strconv"
"strings"
"sync"
@@ -757,8 +759,16 @@ func loadFromFile(fname string, term string) (*Terminfo, error) {
// 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).
+// one from the JSON file located in either $TCELLDB, $HOME/.tcelldb,
+// or as a database file.
+//
+// The database files are named by taking terminal name, hashing it through
+// sha1, and then a subdirectory of the form database/hash[0:2]/hash[0:8]
+// (with an optional .gz extension).
+//
+// For other local database files, we will look for the database file using
+// the terminal name, so database/term[0:2]/term[0:8], again with optional
+// .gz extension.
func LookupTerminfo(name string) (*Terminfo, error) {
if name == "" {
// else on windows: index out of bounds
@@ -776,38 +786,65 @@ func LookupTerminfo(name string) (*Terminfo, error) {
letter := fmt.Sprintf("%02x", name[0])
gzfile := path.Join(letter, name+".gz")
jsfile := path.Join(letter, name)
+ hash := fmt.Sprintf("%x", sha1.Sum([]byte(name)))
+ gzhfile := path.Join(hash[0:2], hash[0:8]+".gz")
+ jshfile := path.Join(hash[0:2], hash[0:8])
// 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:
+ // The search path for "xterm" (SHA1 sig e2e28a8e...) looks
+ // like this:
//
- // $TCELLDB/x/xterm.gz
- // $TCELLDB/x/xterm
+ // $TCELLDB/78/xterm.gz
+ // $TCELLDB/78/xterm
// $TCELLDB
- // $HOME/.tcelldb/x/xterm.gz
- // $HOME/.tcelldb/x/xterm
+ // $HOME/.tcelldb/e2/e2e28a8e.gz
+ // $HOME/.tcelldb/e2/e2e28a8e
+ // $HOME/.tcelldb/78/xterm.gz
+ // $HOME/.tcelldb/78/xterm
// $HOME/.tcelldb
- // $GOPATH/terminfo/database/x/xterm.gz
- // $GOPATH/terminfo/database/x/xterm
+ // $GOPATH/terminfo/database/e2/e2e28a8e.gz
+ // $GOPATH/terminfo/database/e2/e2e28a8e
+ // $GOPATH/terminfo/database/78/xterm.gz
+ // $GOPATH/terminfo/database/78/xterm
//
+ // Note that the legacy name lookups (78/xterm etc.) are
+ // provided for compatibility. We do not actually deliver
+ // any files with this style of naming, to avoid collisions
+ // on case insensitive filesystems. (*cough* mac *cough*).
+
+ // If $GOPATH set, honor it, else assume $HOME/go just like
+ // modern golang does.
+ gopath := os.Getenv("GOPATH")
+ if gopath == "" {
+ gopath = path.Join(os.Getenv("HOME"), "go")
+ }
if pth := os.Getenv("TCELLDB"); pth != "" {
- files = append(files, path.Join(pth, gzfile))
- files = append(files, path.Join(pth, jsfile))
- files = append(files, pth)
+ files = append(files,
+ path.Join(pth, gzfile),
+ path.Join(pth, jsfile),
+ 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)
+ files = append(files,
+ path.Join(pth, gzhfile),
+ path.Join(pth, jshfile),
+ path.Join(pth, gzfile),
+ path.Join(pth, jsfile),
+ 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 _, pth := range filepath.SplitList(gopath) {
+ pth = path.Join(pth, "src", "github.com",
+ "gdamore", "tcell", "terminfo", "database")
+ files = append(files,
+ path.Join(pth, gzhfile),
+ path.Join(pth, jshfile),
+ path.Join(pth, gzfile),
+ path.Join(pth, jsfile))
}
for _, fname := range files {