microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
162.19k stars 28.55k forks source link

Cmd + P should auto copy selection #169501

Closed tjx666 closed 1 year ago

tjx666 commented 1 year ago

When focus on editor, should copy editor selection. When focus on terminal, should copy terminal selection.

meganrogge commented 1 year ago

can you provide a gif and your settings.json? /label info-needed

tjx666 commented 1 year ago
{
    "debug.console.fontFamily": "'MesloLGS NF', 'Monaco'",
    "debug.javascript.codelens.npmScripts": "never",
    "diffEditor.ignoreTrimWhitespace": false,
    "debug.allowBreakpointsEverywhere": true,
    "explorer.autoRevealExclude": {
        "**/node_modules": false
    },
    "explorer.confirmDelete": false,
    "explorer.copyRelativePathSeparator": "/",
    "files.autoSave": "onFocusChange",
    "files.exclude": {
        "**/CVS": false,
        "**/.DS_Store": false,
        "**/Thumbs.db": false
    },
    // "git.mergeEditor": true,
    "files.maxMemoryForLargeFilesMB": 8192,
    "files.refactoring.autoSave": false,
    "git.autofetch": true,
    // "git.branchProtection": ["master", "main"],
    "git.closeDiffOnOperation": true,
    "git.confirmSync": false,
    "git.detectSubmodules": false,
    "git.enableSmartCommit": true,
    "git.timeline.showUncommitted": true,
    "scm.inputFontFamily": "editor",
    "search.useIgnoreFiles": true,
    "security.workspace.trust.untrustedFiles": "open",
    "settingsSync.ignoredSettings": ["explorer.fileNesting.patterns"],
    "telemetry.telemetryLevel": "off",
    "terminal.integrated.shellIntegration.enabled": true,
    // "terminal.integrated.smoothScrolling": true,
    "terminal.integrated.scrollback": 3000,
    "testExplorer.useNativeTesting": true,
    "translation.target-language": "zh-CN",
    "window.title": "${activeEditorMedium}${separator}${rootName}",
    "editor.experimental.pasteActions.enabled": true,
    "markdown.experimental.editor.pasteLinks.enabled": true,
    // "http.proxy": "http://127.0.0.1:7890",
    // "typescript.suggest.completeFunctionCalls": true,
    // "mergeEditor.diffAlgorithm": "experimental",
    // "editor.stickyScroll.enabled": true,
    // "editor.stickyScroll.maxLineCount": 3,
    // "editor.guides.bracketPairs": "active",
    // "editor.snippets.codeActions.enabled": false,
    // "files.simpleDialog.enable": true,
    // "neoVueHelper.moduleDefinition.enable": true,
    "volar.codeLens.references": false,
    "volar.doctor.statusBarItem": false,
    "volar.vueserver.maxOldSpaceSize": 8192,
    "versionlens.npm.dependencyProperties": [
        "dependencies",
        "devDependencies",
        "peerDependencies",
        "optionalDependencies",
        "pnpm.overrides"
    ],
    "versionlens.npm.jsonPatterns": ["**/package.json", "**/web-module.json"],

    // editor
    "editor.accessibilitySupport": "off",
    "editor.acceptSuggestionOnCommitCharacter": false,
    "editor.wordSeparators": "`~!@#%^&*()-=+[{]}\\|;::'\",.<>/?,。‘’“”;()【】{}《》「」",
    "editor.wordBasedSuggestionsMode": "allDocuments",
    "editor.codeActionsOnSave": {
        "source.addMissingImports": true,
        "source.fixAll.eslint": true,
        "source.fixAll.stylelint": true,
        "source.fixAll.markdownlint": true,
        "source.organizeImports.sortImports": false
    },
    "editor.formatOnSave": true,
    "editor.cursorBlinking": "smooth",
    "editor.cursorSmoothCaretAnimation": true,
    "editor.foldingHighlight": false,
    "editor.fontFamily": "'Fira Code'",
    "editor.fontSize": 12,
    // "editor.find.addExtraSpaceOnTop": false,
    "editor.inlineSuggest.enabled": true,
    "editor.lightbulb.enabled": false,
    "editor.linkedEditing": true,
    "editor.minimap.enabled": false,
    "editor.quickSuggestions": {
        "strings": true,
        "comments": true,
        "other": true
    },
    "editor.smoothScrolling": true,
    "editor.stickyTabStops": true,
    "editor.suggest.preview": true,
    "editor.suggest.shareSuggestSelections": true,
    "editor.suggest.snippetsPreventQuickSuggestions": false,
    "editor.suggestSelection": "first",
    "editor.unfoldOnClickAfterEndOfLine": true,
    "editor.unicodeHighlight.allowedLocales": {
        "zh-hans": true,
        "zh-hant": true
    },
    "editor.wordWrap": "off",
    "editor.semanticTokenColorCustomizations": {
        "[One Dark Pro]": {
            "enabled": true,
            "rules": {
                "variable": {
                    "foreground": "#e5c07b"
                },
                "variable.mutable": {
                    "foreground": "#e06c75",
                    "underline": false
                }
            }
        }
    },

    // workbench
    "workbench.editor.highlightModifiedTabs": true,
    "workbench.editor.historyBasedLanguageDetection": true,
    "workbench.editor.limit.enabled": true,
    "workbench.editor.limit.perEditorGroup": true,
    "workbench.editor.limit.value": 8,
    "workbench.editor.scrollToSwitchTabs": true,
    "workbench.iconTheme": "vscode-icons",
    "workbench.layoutControl.enabled": false,
    "workbench.list.smoothScrolling": true,
    "workbench.localHistory.enabled": false,
    "workbench.tree.indent": 14,

    // terminal
    "terminal.integrated.cursorBlinking": true,
    "terminal.integrated.defaultProfile.osx": "zsh",
    "terminal.integrated.enableBell": true,
    "terminal.integrated.fontFamily": "'MesloLGS NF', 'Monaco'",
    "terminal.integrated.fontSize": 12,
    "terminal.integrated.gpuAcceleration": "on",
    "terminal.integrated.wordSeparators": " ()[]{}',\"`─‘’“”<>()【】{}《》「」::",
    "terminal.integrated.copyOnSelection": true,

    // language
    "emmet.useInlineCompletions": true,
    "files.associations": {
        "*.jsxinc": "javascript",
        "*.env.*": "env"
    },
    "json.maxItemsComputed": 8888,
    "json.schemas": [
        // {
        //     "fileMatch": ["src/manifest.json"],
        //     "url": "https://json.schemastore.org/chrome-manifest.json"
        // },
        {
            "fileMatch": ["*/turbo.json"],
            "url": "https://turborepo.org/schema.json"
        }
    ],
    "html.autoClosingTags": true,
    "markdown.validate.enabled": true,
    "markdown.validate.referenceLinks.enabled": "ignore",
    "javascript.preferences.quoteStyle": "single",
    "javascript.updateImportsOnFileMove.enabled": "always",
    "typescript.preferences.quoteStyle": "single",
    // "typescript.preferences.useAliasesForRenames": false,
    "typescript.tsserver.maxTsServerMemory": 8192,
    "typescript.updateImportsOnFileMove.enabled": "always",
    "typescript.suggest.jsdoc.generateReturns": false,
    "vsicons.associations.files": [
        {
            "icon": "config",
            "extensions": ["env"],
            "format": "svg"
        }
    ],
    "yaml.maxItemsComputed": 20000,
    "[javascript][javascriptreact][typescript][typescriptreact][vue][json][jsonc]": {
        "editor.defaultFormatter": "esbenp.prettier-vscode"
    },
    "[html][css][less][scss][markdown][xml][yaml][svg]": {
        "editor.defaultFormatter": "esbenp.prettier-vscode"
    },

    // extensions
    "adobeExtensionDevtools.ps.includeXMPNamespaces": [
        "hammer.ps-export",
        "hammerPsExport",
        "GaodingPsExport"
    ],
    "adobeExtensionDevtools.ps.descriptorInfoInsertTimeStr": false,
    "extendscript.scriptEvaluation.showResultMessages": false,
    "livePreview.openPreviewTarget": "External Browser",
    "CSSNavigation.enableIdAndClassNameCompletion": false,
    "code-runner.executorMap": {
        "typescript": "ts-node",
        "cpp": "cd $dir && g++ $fileName -std=c++2a -Wall -o $fileNameWithoutExt && ./$fileNameWithoutExt",
        "dart": "/Users/yutengjing/apps/flutter/latest/bin/dart run --enable-asserts $fullFileName",
        "python": "python3 $fullFileName"
    },
    "code-runner.executorMapByFileExtension": {
        ".scpt": "osascript $fullFileName"
    },
    "code-runner.showRunIconInEditorTitleMenu": false,
    "code-runner.terminalRoot": "/",
    "colorInfo.languages": [
        {
            "selector": "css",
            "colors": "css"
        },
        {
            "selector": "less",
            "colors": "css"
        },
        {
            "selector": "scss",
            "colors": "css"
        },
        {
            "selector": "vue",
            "colors": "css"
        }
    ],
    "colorize.languages": ["css", "scss", "less", "xml", "svg"],
    "colorize.enable_search_variables": false,
    "compareView.closeRelatedTab": true,
    "eslint.validate": ["javascript", "javascriptreact", "typescript", "typescriptreact", "vue"],
    "eslint.rules.customizations": [{ "rule": "prettier/prettier", "severity": "off" }],
    "livePreview.portNumber": 8888,
    "fileNestingUpdater.promptOnAutoUpdate": false,
    "gitHistory.showEditorTitleMenuBarIcons": false,
    "gitlens.codeLens.scopes": ["document"],
    "gitlens.currentLine.enabled": false,
    "gitlens.statusBar.format": "${author, }${agoOrDate}${' via 'pullRequest}${ • message|50?}",
    "markdownlint.config": {
        "default": true,
        "MD033": false,
        "MD041": false,
        "MD024": false
    },
    "markdown-preview-github-styles.colorTheme": "light",
    "modifyFileWarning.includedFileGlobs": ["**/node_modules/**/*"],
    "mochaExplorer.autoload": "onStart",
    "vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
    "oneDarkPro.markdownStyle": false,
    "openInExternalApp.openMapper": [
        {
            "extensionName": ["jsxbin", "jsx"],
            "apps": "Adobe Photoshop 2022"
        },
        {
            "extensionName": "ts",
            "apps": [
                {
                    "title": "run ts file",
                    "shellCommand": "ts-node ${file}"
                }
            ]
        }
    ],
    "path-autocomplete.extensionOnImport": true,
    "path-autocomplete.ignoredFilesPattern": "*.md",
    "path-autocomplete.excludedItems": {
        "**/*.+(ts|tsx)": {
            "when": "**/*.+(ts|tsx)",
            "context": "import|require"
        },
        "**": {
            "when": "**/*.+(ts|tsx|js|jsx)",
            "context": "import|require",
            "isDir": true
        }
    },
    "prettier.documentSelectors": ["**/*.svg"],
    "prettier.tabWidth": 4,
    "redhat.telemetry.enabled": false,
    "rust-analyzer.assist.importEnforceGranularity": true,
    "rust-analyzer.assist.importPrefix": "crate",
    "rust-analyzer.checkOnSave.command": "check",
    "rust-analyzer.debug.openDebugPane": true,
    "rust-analyzer.lens.methodReferences": true,
    "ScriptingListener.logFileEncoding": "gbk",
    "svg.preview.mode": "svg",
    "stylelint.validate": [
        "css",
        "less",
        "scss",
        "html"
        // "javascriptreact",
        // "typescriptreact",
    ],
    // "inlineFold.regex": "(class|className)=[`'{\"]([^`'\"}]+)[`'\"}]",
    "template-string-converter.validLanguages": [
        "vue",
        "typescript",
        "javascript",
        "typescriptreact",
        "javascriptreact"
    ],
    "template-string-converter.autoRemoveTemplateString": true,
    "template-string-converter.quoteType": "single",
    "better-comments.tags": [
        {
            "tag": "!:",
            "color": "#FF2D00",
            "strikethrough": false,
            "underline": false,
            "backgroundColor": "transparent",
            "bold": false,
            "italic": false
        },
        {
            "tag": "?:",
            "color": "#3498DB",
            "strikethrough": false,
            "underline": false,
            "backgroundColor": "transparent",
            "bold": false,
            "italic": false
        },
        {
            "tag": "TODO:",
            "color": "#FFBD2A",
            "strikethrough": false,
            "underline": false,
            "backgroundColor": "transparent",
            "bold": false,
            "italic": false
        },
        {
            "tag": "FIXME:",
            "color": "#F06292",
            "strikethrough": false,
            "underline": false,
            "backgroundColor": "transparent",
            "bold": false,
            "italic": false
        },
        {
            "tag": "NOTE:",
            "color": "#FFFF00",
            "strikethrough": false,
            "underline": false,
            "backgroundColor": "transparent",
            "bold": false,
            "italic": false
        }
    ],
    // https://github.com/Gruntfuggly/todo-tree/issues/255#issuecomment-574279033
    "todo-tree.regex.regex": "(?:(?://|#|<!--|;|/\\*\\*?|\\*|(-|\\d+.))\\s*($TAGS))",
    "todo-tree.filtering.useBuiltInExcludes": "file and search excludes",
    "todo-tree.general.tags": ["TODO:", "FIXME:", "NOTE:", "[ ]", "[x]"],
    "todo-tree.highlights.customHighlight": {
        "TODO:": {
            "foreground": "#FFFFFF",
            "background": "#FFBD2A",
            "iconColour": "#FFBD2A"
        },
        "FIXME:": {
            "foreground": "#FFFFFF",
            "background": "#F06292",
            "icon": "flame",
            "iconColour": "#F06292"
        },
        "NOTE:": {
            "foreground": "#808080",
            "background": "#FFFF00",
            "icon": "alert",
            "iconColour": "#FFFF00"
        }
    },
    "todo-tree.highlights.defaultHighlight": {
        "gutterIcon": false,
        "rulerLane": "none"
    },
    "todo-tree.ripgrep.ripgrep": "/usr/local/bin/rg",
    "todo-tree.tree.autoRefresh": false,
    "todo-tree.tree.scanAtStartup": false,
    "tsImportSorter.configuration.autoFormat": "off",
    "tsImportSorter.configuration.wrappingStyle": "prettier",
    "tsImportSorter.configuration.keepUnused": [".*"],
    "tsImportSorter.configuration.nodeProtocol": "always",
    "tsImportSorter.configuration.groupRules": [
        [{ "builtin": true }, "^[@][^/]", {}],
        [
            "^@(/|$)",
            "^apis?(/|$)",
            "^assets(/|$)",
            "^components?(/|$)",
            "^pages?(/|$)",
            "^slices?(/|$)",
            "^store(/|$)",
            "^typings?(/|$)",
            "^utils(/|$)"
        ],
        { "flags": "named", "regex": "^[.]" },
        [{ "flags": "scripts" }, { "flags": "scripts", "regex": "[.]((css)|(less)|(scss))$" }]
    ],
    "vsicons.associations.folders": [
        {
            "icon": "test",
            "extensions": ["test-workspace"],
            "format": "svg"
        },
        {
            "icon": "www",
            "extensions": ["web"],
            "format": "svg"
        },
        {
            "icon": "js",
            "extensions": ["JSX"],
            "format": "svg"
        },
        {
            "icon": "asset",
            "extensions": ["resource"],
            "format": "svg"
        },
        {
            "icon": "config",
            "extensions": ["CSXS"],
            "format": "svg"
        },
        {
            "icon": "temp",
            "extensions": ["playground", "draft"],
            "format": "svg"
        },
        {
            "icon": "redux",
            "extensions": ["slices"],
            "format": "svg"
        }
    ],
    // "fileAccess.position": "right",
    // "fileAccess.uiMode": "simple",
    // "fileAccess.hideWhenWriteable": true,

    // long config
    "cSpell.language": "en-US",
    "cSpell.checkLimit": 888,
    "cSpell.dictionaries": ["myDict"],
    "cSpell.ignorePaths": [
        "node_modules",
        "vscode-extension",
        ".git/objects",
        ".idea",
        ".dart_tool",
        "**/*.lock",
        "**/*.log",
        "package-lock.json",
        "**/pnpm-lock.yaml"
    ],
    "cSpell.enableFiletypes": [
        "env",
        "gitignore",
        "hosts",
        "makefile",
        "properties",
        "shellscript",
        "sql",
        "toml",
        "xml"
    ],
    "cSpell.languageSettings": [
        {
            "languageId": "dart",
            "patterns": [
                {
                    "name": "Dart-RegExp-String",
                    "pattern": "/\\br(['\"]).*?\\1/g"
                }
            ],
            "ignoreRegExpList": ["Dart-RegExp-String"]
        }
    ],
    "cSpell.dictionaryDefinitions": [
        {
            "name": "myDict",
            "path": "/Users/yutengjing/.my-spell-check-dict.txt"
        }
    ],
    "explorer.fileNesting.enabled": true,
    "explorer.fileNesting.expand": false,
    "fileNestingUpdater.autoUpdate": false,
    "fileNestingUpdater.upstreamRepo": "tjx666/vscode-file-nesting-config",
    "fileNestingUpdater.upstreamBranch": "main",
    "window.zoomLevel": 1,
    "workbench.colorTheme": "Dracula"
}
meganrogge commented 1 year ago

It is not expected that Cmd + P would auto copy the selection. Pls run this command to inspect your keybindings Screenshot 2023-01-04 at 8 10 51 AM