LuaLS / LuaLS/lua-language-server
`@language` tag for embedding other languages in a string
オープン
まだ誰も着手していません。
- 主要言語
- Lua
- スター
- 4.4k
- フォーク
- 442
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
In a few places in factorio's API we have a lua string that contains code (sometimes more lua code, sometimes our noise-expression language), and it woudl be nice to be able to activate language features for these via embedded language tags, something like
local simulation = {
---@language lua
init = [[
local bp="0eNq1lVtugzAQRfcy36aKzZu/dBtVhIA47UhgkDFRoogFdCHdWFdSG9QEKYRH1fwgbMbncsejmQukecMriUJBdAHMSlFD9HaBGt9Fkps9da44RICKF0BAJIVZCTwht1STcmgJoNjzE0S03RHgQqFC3lO6xTkWTZFyqQPGzhOoylofKYVR0xjLeXEJnPULa1tyB2HLIO4kxF4GYZMQZxnEnoS4yyCbG4SAviUlyzxO+UdyxFKaoAxl1qCK9bf99eQBZa3iu7s8olSN3rlK9xHWFnp4rRJTDxajju8EtucEZruoEpkoowbfn1/Q9rGCZ0atNnhqHpLvh3ePekXtdteOmfeWmaeTGfRHIFZdJHk+VVs6oWOwYA3MnoGFa2BsBkY3a2h0jkbX0DZD2vPq7/VZ9cce1B+9NZNfWUsLpSg6obtEsPk8HDBXXD5oojPGG+OaMttxPT8Ih311hVf6yKv9R6/0f71u77z+zajb+dQTp5tM0WCQETjqv+qcsECXUMh8FgaB5+v28QOiY0wL"
game.tick_paused = false
game.simulation.camera_alt_info = true
local result = {game.surfaces[1].create_entities_from_blueprint_string
{
string = bp,
position = {0, 0},
}}
remote.call("nixie-tubes", "RebuildNixies")
]],
}
local noise = {
type = "noise-expression",
name = "enemy_base_frequency",
---@language factorio-noise
expression = "(0.00001 + 0.000003 * enemy_base_intensity) * var('control:enemy-base:frequency')"
}
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
Issue の例と、リンクされている VS Code の埋め込み言語に関するガイダンスから始めてください。リポジトリのファイル、テスト、エントリポイントが指定されていないため、まず Lua 文字列の内容が現在どのように解析され、診断されているかを特定してください。提案された @language タグによって、埋め込み Lua と factorio-noise の文字列に適切な言語機能が有効化されれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- lua
- 領域
- developer-experience
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 30/100