mirror of
https://github.com/Kilo-Org/kilocode.git
synced 2026-08-28 19:11:03 +08:00
Merge pull request #11570 from Kilo-Org/glow-albacore
feat(vscode): let users hide disabled indexing button
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"kilo-code": minor
|
||||
---
|
||||
|
||||
Let users hide the codebase indexing button while indexing is off.
|
||||
+2
-2
@@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:add00c319d54f53c7c9859428b18182fa91da1b17e4c03b1ee8015ed08f73d19
|
||||
size 48653
|
||||
oid sha256:4d5db71fbed0542dd8ef3101d7b56b9538b9e6411921150d0957996acd620fde
|
||||
size 51161
|
||||
|
||||
+2
-2
@@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d9fbce155629b97a30ee9f95f226ef883b6febf8002a657516ff439e3fae0f6c
|
||||
size 51829
|
||||
oid sha256:c501793cb8d0ad50b2d8d283a6314ce4b21dabdc0e95f63174c4a7e475523e32
|
||||
size 54055
|
||||
|
||||
+2
-2
@@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:3330276aded477430e615ababb2caa7eeb2fa7f7406974b9b829e6092d5a619a
|
||||
size 51792
|
||||
oid sha256:8d280dc15c3e64ddf365e1bdaa572d07da0199d0cb9d37acb174ae70db5ae746
|
||||
size 57329
|
||||
|
||||
+2
-2
@@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:bb78008c0fcbc47cb4b73fcea0739ce975c64b31d58852d74fd31078f3774694
|
||||
size 54958
|
||||
oid sha256:16b0e2bed3c576328a5565ae957c3af4abbc884a0db894472f587b29e1c355b4
|
||||
size 56194
|
||||
|
||||
@@ -924,6 +924,12 @@
|
||||
"default": false,
|
||||
"description": "Enable chat textarea autocomplete"
|
||||
},
|
||||
"kilo-code.new.indexing.showButtonWhenDisabled": {
|
||||
"type": "boolean",
|
||||
"default": true,
|
||||
"scope": "application",
|
||||
"description": "Show the codebase indexing button below the prompt while indexing is disabled."
|
||||
},
|
||||
"kilo-code.new.claudeCodeCompat": {
|
||||
"type": "boolean",
|
||||
"default": false,
|
||||
|
||||
@@ -150,6 +150,11 @@ import { createAutoApproveBridge } from "./kilo-provider/auto-approve"
|
||||
import type { KiloProviderOptions } from "./kilo-provider/options"
|
||||
import { fetchKiloEmbeddingModelCatalog } from "@kilocode/kilo-gateway"
|
||||
import { stopSessionProcesses } from "./kilo-provider/background-process"
|
||||
import {
|
||||
buildIndexingSettingsMessage,
|
||||
validIndexingSetting,
|
||||
watchIndexingConfig,
|
||||
} from "./kilo-provider/indexing-settings"
|
||||
|
||||
type MessageLoadMode = "replace" | "prepend" | "focus" | "reconcile"
|
||||
type ContextMessage = { contextDirectory?: unknown }
|
||||
@@ -359,6 +364,7 @@ export class KiloProvider implements vscode.WebviewViewProvider, TelemetryProper
|
||||
private initConnectionPromise: Promise<void> | null = null
|
||||
private webviewMessageDisposable: vscode.Disposable | null = null
|
||||
private autocompleteConfigDisposable: vscode.Disposable | null = null
|
||||
private indexingConfigDisposable: vscode.Disposable | null = null
|
||||
private telemetryStateDisposable: vscode.Disposable | null = null
|
||||
private viewStateDisposable: vscode.Disposable | null = null
|
||||
private visibilityDisposable: vscode.Disposable | null = null
|
||||
@@ -796,6 +802,8 @@ export class KiloProvider implements vscode.WebviewViewProvider, TelemetryProper
|
||||
this.webviewMessageDisposable?.dispose()
|
||||
this.autocompleteConfigDisposable?.dispose()
|
||||
this.autocompleteConfigDisposable = watchAutocompleteConfig((msg) => this.postMessage(msg))
|
||||
this.indexingConfigDisposable?.dispose()
|
||||
this.indexingConfigDisposable = watchIndexingConfig((msg) => this.postMessage(msg))
|
||||
this.telemetryStateDisposable?.dispose()
|
||||
this.telemetryStateDisposable = watchTelemetryState((msg) => this.postMessage(msg))
|
||||
this.webviewMessageDisposable = webview.onDidReceiveMessage(async (message) => {
|
||||
@@ -1080,6 +1088,9 @@ export class KiloProvider implements vscode.WebviewViewProvider, TelemetryProper
|
||||
console.error("[Kilo New] fetchAndSendIndexingStatus failed:", e),
|
||||
)
|
||||
break
|
||||
case "requestIndexingSettings":
|
||||
this.postMessage(buildIndexingSettingsMessage())
|
||||
break
|
||||
case "requestKiloEmbeddingModels":
|
||||
this.fetchAndSendKiloEmbeddingModels().catch((e) =>
|
||||
console.error("[Kilo New] fetchAndSendKiloEmbeddingModels failed:", e),
|
||||
@@ -2998,6 +3009,7 @@ export class KiloProvider implements vscode.WebviewViewProvider, TelemetryProper
|
||||
private async handleUpdateSetting(key: string, value: unknown): Promise<void> {
|
||||
const { section, leaf } = buildSettingPath(key)
|
||||
if (section === "autocomplete" && !validAutocompleteSetting(leaf, value)) return
|
||||
if (section === "indexing" && !validIndexingSetting(leaf, value)) return
|
||||
const config = vscode.workspace.getConfiguration(`kilo-code.new${section ? `.${section}` : ""}`)
|
||||
// Normalize a webview-side clear to `undefined` so VS Code removes the
|
||||
// key from settings.json rather than persisting a literal `null`. This
|
||||
@@ -3044,6 +3056,7 @@ export class KiloProvider implements vscode.WebviewViewProvider, TelemetryProper
|
||||
|
||||
// Re-send all settings to the webview so the UI reflects the reset
|
||||
this.postMessage(buildAutocompleteSettingsMessage())
|
||||
this.postMessage(buildIndexingSettingsMessage())
|
||||
this.sendBrowserSettings()
|
||||
this.sendNotificationSettings()
|
||||
this.sendTimelineSetting()
|
||||
@@ -3649,6 +3662,7 @@ export class KiloProvider implements vscode.WebviewViewProvider, TelemetryProper
|
||||
this.visibilityDisposable?.dispose()
|
||||
this.webviewMessageDisposable?.dispose()
|
||||
this.autocompleteConfigDisposable?.dispose()
|
||||
this.indexingConfigDisposable?.dispose()
|
||||
this.telemetryStateDisposable?.dispose()
|
||||
this.autoApproveBridge?.dispose()
|
||||
this.visibleTaskStreams.clear()
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
import * as vscode from "vscode"
|
||||
|
||||
type Post = (msg: unknown) => void
|
||||
|
||||
export function buildIndexingSettingsMessage() {
|
||||
const config = vscode.workspace.getConfiguration("kilo-code.new.indexing")
|
||||
return {
|
||||
type: "indexingSettingsLoaded" as const,
|
||||
settings: {
|
||||
showButtonWhenDisabled: config.get<boolean>("showButtonWhenDisabled", true),
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
export function watchIndexingConfig(post: Post): vscode.Disposable {
|
||||
return vscode.workspace.onDidChangeConfiguration((event) => {
|
||||
if (event.affectsConfiguration("kilo-code.new.indexing")) {
|
||||
post(buildIndexingSettingsMessage())
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
export function validIndexingSetting(key: string, value: unknown) {
|
||||
return key === "showButtonWhenDisabled" && typeof value === "boolean"
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
import { afterEach, beforeEach, describe, expect, it } from "bun:test"
|
||||
import * as vscode from "vscode"
|
||||
import { buildIndexingSettingsMessage, validIndexingSetting } from "../../src/kilo-provider/indexing-settings"
|
||||
|
||||
type Stub = {
|
||||
getConfiguration: (section?: string) => {
|
||||
get: <T>(key: string, fallback?: T) => T | undefined
|
||||
}
|
||||
}
|
||||
|
||||
const original = vscode.workspace.getConfiguration
|
||||
|
||||
function stubConfig(state: Map<string, unknown>) {
|
||||
;(vscode.workspace as unknown as Stub).getConfiguration = (section?: string) => {
|
||||
if (section !== "kilo-code.new.indexing") {
|
||||
return { get: <T>(_key: string, fallback?: T) => fallback }
|
||||
}
|
||||
return {
|
||||
get: <T>(key: string, fallback?: T) => (state.has(key) ? (state.get(key) as T) : fallback),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
afterEach(() => {
|
||||
;(vscode.workspace as unknown as Stub).getConfiguration = original as Stub["getConfiguration"]
|
||||
})
|
||||
|
||||
describe("buildIndexingSettingsMessage", () => {
|
||||
let state: Map<string, unknown>
|
||||
|
||||
beforeEach(() => {
|
||||
state = new Map()
|
||||
stubConfig(state)
|
||||
})
|
||||
|
||||
it("shows the indexing button by default", () => {
|
||||
expect(buildIndexingSettingsMessage().settings.showButtonWhenDisabled).toBe(true)
|
||||
})
|
||||
|
||||
it("returns the persisted button preference", () => {
|
||||
state.set("showButtonWhenDisabled", false)
|
||||
|
||||
expect(buildIndexingSettingsMessage().settings.showButtonWhenDisabled).toBe(false)
|
||||
})
|
||||
})
|
||||
|
||||
describe("validIndexingSetting", () => {
|
||||
it("accepts only boolean button visibility updates", () => {
|
||||
expect(validIndexingSetting("showButtonWhenDisabled", true)).toBe(true)
|
||||
expect(validIndexingSetting("showButtonWhenDisabled", false)).toBe(true)
|
||||
expect(validIndexingSetting("showButtonWhenDisabled", "false")).toBe(false)
|
||||
expect(validIndexingSetting("unknown", true)).toBe(false)
|
||||
})
|
||||
})
|
||||
@@ -2,6 +2,7 @@ import { describe, expect, it } from "bun:test"
|
||||
import {
|
||||
applyIndexingStatusMessage,
|
||||
formatIndexingLabel,
|
||||
indexingButtonVisible,
|
||||
indexingTone,
|
||||
} from "../../webview-ui/src/context/indexing-utils"
|
||||
import { mapSSEEventToWebviewMessage } from "../../src/kilo-provider-utils"
|
||||
@@ -19,6 +20,41 @@ function makeStatus(overrides: Partial<IndexingStatus> = {}): IndexingStatus {
|
||||
}
|
||||
}
|
||||
|
||||
describe("indexing button visibility", () => {
|
||||
it("hides the button when the indexing feature is unavailable", () => {
|
||||
expect(indexingButtonVisible(false, true, { indexing: { enabled: true } }, { indexing: { enabled: true } })).toBe(
|
||||
false,
|
||||
)
|
||||
})
|
||||
|
||||
it("shows the button while indexing is off by default", () => {
|
||||
expect(indexingButtonVisible(true, true, {}, {})).toBe(true)
|
||||
})
|
||||
|
||||
it("hides the button when indexing is off and the preference is disabled", () => {
|
||||
expect(indexingButtonVisible(true, false, {}, {})).toBe(false)
|
||||
})
|
||||
|
||||
it("shows the button when project indexing is enabled", () => {
|
||||
expect(indexingButtonVisible(true, false, { indexing: { enabled: true } }, {})).toBe(true)
|
||||
expect(indexingButtonVisible(true, false, { indexing: { enabled: true } }, { indexing: { enabled: false } })).toBe(
|
||||
true,
|
||||
)
|
||||
})
|
||||
|
||||
it("stays hidden when global and project indexing are off", () => {
|
||||
expect(indexingButtonVisible(true, false, { indexing: { enabled: false } }, { indexing: { enabled: false } })).toBe(
|
||||
false,
|
||||
)
|
||||
})
|
||||
|
||||
it("shows the button whenever global indexing is enabled", () => {
|
||||
expect(indexingButtonVisible(true, false, { indexing: { enabled: false } }, { indexing: { enabled: true } })).toBe(
|
||||
true,
|
||||
)
|
||||
})
|
||||
})
|
||||
|
||||
describe("indexing formatting", () => {
|
||||
it("formats in-progress status like the TUI", () => {
|
||||
const status = makeStatus({ state: "In Progress", percent: 42, processedFiles: 21, totalFiles: 50 })
|
||||
|
||||
@@ -13,6 +13,7 @@ import { showToast } from "@kilocode/kilo-ui/toast"
|
||||
import { useSession } from "../../context/session"
|
||||
import { useServer } from "../../context/server"
|
||||
import { useIndexing } from "../../context/indexing"
|
||||
import { indexingButtonVisible } from "../../context/indexing-utils"
|
||||
import { useLanguage } from "../../context/language"
|
||||
import { useVSCode } from "../../context/vscode"
|
||||
import { useConfig } from "../../context/config"
|
||||
@@ -78,7 +79,7 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
|
||||
const session = useSession()
|
||||
const server = useServer()
|
||||
const indexing = useIndexing()
|
||||
const { config, features } = useConfig()
|
||||
const { config, globalConfig, settings, features } = useConfig()
|
||||
const provider = useProvider()
|
||||
const language = useLanguage()
|
||||
const vscode = useVSCode()
|
||||
@@ -295,6 +296,13 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
|
||||
|
||||
const isBusy = () =>
|
||||
isPromptBusy(session.status(), !!props.suggesting?.(), !!props.questioning?.(), session.submitting())
|
||||
const showIndexing = () =>
|
||||
indexingButtonVisible(
|
||||
features().indexing,
|
||||
Boolean(settings()["indexing.showButtonWhenDisabled"] ?? true),
|
||||
config(),
|
||||
globalConfig(),
|
||||
)
|
||||
const isDisabled = () => !server.isConnected()
|
||||
const canUseSpeech = () => canUseSpeechToText(config(), provider.authStates())
|
||||
const speechModel = () => selectedSpeechToTextModel(config())
|
||||
@@ -1015,7 +1023,7 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
|
||||
</Show>
|
||||
</div>
|
||||
<div class="prompt-input-hint-actions">
|
||||
<Show when={features().indexing}>
|
||||
<Show when={showIndexing()}>
|
||||
<Tooltip value={indexing.status().message || indexing.label()} placement="top">
|
||||
<Button
|
||||
variant="ghost"
|
||||
|
||||
@@ -93,7 +93,7 @@ function providerFields(provider: ProviderId | undefined): Array<{ key: string;
|
||||
}
|
||||
|
||||
const IndexingTab: Component = () => {
|
||||
const { globalConfig, projectConfig, updateGlobalConfig, updateProjectConfig } = useConfig()
|
||||
const { globalConfig, projectConfig, settings, updateGlobalConfig, updateProjectConfig, updateSetting } = useConfig()
|
||||
const indexing = useIndexing()
|
||||
const embeds = useKiloEmbeddingModels()
|
||||
const language = useLanguage()
|
||||
@@ -292,12 +292,24 @@ const IndexingTab: Component = () => {
|
||||
: language.t("settings.indexing.enable.description")
|
||||
}
|
||||
tag={() => tag(scope(), [["enabled"]])}
|
||||
last
|
||||
>
|
||||
<Switch checked={enabled()} onChange={saveEnabled} hideLabel>
|
||||
{language.t("settings.indexing.enable.title")}
|
||||
</Switch>
|
||||
</SettingsRow>
|
||||
<SettingsRow
|
||||
title={language.t("settings.indexing.showButton.title")}
|
||||
description={language.t("settings.indexing.showButton.description")}
|
||||
last
|
||||
>
|
||||
<Switch
|
||||
checked={Boolean(settings()["indexing.showButtonWhenDisabled"] ?? true)}
|
||||
onChange={(checked) => updateSetting("indexing.showButtonWhenDisabled", checked)}
|
||||
hideLabel
|
||||
>
|
||||
{language.t("settings.indexing.showButton.title")}
|
||||
</Switch>
|
||||
</SettingsRow>
|
||||
</Card>
|
||||
|
||||
<Card>
|
||||
|
||||
@@ -96,6 +96,12 @@ export const ConfigProvider: ParentComponent = (props) => {
|
||||
})
|
||||
return
|
||||
}
|
||||
if (message.type === "indexingSettingsLoaded") {
|
||||
mergeSettings({
|
||||
"indexing.showButtonWhenDisabled": message.settings.showButtonWhenDisabled,
|
||||
})
|
||||
return
|
||||
}
|
||||
if (message.type === "configLoaded") {
|
||||
// Skip if a save is in-flight — a stale configLoaded must not overwrite
|
||||
// the optimistically-updated state while the write is being confirmed.
|
||||
@@ -177,6 +183,7 @@ export const ConfigProvider: ParentComponent = (props) => {
|
||||
const requestInitialData = () => {
|
||||
vscode.postMessage({ type: "requestConfig" })
|
||||
vscode.postMessage({ type: "requestAutocompleteSettings" })
|
||||
vscode.postMessage({ type: "requestIndexingSettings" })
|
||||
}
|
||||
|
||||
// Request config immediately; if the extension's httpClient is not yet ready,
|
||||
|
||||
@@ -1,4 +1,11 @@
|
||||
import type { ExtensionMessage, IndexingStatus } from "../types/messages"
|
||||
import type { Config, ExtensionMessage, IndexingStatus } from "../types/messages"
|
||||
|
||||
export function indexingButtonVisible(feature: boolean, show: boolean, config: Config, global: Config) {
|
||||
if (!feature) return false
|
||||
if (show) return true
|
||||
if (global.indexing?.enabled === true) return true
|
||||
return config.indexing?.enabled === true
|
||||
}
|
||||
|
||||
export function formatIndexingLabel(status: IndexingStatus): string {
|
||||
if (status.state === "In Progress") {
|
||||
|
||||
+3
@@ -1110,6 +1110,9 @@ export const dict = {
|
||||
"settings.indexing.title": "الفهرسة",
|
||||
"settings.indexing.enable.title": "تمكين الفهرسة",
|
||||
"settings.indexing.enable.description": "تشغيل أو إيقاف فهرسة قاعدة الكود الدلالية.",
|
||||
"settings.indexing.showButton.title": "إظهار الزر عند تعطيل الفهرسة",
|
||||
"settings.indexing.showButton.description":
|
||||
"إظهار زر الفهرسة أسفل حقل الإدخال عندما تكون الفهرسة معطلة. إذا كان الزر مخفيًا، فافتح الإعدادات > الفهرسة لتفعيل الفهرسة.",
|
||||
"settings.indexing.globalEnable.title": "تمكين عام",
|
||||
"settings.indexing.globalEnable.description": "تمكين الفهرسة لكل مساحة عمل.",
|
||||
"settings.indexing.projectEnable.title": "تمكين لهذا المشروع",
|
||||
|
||||
+3
@@ -1130,6 +1130,9 @@ export const dict = {
|
||||
"settings.indexing.title": "Indexação",
|
||||
"settings.indexing.enable.title": "Ativar indexação",
|
||||
"settings.indexing.enable.description": "Ativar ou desativar a indexação semântica da base de código.",
|
||||
"settings.indexing.showButton.title": "Exibir o botão quando a indexação estiver desativada",
|
||||
"settings.indexing.showButton.description":
|
||||
"Exiba o botão de indexação abaixo do campo de entrada enquanto a indexação estiver desativada. Se o botão estiver oculto, abra Configurações > Indexação para ativar a indexação.",
|
||||
"settings.indexing.globalEnable.title": "Habilitar globalmente",
|
||||
"settings.indexing.globalEnable.description": "Habilitar indexação para todos os workspaces.",
|
||||
"settings.indexing.projectEnable.title": "Habilitar para este projeto",
|
||||
|
||||
+3
@@ -796,6 +796,9 @@ export const dict = {
|
||||
"settings.indexing.dimension.placeholder": "Auto",
|
||||
"settings.indexing.dimension.title": "Dimenzija vektora",
|
||||
"settings.indexing.enable.description": "Uključite ili isključite semantičko indeksiranje baze koda.",
|
||||
"settings.indexing.showButton.title": "Prikaži dugme kada je indeksiranje isključeno",
|
||||
"settings.indexing.showButton.description":
|
||||
"Prikaži dugme za indeksiranje ispod polja za unos dok je indeksiranje isključeno. Ako je dugme skriveno, otvorite Postavke > Indeksiranje da biste omogućili indeksiranje.",
|
||||
"settings.indexing.enable.title": "Omogući indeksiranje",
|
||||
"settings.indexing.globalEnable.title": "Omogući globalno",
|
||||
"settings.indexing.globalEnable.description": "Omogući indeksiranje za svaki radni prostor.",
|
||||
|
||||
+3
@@ -806,6 +806,9 @@ export const dict = {
|
||||
"settings.indexing.title": "Indeksering",
|
||||
"settings.indexing.enable.title": "Aktivér indeksering",
|
||||
"settings.indexing.enable.description": "Slå semantisk kodebase-indeksering til eller fra.",
|
||||
"settings.indexing.showButton.title": "Vis knappen, når indeksering er slået fra",
|
||||
"settings.indexing.showButton.description":
|
||||
"Vis indekseringsknappen under promptfeltet, mens indeksering er slået fra. Hvis knappen er skjult, skal du åbne Indstillinger > Indeksering for at slå indeksering til.",
|
||||
"settings.indexing.globalEnable.title": "Aktivér globalt",
|
||||
"settings.indexing.globalEnable.description": "Aktivér indeksering for alle arbejdsområder.",
|
||||
"settings.indexing.projectEnable.title": "Aktivér for dette projekt",
|
||||
|
||||
+3
@@ -802,6 +802,9 @@ export const dict = {
|
||||
"settings.indexing.dimension.placeholder": "Auto",
|
||||
"settings.indexing.dimension.title": "Vektordimension",
|
||||
"settings.indexing.enable.description": "Semantische Codebasis-Indizierung ein- oder ausschalten.",
|
||||
"settings.indexing.showButton.title": "Schaltfläche anzeigen, wenn die Indizierung deaktiviert ist",
|
||||
"settings.indexing.showButton.description":
|
||||
"Zeigt die Schaltfläche für die Indizierung unter dem Eingabefeld an, solange die Indizierung deaktiviert ist. Wenn die Schaltfläche ausgeblendet ist, öffnen Sie Einstellungen > Indizierung, um die Indizierung zu aktivieren.",
|
||||
"settings.indexing.enable.title": "Indizierung aktivieren",
|
||||
"settings.indexing.globalEnable.title": "Global aktivieren",
|
||||
"settings.indexing.globalEnable.description": "Indizierung für jeden Workspace aktivieren.",
|
||||
|
||||
@@ -1081,6 +1081,9 @@ export const dict = {
|
||||
"settings.indexing.status.title": "Status",
|
||||
"settings.indexing.enable.title": "Enable indexing",
|
||||
"settings.indexing.enable.description": "Turn semantic codebase indexing on or off.",
|
||||
"settings.indexing.showButton.title": "Show button when indexing is off",
|
||||
"settings.indexing.showButton.description":
|
||||
"Show the indexing button below the prompt while indexing is off. If hidden, open Settings > Indexing to enable indexing.",
|
||||
"settings.indexing.globalEnable.title": "Enable globally",
|
||||
"settings.indexing.globalEnable.description": "Enable indexing for every workspace.",
|
||||
"settings.indexing.projectEnable.title": "Enable for this project",
|
||||
|
||||
+3
@@ -794,6 +794,9 @@ export const dict = {
|
||||
"settings.indexing.title": "Indexación",
|
||||
"settings.indexing.enable.title": "Habilitar indexación",
|
||||
"settings.indexing.enable.description": "Activar o desactivar la indexación semántica de la base de código.",
|
||||
"settings.indexing.showButton.title": "Mostrar el botón cuando la indexación está desactivada",
|
||||
"settings.indexing.showButton.description":
|
||||
"Muestra el botón de indexación debajo del campo de entrada mientras la indexación esté desactivada. Si el botón está oculto, abre Configuración > Indexación para activar la indexación.",
|
||||
"settings.indexing.globalEnable.title": "Habilitar globalmente",
|
||||
"settings.indexing.globalEnable.description": "Habilitar la indexación para cada área de trabajo.",
|
||||
"settings.indexing.projectEnable.title": "Habilitar para este proyecto",
|
||||
|
||||
+3
@@ -722,6 +722,9 @@ export const dict = {
|
||||
"settings.indexing.dimension.placeholder": "Auto",
|
||||
"settings.indexing.dimension.title": "Dimension vectorielle",
|
||||
"settings.indexing.enable.description": "Activer ou désactiver l'indexation sémantique de la base de code.",
|
||||
"settings.indexing.showButton.title": "Afficher le bouton lorsque l’indexation est désactivée",
|
||||
"settings.indexing.showButton.description":
|
||||
"Affichez le bouton d’indexation sous le champ de saisie lorsque l’indexation est désactivée. S’il est masqué, ouvrez Paramètres > Indexation pour activer l’indexation.",
|
||||
"settings.indexing.enable.title": "Activer l'indexation",
|
||||
"settings.indexing.globalEnable.title": "Activer globalement",
|
||||
"settings.indexing.globalEnable.description": "Activer l'indexation pour chaque espace de travail.",
|
||||
|
||||
+3
@@ -970,6 +970,9 @@ export const dict = {
|
||||
"settings.indexing.status.title": "Stato",
|
||||
"settings.indexing.enable.title": "Abilita indicizzazione",
|
||||
"settings.indexing.enable.description": "Attiva o disattiva l'indicizzazione semantica del codebase.",
|
||||
"settings.indexing.showButton.title": "Mostra il pulsante quando l'indicizzazione è disattivata",
|
||||
"settings.indexing.showButton.description":
|
||||
"Mostra il pulsante di indicizzazione sotto il prompt quando l'indicizzazione è disattivata. Se il pulsante è nascosto, apri Impostazioni > Indicizzazione per attivare l'indicizzazione.",
|
||||
"settings.indexing.provider.title": "Provider embedding",
|
||||
"settings.indexing.provider.description": "Scegli il provider usato per generare embedding per la ricerca semantica.",
|
||||
"settings.indexing.model.title": "Modello embedding",
|
||||
|
||||
+3
@@ -787,6 +787,9 @@ export const dict = {
|
||||
"settings.indexing.dimension.placeholder": "自動",
|
||||
"settings.indexing.dimension.title": "ベクトル次元",
|
||||
"settings.indexing.enable.description": "セマンティックコードベースインデックスをオンまたはオフにします。",
|
||||
"settings.indexing.showButton.title": "インデックス作成がオフのときにボタンを表示",
|
||||
"settings.indexing.showButton.description":
|
||||
"インデックス作成がオフの間、プロンプトの下にインデックス作成ボタンを表示します。ボタンが非表示の場合は、設定 > インデックス作成を開いてインデックス作成を有効にしてください。",
|
||||
"settings.indexing.enable.title": "インデックスを有効にする",
|
||||
"settings.indexing.globalEnable.title": "グローバルで有効にする",
|
||||
"settings.indexing.globalEnable.description": "すべてのワークスペースでインデックス作成を有効にします。",
|
||||
|
||||
+3
@@ -1122,6 +1122,9 @@ export const dict = {
|
||||
"settings.indexing.dimension.placeholder": "자동",
|
||||
"settings.indexing.dimension.title": "벡터 차원",
|
||||
"settings.indexing.enable.description": "의미적 코드베이스 인덱싱을 켜거나 끕니다.",
|
||||
"settings.indexing.showButton.title": "인덱싱이 꺼져 있을 때 버튼 표시",
|
||||
"settings.indexing.showButton.description":
|
||||
"인덱싱이 꺼져 있는 동안 프롬프트 아래에 인덱싱 버튼을 표시합니다. 버튼이 숨겨져 있는 경우 설정 > 인덱싱을 열어 인덱싱을 활성화하세요.",
|
||||
"settings.indexing.enable.title": "인덱싱 활성화",
|
||||
"settings.indexing.globalEnable.title": "전역으로 활성화",
|
||||
"settings.indexing.globalEnable.description": "모든 작업 영역에 대해 인덱싱을 활성화합니다.",
|
||||
|
||||
+3
@@ -1122,6 +1122,9 @@ export const dict = {
|
||||
"settings.indexing.status.title": "Status",
|
||||
"settings.indexing.enable.title": "Indexering inschakelen",
|
||||
"settings.indexing.enable.description": "Schakel semantische codebase-indexering in of uit.",
|
||||
"settings.indexing.showButton.title": "Knop weergeven wanneer indexering is uitgeschakeld",
|
||||
"settings.indexing.showButton.description":
|
||||
"Geef de indexeringsknop onder de prompt weer wanneer indexering is uitgeschakeld. Als de knop verborgen is, opent u Instellingen > Indexering om indexering in te schakelen.",
|
||||
"settings.indexing.globalEnable.title": "Globaal inschakelen",
|
||||
"settings.indexing.globalEnable.description": "Indexering inschakelen voor elke werkruimte.",
|
||||
"settings.indexing.projectEnable.title": "Inschakelen voor dit project",
|
||||
|
||||
+3
@@ -1298,6 +1298,9 @@ export const dict = {
|
||||
"settings.indexing.title": "Indeksering",
|
||||
"settings.indexing.enable.title": "Aktiver indeksering",
|
||||
"settings.indexing.enable.description": "Slå semantisk kodebaseindeksering på eller av.",
|
||||
"settings.indexing.showButton.title": "Vis knappen når indeksering er slått av",
|
||||
"settings.indexing.showButton.description":
|
||||
"Vis indekseringsknappen under ledeteksten mens indeksering er slått av. Hvis knappen er skjult, åpner du Innstillinger > Indeksering for å aktivere indeksering.",
|
||||
"settings.indexing.globalEnable.title": "Aktiver globalt",
|
||||
"settings.indexing.globalEnable.description": "Aktiver indeksering for hvert arbeidsområde.",
|
||||
"settings.indexing.projectEnable.title": "Aktiver for dette prosjektet",
|
||||
|
||||
+3
@@ -1301,6 +1301,9 @@ export const dict = {
|
||||
"settings.indexing.dimension.placeholder": "Automatycznie",
|
||||
"settings.indexing.dimension.title": "Wymiar wektora",
|
||||
"settings.indexing.enable.description": "Włącz lub wyłącz semantyczne indeksowanie bazy kodu.",
|
||||
"settings.indexing.showButton.title": "Pokazuj przycisk, gdy indeksowanie jest wyłączone",
|
||||
"settings.indexing.showButton.description":
|
||||
"Pokazuj przycisk indeksowania pod monitem, gdy indeksowanie jest wyłączone. Jeśli przycisk jest ukryty, otwórz Ustawienia > Indeksowanie, aby włączyć indeksowanie.",
|
||||
"settings.indexing.enable.title": "Włącz indeksowanie",
|
||||
"settings.indexing.globalEnable.title": "Włącz globalnie",
|
||||
"settings.indexing.globalEnable.description": "Włącz indeksowanie dla każdego obszaru roboczego.",
|
||||
|
||||
+3
@@ -793,6 +793,9 @@ export const dict = {
|
||||
"settings.indexing.title": "Индексация",
|
||||
"settings.indexing.enable.title": "Включить индексацию",
|
||||
"settings.indexing.enable.description": "Включить или отключить семантическую индексацию кодовой базы.",
|
||||
"settings.indexing.showButton.title": "Показывать кнопку, когда индексация отключена",
|
||||
"settings.indexing.showButton.description":
|
||||
"Показывать кнопку индексации под полем ввода, пока индексация отключена. Если кнопка скрыта, откройте «Настройки > Индексация», чтобы включить индексацию.",
|
||||
"settings.indexing.globalEnable.title": "Включить глобально",
|
||||
"settings.indexing.globalEnable.description": "Включить индексирование для каждого рабочего пространства.",
|
||||
"settings.indexing.projectEnable.title": "Включить для этого проекта",
|
||||
|
||||
+3
@@ -783,6 +783,9 @@ export const dict = {
|
||||
"settings.indexing.title": "การสร้างดัชนี",
|
||||
"settings.indexing.enable.title": "เปิดใช้งานการสร้างดัชนี",
|
||||
"settings.indexing.enable.description": "เปิดหรือปิดการสร้างดัชนีโค้ดเบสเชิงความหมาย",
|
||||
"settings.indexing.showButton.title": "แสดงปุ่มเมื่อปิดการสร้างดัชนี",
|
||||
"settings.indexing.showButton.description":
|
||||
"แสดงปุ่มการสร้างดัชนีใต้ช่องพรอมต์ขณะปิดการสร้างดัชนี หากซ่อนปุ่มไว้ ให้เปิด การตั้งค่า > การสร้างดัชนี เพื่อเปิดใช้การสร้างดัชนี",
|
||||
"settings.indexing.globalEnable.title": "เปิดใช้งานแบบโกลบอล",
|
||||
"settings.indexing.globalEnable.description": "เปิดใช้งานการทำดัชนีสำหรับทุกพื้นที่ทำงาน",
|
||||
"settings.indexing.projectEnable.title": "เปิดใช้งานสำหรับโปรเจกต์นี้",
|
||||
|
||||
+3
@@ -1121,6 +1121,9 @@ export const dict = {
|
||||
"settings.indexing.status.title": "Durum",
|
||||
"settings.indexing.enable.title": "İndekslemeyi etkinleştir",
|
||||
"settings.indexing.enable.description": "Anlamsal kod tabanı indekslemeyi açın veya kapatın.",
|
||||
"settings.indexing.showButton.title": "İndeksleme kapalıyken düğmeyi göster",
|
||||
"settings.indexing.showButton.description":
|
||||
"İndeksleme kapalıyken istem alanının altında indeksleme düğmesini göster. Düğme gizliyse indekslemeyi etkinleştirmek için Ayarlar > İndeksleme'yi açın.",
|
||||
"settings.indexing.globalEnable.title": "Genel olarak etkinleştir",
|
||||
"settings.indexing.globalEnable.description": "Her çalışma alanı için dizine eklemeyi etkinleştir.",
|
||||
"settings.indexing.projectEnable.title": "Bu proje için etkinleştir",
|
||||
|
||||
+3
@@ -1120,6 +1120,9 @@ export const dict = {
|
||||
"settings.indexing.status.title": "Статус",
|
||||
"settings.indexing.enable.title": "Увімкнути індексування",
|
||||
"settings.indexing.enable.description": "Увімкніть або вимкніть семантичне індексування кодової бази.",
|
||||
"settings.indexing.showButton.title": "Показувати кнопку, коли індексування вимкнено",
|
||||
"settings.indexing.showButton.description":
|
||||
"Показувати кнопку індексування під полем введення, поки індексування вимкнено. Якщо кнопку приховано, відкрийте «Налаштування > Індексування», щоб увімкнути індексування.",
|
||||
"settings.indexing.globalEnable.title": "Увімкнути глобально",
|
||||
"settings.indexing.globalEnable.description": "Увімкнути індексування для кожного робочого простору.",
|
||||
"settings.indexing.projectEnable.title": "Увімкнути для цього проєкту",
|
||||
|
||||
+3
@@ -772,6 +772,9 @@ export const dict = {
|
||||
"settings.indexing.title": "索引",
|
||||
"settings.indexing.enable.title": "启用索引",
|
||||
"settings.indexing.enable.description": "打开或关闭语义代码库索引。",
|
||||
"settings.indexing.showButton.title": "索引关闭时显示按钮",
|
||||
"settings.indexing.showButton.description":
|
||||
"索引关闭时,在提示词下方显示索引按钮。如果该按钮已隐藏,请打开“设置 > 索引”以启用索引。",
|
||||
"settings.indexing.globalEnable.title": "全局启用",
|
||||
"settings.indexing.globalEnable.description": "为每个工作区启用索引。",
|
||||
"settings.indexing.projectEnable.title": "为此项目启用",
|
||||
|
||||
+3
@@ -1456,6 +1456,9 @@ export const dict = {
|
||||
"settings.indexing.dimension.placeholder": "自動",
|
||||
"settings.indexing.dimension.title": "向量維度",
|
||||
"settings.indexing.enable.description": "開啟或關閉語意程式碼庫索引。",
|
||||
"settings.indexing.showButton.title": "索引關閉時顯示按鈕",
|
||||
"settings.indexing.showButton.description":
|
||||
"索引關閉時,在提示詞下方顯示索引按鈕。如果該按鈕已隱藏,請開啟「設定 > 索引」以啟用索引。",
|
||||
"settings.indexing.enable.title": "啟用索引",
|
||||
"settings.indexing.globalEnable.title": "全域啟用",
|
||||
"settings.indexing.globalEnable.description": "為每個工作區啟用索引。",
|
||||
|
||||
@@ -314,6 +314,13 @@ export interface IndexingStatusLoadedMessage {
|
||||
status: IndexingStatus
|
||||
}
|
||||
|
||||
export interface IndexingSettingsLoadedMessage {
|
||||
type: "indexingSettingsLoaded"
|
||||
settings: {
|
||||
showButtonWhenDisabled: boolean
|
||||
}
|
||||
}
|
||||
|
||||
export interface KiloEmbeddingModelsLoadedMessage {
|
||||
type: "kiloEmbeddingModelsLoaded"
|
||||
catalog: KiloEmbeddingModelCatalog
|
||||
@@ -994,6 +1001,7 @@ export type ExtensionMessage =
|
||||
| DeviceAuthCancelledMessage
|
||||
| NavigateMessage
|
||||
| IndexingStatusLoadedMessage
|
||||
| IndexingSettingsLoadedMessage
|
||||
| KiloEmbeddingModelsLoadedMessage
|
||||
| ProvidersLoadedMessage
|
||||
| AgentsLoadedMessage
|
||||
|
||||
@@ -430,6 +430,10 @@ export interface RequestIndexingStatusMessage {
|
||||
type: "requestIndexingStatus"
|
||||
}
|
||||
|
||||
export interface RequestIndexingSettingsMessage {
|
||||
type: "requestIndexingSettings"
|
||||
}
|
||||
|
||||
export interface RequestKiloEmbeddingModelsMessage {
|
||||
type: "requestKiloEmbeddingModels"
|
||||
}
|
||||
@@ -1164,6 +1168,7 @@ export type WebviewMessage =
|
||||
| RequestConfigMessage
|
||||
| RequestGlobalConfigMessage
|
||||
| RequestIndexingStatusMessage
|
||||
| RequestIndexingSettingsMessage
|
||||
| RequestKiloEmbeddingModelsMessage
|
||||
| UpdateConfigMessage
|
||||
| OpenSettingsTabRequest
|
||||
|
||||
Reference in New Issue
Block a user