Файли
openidea/src/features/settings/languages/Sdk.module.css
T
l0ng-ai 1e00ea5ee2 feat: Third pass aligning core experience with IntelliJ IDEA
Project & files
- Project view modes (Project Files / Open Files / All Changed Files /
  Scratches); External Libraries for Python, JDK (src.zip), Node, Cargo, Go,
  Maven/Gradle jars; read-only jar/zip browsing
- ⌘N New popup with type search and more file kinds; New Project, Rename
  Project, Reload All from Disk, Export/Import Settings, Power Save Mode
- File type associations, extra content roots and exclude patterns (indexed
  and watched without reopening the project)

Editor & navigation
- Find bar: search scope (comments/strings), Preserve Case, Exclude, multiline,
  history; Find in Files: Module scope, custom pattern scopes, multiline
- Search Everywhere filters, Assign Shortcut, settings results; named bookmark
  lists, file/folder bookmarks; Structure filters and Show Inherited; Recent
  Locations timestamps and breadcrumbs; Code Vision author
- Completion options, editor tab placement/layout, inline completion (LSP 3.18)
- Spell checking (Typo inspection, ide-spell) and Inspections settings with
  custom profiles; Code Style schemes, formatter markers, Do not format

Run, VCS, services, database
- Typed run configurations (Shell, Program, npm, Gradle, Maven, Docker,
  Compound), Modify options, Before launch, env dialog, Current File,
  Emulate terminal (PTY)
- Git log graph/view options, Go to Hash/Branch/Tag, date filter keeps the
  graph; Pull/Merge/Rebase dialogs, Manage Remotes, Worktrees
- Generic Services host (Docker connections/registries, run sessions); TODO
  scope/changes tabs with changelists; Coverage report import
- Data sources: wire-compatible vendors, URL import, SSL certs, Options,
  Schemas and Advanced tabs, color and comment

Workbench
- Run Anything, Customize Main Toolbar, named tool window layouts, menu
  completeness, Code Cleanup, macros, "Don't Show Again", editor banners
- Chinese translations for the new UI

Claude-Session: https://claude.ai/code/session_01SaPPsVPuk6ZTNsoUCNCbMv
2026-10-25 21:24:00 +08:00

360 рядки
6.1 KiB
CSS
Неформатований Анотація Історія

Цей файл містить неоднозначні символи Юнікоду
Цей файл містить символи Юнікоду, які можна сплутати з іншими символами. Якщо ви вважаєте, що це зроблено навмисно, можете сміливо ігнорувати це попередження. Щоб показати їх, скористайтеся кнопкою Escape.
.page {
display: flex;
flex-direction: column;
gap: 10px;
min-width: 0;
}
.sdkField {
display: inline-flex;
align-items: center;
gap: 4px;
min-width: 0;
flex: 1;
max-width: 560px;
}
.sdkSelect {
flex: 1;
min-width: 260px;
}
.interpreterRow {
display: flex;
align-items: center;
gap: 8px;
min-height: var(--h-row);
}
.interpreterLabel {
white-space: nowrap;
color: var(--fg);
}
.interpreterLabel::after {
content: ":";
}
.path {
color: var(--fg-muted);
font-family: var(--font-mono);
font-size: var(--fs-small);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
/* IDEA table with a toolbar strip on top (+ − ↑ ⟳). */
.tablePanel {
display: flex;
flex-direction: column;
min-height: 0;
flex: 1;
border-radius: var(--radius-small);
box-shadow: inset 0 0 0 1px var(--border);
overflow: hidden;
}
.tableToolbar {
display: flex;
align-items: center;
gap: 2px;
height: 28px;
padding: 0 4px;
border-bottom: 1px solid var(--border);
}
.spacer {
flex: 1;
}
.tableScroll {
overflow: auto;
min-height: 160px;
max-height: 360px;
}
.table {
width: 100%;
border-collapse: collapse;
}
.table th {
position: sticky;
top: 0;
height: var(--h-header);
padding: 0 8px;
text-align: left;
font-weight: normal;
color: var(--fg-secondary);
background: var(--bg-island);
border-bottom: 1px solid var(--border);
}
.table td {
height: var(--h-list-row);
padding: 0 8px;
white-space: nowrap;
}
.table tbody tr {
cursor: default;
}
.table tbody tr:hover {
background: var(--bg-hover);
}
.table tbody tr.selected,
.table tbody tr.selected:hover {
background: var(--bg-list-selected);
}
.table tbody tr:focus-visible {
outline: 2px solid var(--focus-ring);
outline-offset: -2px;
}
.versionCell {
color: var(--fg-secondary);
font-variant-numeric: tabular-nums;
}
.empty {
padding: 18px 8px;
text-align: center;
color: var(--fg-muted);
}
.error {
color: var(--danger);
white-space: pre-wrap;
}
.installBar {
display: flex;
align-items: center;
gap: 6px;
padding: 4px;
border-bottom: 1px solid var(--border);
}
.installInput {
flex: 1;
}
.log {
margin: 0;
max-height: 140px;
overflow: auto;
padding: 6px 8px;
border-radius: var(--radius-small);
background: var(--bg-editor);
color: var(--fg-secondary);
font-family: var(--font-mono);
font-size: var(--fs-small);
white-space: pre-wrap;
box-shadow: inset 0 0 0 1px var(--border);
}
.status {
display: flex;
align-items: center;
gap: 6px;
color: var(--fg-secondary);
}
/* Add Python Interpreter dialog */
.dialogBody {
display: grid;
grid-template-columns: 150px minmax(0, 1fr);
min-height: 300px;
}
.kinds {
margin: 0;
padding: 6px;
list-style: none;
border-right: 1px solid var(--border);
}
.kind {
display: flex;
align-items: center;
gap: 6px;
width: 100%;
height: var(--h-list-row);
padding: 0 8px;
border: 0;
border-radius: var(--radius-row);
background: transparent;
color: var(--fg);
font: inherit;
text-align: left;
}
.kindOn {
background: var(--bg-list-selected);
}
.form {
display: flex;
flex-direction: column;
gap: 6px;
padding: 10px 14px;
min-width: 0;
}
.radios {
display: flex;
gap: 16px;
}
.radio {
display: inline-flex;
align-items: center;
gap: 6px;
}
.pathRow {
display: flex;
align-items: center;
gap: 4px;
flex: 1;
min-width: 0;
}
.pathInput {
flex: 1;
min-width: 0;
}
/* Project Structure */
.structure {
display: grid;
grid-template-columns: minmax(0, 1fr) 260px;
gap: 10px;
min-height: 420px;
}
.structureTree {
display: flex;
flex-direction: column;
min-height: 0;
border-radius: var(--radius-small);
box-shadow: inset 0 0 0 1px var(--border);
overflow: hidden;
}
.markBar {
display: flex;
align-items: center;
gap: 4px;
height: 30px;
padding: 0 6px;
border-bottom: 1px solid var(--border);
color: var(--fg-secondary);
}
.markButton {
display: inline-flex;
align-items: center;
gap: 4px;
height: 22px;
padding: 0 6px;
border: 0;
border-radius: var(--radius-toolbar-button);
background: transparent;
color: var(--fg);
font: inherit;
}
.markButton:hover:not(:disabled) {
background: var(--bg-toolbar-hover);
}
.markButton[aria-pressed="true"] {
background: var(--bg-toolbar-selected);
}
.markButton:disabled {
color: var(--fg-faint);
}
.treeScroll {
flex: 1;
min-height: 0;
overflow: auto;
}
.treeRow {
display: flex;
align-items: center;
gap: 4px;
min-width: 0;
}
.treeName {
overflow: hidden;
text-overflow: ellipsis;
}
.source {
color: var(--vcs-untracked);
}
.roots {
display: flex;
flex-direction: column;
gap: 12px;
overflow: auto;
}
.rootGroup {
display: flex;
flex-direction: column;
gap: 2px;
}
.rootTitle {
display: flex;
align-items: center;
gap: 6px;
font-weight: 600;
}
.rootTitle.sourceTitle {
color: var(--syn-keyword);
}
.rootTitle.testTitle {
color: var(--success);
}
.rootTitle.resourcesTitle {
color: var(--syn-string);
}
.rootTitle.testResourcesTitle {
color: var(--success);
}
.rootTitle.excludedTitle {
color: var(--warning);
}
.rootHint {
color: var(--fg-subtle);
font-family: var(--font-ui);
}
.linkButton {
padding: 0;
border: 0;
background: none;
color: var(--link);
font: inherit;
cursor: pointer;
}
.linkButton:hover {
color: var(--link-hover);
text-decoration: underline;
}
.rootItem {
display: flex;
align-items: center;
gap: 4px;
padding-left: 20px;
min-height: 22px;
font-family: var(--font-mono);
font-size: var(--fs-small);
}
.rootPath {
flex: 1;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.note {
color: var(--fg-subtle);
font-size: var(--fs-small);
line-height: 1.4;
}
.search {
width: 180px;
}
/* Project Structure: content roots and "Exclude files". */
.contentRoot {
padding-left: 4px;
font-weight: 600;
}
.excludeFiles {
display: grid;
grid-template-columns: auto minmax(0, 1fr);
align-items: center;
column-gap: 8px;
row-gap: 2px;
padding: 6px 8px;
border-top: 1px solid var(--border);
}
.excludeInput {
width: 100%;
}
.excludeHint {
grid-column: 2;
color: var(--fg-subtle);
font-size: var(--fs-small);
}