问题标签 [tui]

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 投票
1 回答
199 浏览

go - 如何使用 Go 在终端的一部分中使用 Vim

我正在尝试使用 Go 创建 TUI 应用程序。
我会让这个应用程序像仪表板一样。
我想使用 Vim 作为终端(iTerm2)屏幕的一部分。

1

我想使用本地 vim env(NeoVim,本地 vimrc 和插件)。

如何在 go 中使用本地 vim?
或者有没有使用本地 vim 的库?

我的英语不是很好,如果有什么不清楚的地方可以随时问我。
谢谢你。

0 投票
2 回答
161 浏览

java - 为命令行界面组织命令的好方法是什么?

我在创建清晰简洁的代码时遇到了麻烦,这些代码允许我编写各种命令来做各种不同的事情。因此,例如,在我正在研究的 N 体模拟器中,我想要的功能是用户可以输入类似tele pos [x] [y] [z]or的命令tele celobj [celestial object name]

为此,我根据空格的位置将输入字符串划分为一个标记数组。然后,我使用一系列 switch 语句,第一个单词 ( tele) 在一层 switch 语句中处理,然后第二个单词 ( posor celobj) 在第二层 switch 语句中处理。然后相应地处理下一个令牌。通过所有这些不同的层,我检查用户是否输入了有效数量的单词以避免超出范围的异常。

我的代码运行良好,但显然很难阅读且过于复杂。我不是在寻找可以帮助我的代码,而是一种用于组织命令系统或以最佳方式设置逻辑的概念策略。

我已经包含了我的源代码以防万一,但我希望我的描述足够清楚。

0 投票
0 回答
902 浏览

gdb - gdb 只显示 xmm 寄存器

我已经使用 avx2 指令集(ymm 寄存器)编写了一个子例程,现在我想对其进行调试。我的机器支持这个指令集,程序可以毫无问题地执行(没有SIGILL异常)。

但是当我在 gdb 中输入 'tui reg vector' 或 'info all-registers' 时,它只显示 xmm 寄存器。而且打印命令也不起作用: (gdb) p $ymm0 $1 = void (gdb) p/x $ymm0 $2 = Value can't be converted to integer.

我用的是最新版本的gdb-8,所以我想,它应该知道avx2指令集。
如何说服调试器显示空 ymm 寄存器?
我可以编辑一些配置文件来告诉 gdb 它应该使用的指令集吗?

亲切的问候

0 投票
1 回答
2003 浏览

python - 如何制作基于文本的界面 (TUI/TLI) 来监控 OpenFOAM 求解器日志文件?

我在集群上运行 OpenFOAM 模拟,它们需要几天才能完成。我正在寻找一种方法来监控流程并获得一些有意义的见解。我目前能做的是使用

这里我还找到了一个不错的 GnuPlot-grep 脚本:

它从文件中提取信息,如果我在顶部log.log添加某个位置,它可以在终端中绘制。set term dumb但是,情节非常拥​​挤,丑陋,显示需要很长时间,并且顺序打印到终端,而不是更新前一个。

在互联网上搜索我发现有一些不错的 python 库,例如 npyscreen/picotui、ncurses/blessed、Asciimatics、Urwid、Prompt Toolkit ... 用于创建 TUI/TLI。我想知道您是否可以帮助我了解如何创建基于文本的界面来显示基本信息以及所选值与时间的关系图。我想要几个面板。例如,一个选择我想要绘制的变量Courant Number mean,另一个面板上有一个显示该变量与步进时间的图。和其他实时显示所有变量的最新值。我想到的应该类似于urwind 的graph.py例子

在此处输入图像描述

PS自从我发布了这个:

  • 在这里,我向Termgraph介绍了一个非常有趣的 python 库,用于在终端中获取一些图形。
  • 我已经在 Urwid google 组中发布了这个想法。你可以关注这里的讨论
  • 我发现了也使用 Urwid的PyFoam's 。CaseBuilder同样在这里,我被告知 PyFoam 项目中的其他尝试,以从求解器获取一些不错的 TUI 信息。
0 投票
2 回答
1802 浏览

python - 您如何组合多个 TUI 表单来编写更复杂的应用程序?

想编写一个带有基于文本的用户界面( TUI )的程序,该界面由多种形式组成。

几种形式的介绍。

  • 第一种形式包含一个“列表”。每个列表元素代表一个按钮。
  • 如果按下相应的按钮,则应出现另一种形式,可以在其中输入列表条目的数据。
  • 然后再次显示第一个表单(带有更新的列表条目)。

这是我的尝试,它使用库npyscreen但不返回第一种形式。该代码也不包含更改列表项的逻辑。

0 投票
1 回答
1237 浏览

python-3.x - 一帧中的多种形式npyscreen

您好,我已经开始学习npyscreentui并且我已经在互联网上搜索了 ` multi forms in one frame for npyscreen找不到答案我试图制作看起来像这样的应用程序在此处输入图像描述

0 投票
2 回答
668 浏览

python - python 库“urwid”是否包含用于读取日期的小部件(日期选择器)?

npyscreen具有用于选择日期的小部件“DateCombo”和“TitleDateCombo”

urwid有类似的吗? 如果没有,有没有推荐的第三方库?

这是一个使用 npyscreen 的示例:

在此处输入图像描述

0 投票
2 回答
1791 浏览

python - 你如何让 python 库“urwid”的按钮看起来很漂亮?

urwid 中按钮的默认外观非常实用,但在我看来不是很漂亮。当几个按钮并排排成一排时,它也可能很烦人。

如何实现按钮显示为带有框架和居中文本并在获得焦点时更改其颜色?

在此处输入图像描述

0 投票
2 回答
1242 浏览

python - 如何指示 urwid 列表框的项目比目前显示的多?

有没有办法向用户显示 urwid 列表框在显示部分上方/下方有其他项目?

我正在考虑类似滚动条的东西,它可以让您了解条目的数量。

带有垂直滚动条的列表框。

或列表框顶部/底部的单独栏。

向下滚动时转换列表框。

如果无法实现这种行为,有什么方法可以实现这种通知?

在我的研究中,我发现了这个问题,它试图最终达到同样的效果。给定的答案似乎检查所有元素是否可见。不幸的是,如果由于终端未调整大小而随时隐藏某些元素,这将失去其功能。

0 投票
0 回答
73 浏览

java - 我在某些方法上遇到错误

我正在编写这个 java 类,它是 ClassityCard 的 TUI,但是,我在使用以下方法时遇到了一些错误。将不胜感激任何帮助,谢谢。

  1. public void add忠诚卡

  2. public void ShowAllLoyaltyCards(它应该打印所有会员卡的详细信息,每个会员卡之间有一个空格)

  3. public void showLoyaltyCard(打印出带有选择卡号的会员卡,如果不成功“消息”

这是我的代码: