首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >GoLand设置终端单元不起作用

GoLand设置终端单元不起作用
EN

Stack Overflow用户
提问于 2021-03-29 06:06:04
回答 3查看 98关注 0票数 1

我正在使用tcell库来显示终端单元图形。

在用GoLand编写这个项目时,我注意到使用正常的运行配置并在集成的终端中运行程序,我没有看到单元按照预期的方式进行设置,尽管tcell没有给出任何错误。

程序:

代码语言:javascript
运行
复制
package main

import (
    "time"
    "github.com/gdamore/tcell"  
)

func main() {
    screen, err := tcell.NewScreen()
    if err != nil {
        panic(err)
    }

    err = screen.Init()
    if err != nil {
        panic(err)
    }

    screen.SetCell(0, 0, tcell.StyleDefault, 'X')
    screen.SetCell(1, 0, tcell.StyleDefault, 'X')
    screen.SetCell(1, 1, tcell.StyleDefault, 'X')
    screen.SetCell(10, 10, tcell.StyleDefault, 'X')
    screen.Show()

    time.Sleep(time.Second*5)
}

GoLand输出:

当通过cmd运行时,程序可以正常工作:

如何在GoLand中设置运行配置,以便在cmd或其他形式的终端中运行我的程序,从而允许我像这样设置单元?

EN

回答 3

Stack Overflow用户

发布于 2021-03-29 18:30:21

  1. 打开Help | Find Action...
  2. Type注册表并按Enter。
  3. 在那里找到go.run.processes.with.pty并将其打开。

请记住,这可能会导致运行配置出现问题,比如失败的绿色测试,反之亦然,永远不会完成调试会话,等等。如果您注意到与控制台输出相关的奇怪IDE行为,请重新禁用注册表选项。

我不确定Y轴上的点是否在运行窗口内正确显示。

票数 3
EN

Stack Overflow用户

发布于 2021-03-29 06:59:51

我猜GoLands终端是一个没有真正的光标寻址能力的假终端。如果是这样的话,可能没有一个好的解决方案。

我是tcell的作者,我使用goland,但我承认我总是在真实的终端中运行我的测试程序,而不是在IDE提供的玩具终端中运行。无论我使用goland,visual studio代码,甚至是令人尊敬的emacs,这都是真的。

票数 1
EN

Stack Overflow用户

发布于 2021-03-29 06:06:04

通过使用新的批处理运行配置,您可以运行批处理文件来构建程序,然后在新的cmd窗口中运行该程序。

在GoLand的运行配置中,将“工作目录”设置为主软件包目录。然后将脚本设置为新的批处理文件。

以下是我的软件包client的批处理文件中的代码

代码语言:javascript
运行
复制
go build
start cmd /C client.exe

运行此配置将构建程序包,然后在一个新的外部cmd窗口中运行程序,在该窗口中可以正确显示单元。

这个解决方案不是很好,因为GoLand运行配置系统的大部分优势都消失了,包括调试、进程管理(停止/重新启动)和其他构建选项。

有人有更好的解决方案吗?

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66846658

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档