SVI fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
..
terminfo fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
.appveyor.yml fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
.gitignore fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
.travis.yml fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
AUTHORS fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
CHANGESv2.md fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
LICENSE fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
README-wasm.md fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
README.md fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
TUTORIAL.md fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
UKRAINE.md fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
attr.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
cell.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
charset_stub.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
charset_unix.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
charset_windows.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
color.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
colorfit.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
console_stub.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
console_win.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
doc.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
encoding.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
errors.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
event.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
interrupt.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
key.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
mouse.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
nonblock_bsd.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
nonblock_unix.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
paste.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
resize.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
runes.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
screen.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
simulation.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
stdin_unix.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
style.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
terms_default.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
terms_dynamic.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
terms_static.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
tscreen.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
tscreen_stub.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
tscreen_unix.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
tty.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
tty_unix.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás
wscreen.go fc8ab952b5 d01 Удаление ошмётков графики há 3 anos atrás

README-wasm.md

WASM for Tcell

You can build Tcell project into a webpage by compiling it slightly differently. This will result in a Tcell project you can embed into another html page, or use as a standalone page.

Building your project

WASM needs special build flags in order to work. You can build it by executing

GOOS=js GOARCH=wasm go build -o yourfile.wasm

Additional files

You also need 5 other files in the same directory as the wasm. Four (tcell.html, tcell.js, termstyle.css, and beep.wav) are provided in the webfiles directory. The last one, wasm_exec.js, can be copied from GOROOT into the current directory by executing

cp "$(go env GOROOT)/misc/wasm/wasm_exec.js" ./

In tcell.js, you also need to change the constant

const wasmFilePath = "yourfile.wasm"

to the file you outputed to when building.

Displaying your project

Standalone

You can see the project (with an white background around the terminal) by serving the directory. You can do this using any framework, including another golang project:

// server.go

package main

import (
	"log"
	"net/http"
)

func main() {
	log.Fatal(http.ListenAndServe(":8080",
		http.FileServer(http.Dir("/path/to/dir/to/serve")),
	))
}

To see the webpage with this example, you can type in localhost:8080/tcell.html into your browser while server.go is running.

Embedding

It is recomended to use an iframe if you want to embed the app into a webpage:

<iframe src="tcell.html" title="Tcell app"></iframe>

Other considerations

Accessing files

io.Open(filename) and other related functions for reading file systems do not work; use http.Get(filename) instead.