小编wu-*_*lee的帖子

如何使用-0选项读取Perl中的固定宽度记录?

所以我知道你可以编写Perl单行程序,用非默认记录分隔符读取记录,例如

perl -064 -ne '#... delimited by @'
Run Code Online (Sandbox Code Playgroud)

或者将整个文件放在一行:

perl -0777 -ne '#... file at once'
Run Code Online (Sandbox Code Playgroud)

我也知道,如果您以编程方式将记录分隔符设置$\为对数字的引用,则可以读取固定宽度的记录.

perl -ne '$/ = \10; #... 10 chars at a time'
Run Code Online (Sandbox Code Playgroud)

但我找不到的是使用该-0选项读取固定宽度记录的任何配方.这可能吗?

perl command-line-interface fixed-width

5
推荐指数
1
解决办法
42
查看次数

GitLab 页面:可以从项目 wiki 生成静态站点吗?

所以我知道可以使用 GitLab 页面从项目的存储库生成静态网站。然而,我想做的是从项目的wiki,这是一个单独的存储库。

我也知道我可以将静态站点生成器挂接到 webhook 事件以通知 wiki 更改。我试图弄清楚这个明显的(对我来说)用例是否可以通过 GitLab 的页面功能来实现,它具有更简单的设置,或者我是否真的需要求助于 webhooks。

据我所知,事实并非如此,我确实如此,但可能有些方法在我能找到的任何地方都没有得到很好的描述。

最后:我想这样做的原因是,GitLab 的 wiki 似乎有一个定制的 UI,使它的工作更像是一个 wiki,而不是存储库的 UI。我希望这将使它对我预见使用它的潜在非技术用户更有用/更少敌意。

static-site gitlab gitlab-ci

3
推荐指数
1
解决办法
870
查看次数

如何在 Nim 中创建变量别名?

我是 Nim 的新手,所以这可能是一个迟钝的问题,但是为了简化代码,如何创建速记别名变量?

例如:

import sdl2
import sdl2.gfx

type
  Vector[T] = object
    x, y: T

  Ball = object
    pos: Vector[float]

  Game = ref object
    renderer: RendererPtr
    ball: array[10, Ball]

proc render(game: Game) =
  # ...

  # Render the balls
  for ix in low(game.ball)..high(game.ball):
    var ball : ref Ball = game.ball[ix]
    game.renderer.filledCircleRGBA(
        int16(game.renderer.ball[ix].pos.x),
        int16(game.renderer.ball[ix].pos.y),
        10, 100, 100, 100, 255)

  # ...
Run Code Online (Sandbox Code Playgroud)

而不是最后一部分,我想使用较短的别名来访问球位置:

  # Update the ball positions
  for ix in low(game.ball)..high(game.ball):
    ??? pos = game.ball[ix].pos
    game.renderer.filledCircleRGBA(
        int16(pos.x),
        int16(pos.y),
        10, 100, 100, …
Run Code Online (Sandbox Code Playgroud)

nim-lang

2
推荐指数
1
解决办法
523
查看次数