|
7 | 7 | font-family: arial; |
8 | 8 | } |
9 | 9 | </style> |
10 | | - <link rel="stylesheet" href="https://unpkg.com/xterm@3.6.0/dist/xterm.css" /> |
| 10 | + <link rel="stylesheet" href="https://unpkg.com/xterm@4.11.0/css/xterm.css" /> |
11 | 11 | </head> |
12 | 12 | <body> |
13 | 13 |
|
|
20 | 20 | built by <a href="https://grassfedcode.com">Chad Smith</a> <a href="https://github.com/cs01">GitHub</a> |
21 | 21 | </p> |
22 | 22 | <!-- xterm --> |
23 | | -<script src="https://unpkg.com/xterm@3.6.0/dist/xterm.js"></script> |
24 | | -<script src="https://unpkg.com/xterm@3.6.0/dist/addons/fit/fit.js"></script> |
25 | | -<script src="https://unpkg.com/xterm@3.6.0/dist/addons/webLinks/webLinks.js"></script> |
26 | | -<script src="https://unpkg.com/xterm@3.6.0/dist/addons/fullscreen/fullscreen.js"></script> |
27 | | -<script src="https://unpkg.com/[email protected]/dist/addons/search/search.js" ></script> |
28 | | -<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.1.1/socket.io.js"></script> |
| 23 | +<script src="https://unpkg.com/xterm@4.11.0/lib/xterm.js"></script> |
| 24 | +<script src=" https://unpkg.com/xterm[email protected].0/lib/xterm-addon-fit.js" ></script> |
| 25 | +<script src=" https://unpkg.com/xterm[email protected].0/lib/xterm-addon-web-links.js" ></script> |
| 26 | +<script src=" https://unpkg.com/xterm[email protected].0/lib/xterm-addon-sear |
| 27 | +ch.js"></script> |
| 28 | +<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.0.1/socket.io.min.js"></script> |
29 | 29 |
|
30 | 30 | <script> |
31 | | - Terminal.applyAddon(fullscreen) |
32 | | - Terminal.applyAddon(fit) |
33 | | - Terminal.applyAddon(webLinks) |
34 | | - Terminal.applyAddon(search) |
35 | 31 | const term = new Terminal({ |
36 | 32 | cursorBlink: true, |
37 | 33 | macOptionIsMeta: true, |
38 | 34 | scrollback: true, |
39 | 35 | }); |
| 36 | + // https://github.com/xtermjs/xterm.js/issues/2941 |
| 37 | + const fit = new FitAddon.FitAddon(); |
| 38 | + term.loadAddon(fit); |
| 39 | + term.loadAddon(new WebLinksAddon.WebLinksAddon()); |
| 40 | + term.loadAddon(new SearchAddon.SearchAddon()); |
| 41 | + |
40 | 42 | term.open(document.getElementById('terminal')); |
41 | | - term.fit() |
| 43 | + fit.fit() |
42 | 44 | term.resize(15, 50) |
43 | 45 | console.log(`size: ${term.cols} columns, ${term.rows} rows`) |
44 | | - // term.toggleFullScreen(true) |
45 | | - term.fit() |
| 46 | + fit.fit() |
46 | 47 | term.write("Welcome to pyxterm.js!\nhttps://github.com/cs01/pyxterm.js\n") |
47 | | - term.on('key', (key, ev) => { |
| 48 | + term.onKey((key, ev) => { |
48 | 49 | console.log("pressed key", key) |
49 | 50 | console.log("event", ev) |
50 | 51 | socket.emit("pty-input", {"input": key}) |
|
69 | 70 | }) |
70 | 71 |
|
71 | 72 | function fitToscreen(){ |
72 | | - term.fit() |
| 73 | + fit.fit() |
73 | 74 | socket.emit("resize", {"cols": term.cols, "rows": term.rows}) |
74 | 75 | } |
75 | 76 |
|
|
0 commit comments