vscode 의 몇 가지 기본 설정 에 대한 상세 한 설명

13701 단어 vscode배치 하 다.
vscode 소개
vscode 가 무엇 입 니까?
쉽게 말 하면 vscode 는 id 가 아 닌 텍스트 편집기 입 니 다.이것 은 vscode 는 편집 환경 만 제공 하고 컴 파일 환경 을 제공 하지 않 으 며 vscode 로 개발 환경 을 통합 하려 면 다음 과 같은 몇 단 계 를 거 쳐 야 한 다 는 것 이다.
  • 필요 한 컴 파일 러 설치(예 를 들 어 mingw,python,texlive 등)
  • 해당 컴 파일 환경 설정(환경 변수 추가 등)
  • 일치 하 는 vscode 확장 플러그 인 설치
  • 확장 플러그 인 이 제공 하 는'속성'을 통 해 외부 컴 파일 러 를 vscode
  • 에 연결 합 니 다.
    또한,하나의 텍스트 편집기 가 프로그램 을 실행 하 는 기능 을 제공 하지 않 을 것 입 니 다.vscode 도 마찬가지 입 니 다.프로그램 을 실행 하려 면 다음 과 같은 몇 가지 방법 이 있 습 니 다.
  • vscode 의 일부 확장 플러그 인 에 서 는 설 정 된 터미널 과 실행 프로그램의 명령 을 제공 합 니 다.우 리 는 직접 사용 할 수 있 습 니 다.
  • vscode 에는 프로그램 을 전문 적 으로 실행 하 는 확장 플러그 인 code-runner 가 있 습 니 다.설치 후 사용 할 수 있 습 니 다.
  • vscode 는 여러 가지 단말기 의 인 터 페 이 스 를 제공 합 니 다.우 리 는 vscode 에서 cmd 작은 검 은 상 자 를 사용 하 는 것 처럼 단말 기 를 사용 할 수 있 습 니 다.이로써 우 리 는 vscode 단말기 에서 프로그램 을 실행 할 수 있 습 니 다.
  • 이렇게 해서 우 리 는 vscode 를 사용 하여 프로그램 을 컴 파일 하고 실행 하 는 방법 을 대체적으로 알 게 되 었 다.
    vscode 설정
    우선,우 리 는 vscode 설정 의 최소 단원 이 폴 더 라 는 것 을 명 확 히 해 야 합 니 다.즉,폴 더 열기 기능 을 사용 하면 서로 다른 폴 더 를 서로 다른 외부 컴 파일 러 에 연결 하고 서로 다른 빠 른 작업 을 실현 하 며 debug 를 신속하게 진행 하고 플러그 인 을 확장 하 는 기능 을 상세 하 게 설정 할 수 있 습 니 다.
    따라서 우 리 는 먼저 vscode 의 설정 구 조 를 속람 합 니 다.다음 그림 과 같 습 니 다.
    在这里插入图片描述
    볼 수 있다.
  • vscode 에 전역 설정 settings.json 이 있 습 니 다.그 다음 에 작업 공간 과 작업 공간 에 settings.json 을 설정 하고 한 작업 공간 에 여러 개의 폴 더 가 포함 되 어 있 습 니 다.
  • 각 폴 더 에는 같은.vscode 폴 더 가 있 습 니 다.이 폴 더 에 있 는 세 개의 파일 settings.json,tasks.json,launch.json 이 설정 의 핵심 입 니 다.
  • 각 폴 더 는 설정 을 통 해 서로 다른 언어 를 실행 하 는 파일 을 컴 파일 할 수 있 습 니 다.c+,python 과 html 는 같은 작업 공간 을 통 해 직접 접근 할 수 있 습 니 다.이것 이 바로 vscode 의 집성 과 편리 성 입 니 다.
  • 지금 우 리 는 한 가지 씩 말한다.
    파일 구조
    vscode 는 3 급 파일 구 조 를 제공 합 니 다.작업 영역 에서 폴 더 까지 하나의 파일 로:
  • 작업 영역 은 vscode 가 제공 하 는 폴 더 의'집합'입 니 다.하나의 작업 영역 은 여러 개의 폴 더 를 포함 할 수 있 습 니 다.마치 하나의 폴 더 가 여러 개의 파일 을 포함 할 수 있 는 것 과 같 습 니 다.
  • 폴 더 는 vscode 설정 의 최소 작업 단위 입 니 다.vscode 는 하나의 파일 에 설정 할 수 없습니다.
  • 서로 다른 작업 공간 에서 우 리 는 서로 다른 확장 플러그 인 을 사용 하거나 사용 하지 않 고 메모리 절약
  • 을 선택 할 수 있 습 니 다.
    settings.json
    이 json 파일 에서 우 리 는 키 가 맞 는 방식 으로 vscode 에 내 장 된 플러그 인의 각종 속성 을 설정 하거나 확장 할 수 있 습 니 다.그 중에서 외부 컴 파일 러 주소,각종 컴 파일 선 호 등 을 포함 합 니 다.
    동시에 vscode 는 겹겹이 포 함 된 settings 를 제공 합 니 다.
    在这里插入图片描述
  • 높 은 곳 에서 낮은 곳 까지 각각 전역 설정,작업 공간 설정,폴 더 설정 이다.전역 설정 은 기본적으로 ctrl+shift+P 를 통 해 settings.json 을 입력 하여 엽 니 다.
  • 우리 가 폴 더 설정 에 설정 한 속성 은 작업 영역 설정 을 덮어 쓰 고 전체 설정 을 덮어 쓰 며 반대로 성립 되 지 않 습 니 다.
  • 따라서 전체 설정,예 를 들 어 편집기 글꼴 등 은 user settings.json 에서 설정 합 니 다.작업 영역 은 설명 하지 않 고 모든 폴 더 에 대해 서로 다른 설정 을 합 니 다.예 를 들 어 서로 다른 폴 더 에서 서로 다른 python 환경 을 사용 하려 면 folder settings(즉 폴 더 내부 의 settings.json)에 해당 하 는 내용 을 설정 하 는 것 을 선택 하 십시오.
  • tasks.json
  • Liux 시스템 을 사용 할 때 우 리 는 작은 발 이 원래 편리 하 게 일부 기능 을 실현 하도록 사용자 정의 할 때 vscode 는 tasks 를 사용 하여 편리 한 기능 을 신속하게 실현 하 는 것 을 지원 합 니 다.
  • 일부 확장 플러그 인 은 봉 인 된 task 를 직접 실행 할 수 있 습 니 다.우 리 는'현재 파일 컴 파일','불필요 한 파일 삭제'등 다양한 task 를 사용자 정의 할 수 있 습 니 다.
  • tasks 가 직접 정의 하 는 것 보다 더 편리 한 것 은 vscode 가 특정한 경 로 를 빠르게 접근 하 는 방식 을 제공 하 는 것 입 니 다.예 를 들 어 현재 폴 더 의 경로,vscode 가 열 린 폴 더 의 경로,현재 파일 의 경로,현재 파일 의 확장 이름 이 없 는 이름 등 입 니 다.
  • tasks.json 에서 정의 하 는 작업 은 현재 폴 더(이 폴 더 를 포함 하 는 작업 영역)에서 만 사용 할 수 있 습 니 다.
  • launch.json
    이 내용 은 주로 디 버 깅 을 지원 하 는 데 사 용 됩 니 다.**서로 다른 언어 에 대한 확장 플러그 인 은 서로 다른 템 플 릿 을 제공 합 니 다.**f5 를 누 르 면 템 플 릿 을 선택 하고 파일 을 생 성 할 수 있 습 니 다.
    vscode 의 장점
  • 예쁘다
  • 집성 이 강하 다
  • 설정 이 되 어 있 으 면 편리 하고 언제든지 기능 을 추가 할 수 있 습 니 다
  • 확장 이 매우 풍부 하 다
  • 인 스 턴 스 설정
    vscode 의 설정 원 리 를 알 게 되 었 습 니 다.저 는 아래 에서 제 가 설정 한 내용 을 참고 하도록 하 겠 습 니 다.
    settings.json 전역 설정
    
    {
    	//vscode     ,     cmd
     	"terminal.integrated.shell.windows": "C:\\WINDOWS\\System32\\cmd.exe",
     	//             
     	"explorer.confirmDragAndDrop": false,
     	//    vscode
     	"update.mode": "manual",
     	//    ,           
     	"files.autoSave": "afterDelay",
     	//task                
     	"task.quickOpen.history": 0,
    }
    python
    
    {	
    	//      pylint
     	//"python.linting.pylintEnabled": true,
     	"python.linting.enabled": true,
     	//    pylint          ,         
     	//"python.linting.pylintArgs": [
     	// "--generate-members"
     	//],
     	//                 
     	"python.autoComplete.addBrackets": false,
     	//    python           
     	"python.jediEnabled": true,
     	//python     
     	"python.pythonPath": "C:\\apps\\Anaconda\\python.exe",
     	//python         
     	"python.autoComplete.extraPaths": [
     	 "C:/apps/Anaconda/Lib/site-packages/",
     	 "C:/apps/Anaconda/Scripts/"
        ],
    }
    c,c++
    
    {
     "files.associations": {
     "*.tcc": "cpp",
     "array": "cpp",
     "atomic": "cpp",
     "cctype": "cpp",
     "clocale": "cpp",
     "cmath": "cpp",
     "cstdarg": "cpp",
     "cstddef": "cpp",
     "cstdint": "cpp",
     "cstdio": "cpp",
     "cstdlib": "cpp",
     "cwchar": "cpp",
     "cwctype": "cpp",
     "deque": "cpp",
     "unordered_map": "cpp",
     "vector": "cpp",
     "exception": "cpp",
     "algorithm": "cpp",
     "functional": "cpp",
     "iterator": "cpp",
     "memory": "cpp",
     "memory_resource": "cpp",
     "numeric": "cpp",
     "optional": "cpp",
     "random": "cpp",
     "string": "cpp",
     "string_view": "cpp",
     "system_error": "cpp",
     "tuple": "cpp",
     "type_traits": "cpp",
     "utility": "cpp",
     "fstream": "cpp",
     "initializer_list": "cpp",
     "iosfwd": "cpp",
     "iostream": "cpp",
     "istream": "cpp",
     "limits": "cpp",
     "new": "cpp",
     "ostream": "cpp",
     "sstream": "cpp",
     "stdexcept": "cpp",
     "streambuf": "cpp",
     "typeinfo": "cpp"
     }
    }
    라텍스
    
    {
    	//    
    	"latex-workshop.latex.tools": [
     {
     "name": "latexmk",
     "command": "latexmk",
     "args": [
     "-synctex=1",
     "-interaction=nonstopmode",
     "-file-line-error",
     "-pdf",
     "%DOC%"
     ]
     },
     {
     "name": "xelatex",
     "command": "xelatex",
     "args": [
     "-synctex=1",
     "-interaction=nonstopmode",
     "-file-line-error",
     "%DOC%"
     ]
     }, 
     {
     "name": "pdflatex",
     "command": "pdflatex",
     "args": [
     "-synctex=1",
     "-interaction=nonstopmode",
     "-file-line-error",
     "%DOC%"
     ]
     },
     {
     "name": "bibtex",
     "command": "bibtex",
     "args": [
     "%DOCFILE%"
     ]
     }
     ],
    	"latex-workshop.latex.recipes": [
     {
     "name": "xelatex",
     "tools": [
     "xelatex"
     ]
      },
     {
     "name": "latexmk",
     "tools": [
     "latexmk"
     ]
     },
     {
     "name": "pdflatex -> bibtex -> pdflatex*2",
     "tools": [
     "pdflatex",
     "bibtex",
     "pdflatex",
     "pdflatex"
     ]
     }
     ],
     //         
     "latex-workshop.latex.clean.fileTypes": [
     "*.aux",
     "*.bbl",
     "*.blg",
     "*.idx",
     "*.ind",
     "*.lof",
     "*.lot",
     "*.out",
     "*.toc",
     "*.acn",
     "*.acr",
     "*.alg",
     "*.glg",
     "*.glo",
     "*.gls",
     "*.ist",
     "*.fls",
     "*.log",
     "*.fdb_latexmk",
     "*.gz"
     ],
     //        
     "latex-workshop.message.error.show": false,
     //        
     "latex-workshop.message.information.show": false,
     //        
     "latex-workshop.message.warning.show": false,
     //         
     "latex-workshop.latex.autoBuild.run": "never",
     //     tab  
     "latex-workshop.view.pdf.viewer": "tab",
    } 
    tasks.json 대 C/C+
    
    {
     "version": "2.0.0",
     "command": "g++",
     "args": ["-g","${file}","-o","${fileBasenameNoExtension}.exe"], //       
     "problemMatcher": {
     "owner": "cpp",
     "fileLocation": ["relative", "\\"],
     "pattern": {
     "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
     "file": 1,
     "line": 2,
     "column": 3,
     "severity": 4,
     "message": 5
     }
     }
    }
    asymptote 로 그림 을 그린 후.asy 파일 을 컴 파일 하고 불필요 한 파일 을 삭제 하 며 결 과 를 특정 폴 더 로 이동 합 니 다.
    
    {
     // See https://go.microsoft.com/fwlink/?LinkId=733558
     // for the documentation about the tasks.json format
     "version": "2.0.0",
     "tasks": [
     //  
     {
     // task        
     "label": "Generate EPS",
     //    
     "type": "shell",
     //  
     "command": "asy",
     //  
     "args": [
     "-f",
     "eps",
     //$     vscode         ,    
     //      
     "${file}"
     ],
     //    
     "group": "build",
     //    
     "problemMatcher": []
     },
     //    
     {
     "label": "Delete FILE",
     "type": "shell",
     "command": "del",
     "args": [
     "*.aux",
     "*.log",
     "*.dvi",
     "*.pdf"
     ],
     //   none task   build task        
     "group": "none",
     "problemMatcher": []
     },
     //    eps        
     {
     "label": "Move EPS",
     "type": "shell",
     "command": "move",
     "args": [
     "/Y",
     //$     vscode         ,    
     //      
     "${workspaceFolder}\\${fileBasenameNoExtension}.eps",
     "C:\\Pt_Latex\\Reources\\"
     ],
     "group": "build",
     //         ,         
     "dependsOn": [
     "Delete FILE"
     ],
     "problemMatcher": []
     }
     ]
    }
    launch.json
    C/C++
    
    { 
     "version": "0.2.0", 
     "configurations": [ 
     
     { 
     "name": "(gdb) Launch", //     ,                
     "type": "cppdbg", //     ,     cppdbg 
     "request": "launch", //       ,   launch(  ) attach(  ) 
     "program": "${workspaceFolder}/${fileBasenameNoExtension}.exe",//              
     "args": [], //                 ,        
     "stopAtEntry": false, //   true            ,     false 
     "cwd": "${workspaceFolder}", //           ,   ${workspaceFolder}        
     "environment": [], 
     "externalConsole": true, //             ,     true      
     "MIMode": "gdb", 
     "miDebuggerPath": "C:\\apps\\MinGW\\bin\\gdb.exe", // miDebugger   ,      MinGw      
     "preLaunchTask": "g++", //             ,       ,c++ g++, c gcc 
     "setupCommands": [ 
     	{ 
     		"description": "Enable pretty-printing for gdb", 
      "text": "-enable-pretty-printing", 
      "ignoreFailures": true 
     	} 
     ] 
     } 
     ] 
    }
    python(기본 값 으로)
    
    {
     //    IntelliSense       。 
     //             。
     //        ,   : https://go.microsoft.com/fwlink/?linkid=830387
     "version": "0.2.0",
     "configurations": [
     
     {
     "name": "Python:     ",
     "type": "python",
     "request": "launch",
     "program": "${file}",
     "console": "integratedTerminal",
     //          
     "stopOnEntry": false
     }
     ]
    }
    이 vscode 에 관 한 몇 가지 기본 설정 에 관 한 글 은 여기까지 소개 되 었 습 니 다.더 많은 vscode 기본 설정 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 응원 바 랍 니 다!

    좋은 웹페이지 즐겨찾기