diff --git a/_demos/editbox.go b/_demos/editbox.go
index <HASH>..<HASH> 100644
--- a/_demos/editbox.go
+++ b/_demos/editbox.go
@@ -2,13 +2,14 @@ package main
 
 import (
 	"github.com/nsf/termbox-go"
+	"github.com/mattn/go-runewidth"
 	"unicode/utf8"
 )
 
 func tbprint(x, y int, fg, bg termbox.Attribute, msg string) {
 	for _, c := range msg {
 		termbox.SetCell(x, y, c, fg, bg)
-		x++
+		x += runewidth.RuneWidth(c)
 	}
 }
fix tbprint for multi-width characters