问题标签 [jquery-terminal]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
21 浏览

jquery-terminal - 在Mozilla中单击左右箭头时光标不可见

我正在使用 jquery 终端插件,我发现当我想编辑输入的命令时,光标是隐藏的,它在 Mozilla 中不可见,但正在插入文本。我错过了什么..?

0 投票
0 回答
26 浏览

jquery-terminal - 错误->“登录时无法注销()”

在使用 jquery 终端时,有时如果我尝试调用 logout() 时没有登录,它会向我抛出一个错误,例如“你在登录时无法注销”。对此有任何想法..?

0 投票
0 回答
46 浏览

javascript - 按下左箭头后,Jquery 终端光标隐藏在 FF 中

我正在使用 jquery 2.4.1 并添加一个终端窗口。在 Firefox 中,我遇到了一个问题,当我使用左箭头导航时,光标消失了。如果我按回车,它会重新出现。其他浏览器运行正常。

看到 jquery 2.4.1 中有一个错误(修复 FireFox 中的隐藏光标),并根据更改日志https://github.com/jcubic/jquery.terminal/blob/master/CHANGELOG.md在 2.5.0 中修复

我们可以得到一个补丁来修复吗?或者任何解决方法?

工作状态和非工作状态应用的css相同 class="cursor blink"

0 投票
0 回答
564 浏览

jquery - How to change jQuery terminal --char-width

I am using jQuery Terminal 2.4.1. In Chrome the Terminal allows the user to type characters only half of terminal width and it wraps. Firefox it works fine.

The only difference I am seeing is --char-width is 7 in FF and 12.7344 in Chrome. Is it calculating the line wrap width wrongly and getting truncated half?

If I set width like below, it wraps properly and occupying full window width

However then the vertical scroll bar is hidden.

How can I set --char-width in Chrome?

0 投票
1 回答
241 浏览

jquery-terminal - JQuery 终端:如何在不换行的情况下回显

是否可以在不引起换行符的情况下回显?例如,假设我想让三个点一个接一个出现一秒:

目前显示为:

但是我需要它显示为:

0 投票
1 回答
1987 浏览

javascript - 如何解析光标ANSI转义码?

我正在编写用于处理 jQuery 终端光标的 ANSI 转义码的代码。但是有问题,不知道它应该如何工作,我得到了奇怪的结果。

我正在使用ervy library进行测试。

并使用此代码:

它在 Linux Xterm 中应该是这样的:

带有 ANSI 绘图的 Xterm 终端屏幕截图

但是看起来是这样的,看codepen demo

带有 ANSI 绘图的 jQuery 终端屏幕截图

当我写这个问题时,在移动光标时改变了几个 +1 和 -1(请参阅处理代码中的 AF ANSI 转义)给出了这个结果(代码片段有最新的代码)。

带有 ANSI 绘图的 jQuery 终端屏幕截图

第一行被空格覆盖,整个情节从上到下,从右到右(除了应该在“|”下方的 0,0 青色点和 2 个字符宽,所以你应该看到它的右半部分,这个是正确的,但是其余的不是)

这是我处理光标的新代码,我在处理颜色之前这样做,所以代码并不复杂。

in 代码是行数组,result = [];当在光标处插入文本时,单行可能会被拆分为多个子字符串,如果它们是字符串数组,代码可能会更简单。现在我只想修复光标位置。

这是嵌入了 from_ansi 函数的codepen 演示(里面有 parse_ansi_cursor 是有问题的)。抱歉,代码很多,但解析 ANSI 转义码并不简单。

我不确定应该如何移动光标(现在它有 + 1 或 - 1,我不确定)我也不确定是否应该在每行之前增加 cursor.y。我不是 100% 确定这应该如何工作。我查看了 Linux Xterm 代码,但没有找到任何线索。查看了 Xterm.js,但那些散点图的 ervy 图完全被破坏了。

我的 from_ansi 函数的原始代码正在处理一些像这样的 ANSI 光标代码:

只有 C,向前只是添加空白,它适用于 ANSI 艺术,但不适用于 ervy 散点图。

我认为它并不太宽泛,只是关于使用 ANSI 转义码移动光标和处理换行符的问题。也假设是简单的情况,光标应该只在单个字符串内移动,而不是像在真实终端中那样移动(ervy plot 输出 ANSI 转义码)。

我对解释如何处理字符串以及如何移动有效的光标的答案很好,但如果你能提供对代码的修复,我会很棒。我更喜欢修复我的代码现在全新的实现,除非它更简单并且它是一个函数parse_ansi_cursor(input)并且与其余代码相同但具有固定的光标移动。

编辑: 我发现我input.split('\n').filter(Boolean)错了,应该是:

似乎一些旧的 ANSI 转义规范说 0 不是零,而是默认占位符 1。这已从规范中删除,但 Xterm 仍在使用它。所以我添加了这一行来解析代码,如果有 0A 或 A 得到值 1。

情节看起来更好,但光标仍然存在问题。(我认为它是光标 - 我不是 100% 确定)。

jQuery 终端图

我再次更改了 +1/-1,现在它更接近了(几乎与 XTerm 中的相同)。巴斯仍然需要在我的代码中存在错误。

编辑

@jerch 的回答我尝试使用node ansi parser,有同样的问题不知道如何处理光标:

这只是一个简单的例子,它忽略了除换行符和光标移动之外的所有内容。

这是输出:

ASCII 散点图

更新

It seems that every cursor movement should be just += value or -= value and my value - 1; was just correcting to bug in ervy library that was not working on clear terminal.

0 投票
1 回答
785 浏览

javascript - 在移动设备上实现“更少”时仅触摸一次移动火力

我正在尝试在 jQuery 终端的较少扩展中实现触摸滚动。它的工作方式类似于 less unix 命令。

我有这个代码:

在里面我有:

我也有这个CSS:

在鼠标滚轮滚动上效果很好,它使用相同数量的 scroll_by 滚动,默认情况下为 3(似乎是正确的)。(pos 是行偏移,所以如果我使用 pos++ 它移动/滚动一行,touchscroll 中的增量是从大约-20 到 20 像素的正数或负数。

我遇到的问题是,我怎样才能让它用手指滚动?感觉不对。此外,它仅在不随手指移动时才滚动。touchmove 只触发一次,我在触摸手机时移动手指时不应该触发吗?

有人对这种类型的触摸滚动行为有经验吗?

我正在寻找类似的问题,但没有找到解决方案。你知道为什么touchmove可以触发一次吗?我唯一能想到的是用作剪贴板的textarea(在移动设备上它也用于启用虚拟键盘),但我已将背景设置为红色并且它不会在Android上移动。我正在测试此绘图演示中的其他代码:

https://zipso.net/a-simple-touchscreen-sketchpad-using-javascript-and-html5/

它工作正常,当你移动手指时,触摸移动会持续触发。

有任何想法吗?这将很难复制,但如果有人对调查感兴趣,我可以将我所有的代码放在 jQuery Terminal repo 的 github 上(在某个分支中)。

奇怪的是 touchend 在 touchmove 之后不会触发,只有当我点击终端启用键盘时才会触发一次。

我尝试在每次触发时对 jQuery 进行猴子修补并记录,但我没有任何其他事件(可能会阻止默认行为)也根据 docs mouse events fire after touchend 而那些不触发。

0 投票
0 回答
34 浏览

jquery-terminal - 在尝试为我的投资组合网站构建自己的 Web 终端时,我遇到了 jquery-terminal 的一些问题

例如this.echo(“医院管理系统:设计了一个成熟的医院管理系统,牢记人们面临的所有必要细节和问题。它是通过牢记所有涉及的用例精心设计的。系统使用 HTML、Javascript、PHP、Mysql\n") 实现;

- 问题是一些单词之间被换行符打破。那么如何在不破坏单词的情况下正确输出文本 - 第二个问题是如何在 jquery-terminal 中更改命令的颜色

0 投票
1 回答
327 浏览

javascript - 如何在 jQuery 终端环境中创建多个命令

我目前的项目

我正在尝试使用 jQuery 终端制作一个终端样式的网页。

我的问题

我不知道如何向终端添加多个命令。

这是我的代码:

0 投票
1 回答
23 浏览

jquery-terminal - 根据屏幕大小更改问候语

我想知道如何根据屏幕大小更改问候语。目前它在较小的屏幕上看起来不太好。

我不擅长 jQuery/JS,所以我使用 if 语句来检查宽度并根据它更改问候语。问题在于它仅在页面加载时才会这样做。我希望每次尺寸更新时都会改变它。

在本网站底部的演示中,问候语会根据屏幕的宽度而变化。

有什么帮助吗?

祝你今天过得愉快,

漫游者