VS CODE এ COMPLIER INSTALL করা:
- প্রথমে এখানে ক্লিক করে MingW Download করতে হবে এবং install দিতে হবে।
- install হতে হতে একসময় নিচের মত ডায়লগ বক্স আসবে (১ নাং ছবি)।
- সেখান থেকে mingw-32 base এবং mingw32-gcc-g++ এই দুইটা অপশান সিলেক্ট করে mark for installation এ ক্লিক করতে হবে (২ নাং ছবি)
- এরপর এগুলা করা শেষ হলে বাম পাশের installation বাটনে ক্লিক করে apply changes বাটনে ক্লিক করে apply করে দিতে হবে। তাহলে ধীরে ধীরে এটা ইনষ্টল হয়ে যাবে।
ছবিঃ ১ |
ছবিঃ ২ |
ছবিঃ ৩ |
এখন আমার কাজ হবে mingw এর জন্য environtment variable path ঠিক করা। সেটা করার জন্য নিচের প্রসেস ফলো করুনঃ
- প্রথমে C drive এ যেতে হবে
- এবার সেখান থেকে MingW folder এ ক্লিক করে ভেতরে ঢুকতে হবে (ছবি ১)
- সেখান থেকে bin নামক ফোল্ডারে ক্লিক করে ভিতরে ঢুকতে হবে (ছবি ২)
- এবার একদম উপর থেকে bin এর পাথ সিলেক্ট করে কপি করে নিতে হবে। (ছবি ৩)
- এবার কিবোর্ড থেকে windows বাটনে ক্লিক করতে হবে এবং environment variable সার্চ করতে হবে (ছবি ৪) সেখান থেকে edit the system environment অপশানে ক্লিক করতে হবে।
- এবার environment variable বাটনে ক্লিক করতে হবে (ছবি ৫)
- সেখান থেকে path নামে অপশানে ডাবল ক্লিক করতে হবে (ছবি ৬)
- এবার new বাটনে ক্লিক করে কপি করা পাথ পেষ্ট করতে হবে। এবং ওকে দিয়ে সবগুলা থেকে বের হয়ে যেতে হবে (ছবিঃ ৭)। ব্যাস আপনার কাজ শেষ
ছবিঃ ১ |
ছবিঃ ২ |
ছবিঃ ৩ |
Vs code এ c and c++ করার জন্য দরকারী extensions গুলা হলঃ
Note: অনেক vs code এ দেখা যায় এসব কিছু করার পরও কোড রান করতে সমস্যা হয় বা #include<stdio.h> বা অন্য যেকোন হেডার ফাইলের নিচে লাল দাগ চলে আসে। সেক্ষেত্রে এটা সমাধানের জন্য আপনাকে C/C++ complie run নামে এরো একটা extension install করতে হবে (নিচের ছবি দেখ)। এটা করলেই আপনার কাজ পুরাপুরি শেষ।
VS CODE SETTINGS (json file):
পুরা সেটিং ফাইলটা ডাউনলোড করতে এখানে ক্লিক করুন। অথবা নিচের থেকে কপি করুন;
C USER SNIPPET:
পুরা সেটিং ফাইলটা ডাউনলোড করতে এখানে ক্লিক করুন। অথবা নিচের থেকে কপি করুন;
C++ USER SNIPPET:
পুরা সেটিং ফাইলটা ডাউনলোড করতে এখানে ক্লিক করুন। অথবা নিচের থেকে কপি করুন;
VS code json settings:
{
// terminal font family and font size
"terminal.integrated.fontFamily": "Fira code",
"terminal.integrated.fontSize": 14,
// ===============================================
"update.mode": "none",
"tabnine.experimentalAutoImports": true,
"editor.fontSize": 17,
"editor.formatOnSave": true,
"[html]": {
"editor.defaultFormatter": "vscode.html-language-features"
},
"editor.wordWrap": "on",
// "editor.fontLigatures": true,
// font ligatures for cascadia code
"editor.fontLigatures": "'ss01', 'ss02', 'ss03', 'ss04', 'ss05', 'ss06', 'zero', 'onum'",
"emmet.includeLanguages": {
"javascript": "javascriptreact"
},
"[json]": {
"editor.defaultFormatter": "vscode.json-language-features"
},
// cursor
"editor.cursorSmoothCaretAnimation": "on",
"editor.cursorBlinking": "expand",
"[javascript]": {
"editor.defaultFormatter": "vscode.typescript-language-features"
},
"workbench.editor.language detection": false,
"workbench.editor.enablePreview": false,
// =====================================customize comment color start=================================
"editor.tokenColorCustomizations": {
// "comments": "#ff0000ad",
// customize the theme color:
// "[Learn with Sumit - Shades of Grey]": {
// "comments": "#c3c3c3",
// "variables": "#dc14ff",
// "keywords": "#ff1900",
// "functions": "#f95dc5",
// "types": "#FF0000",
// "strings": "#ff0000",
// "numbers": "#95ffd1",
// },
"textMateRules": [
{
"scope": "comment",
"settings": {
"fontStyle": "italic"
}
}
]
},
/* "editor.tokenColorCustomizations": {
"comments": "#4965a7" // change to any color you like
}, */
//======================================bracket colorizer of vs code start=======================
"editor.guides.bracketPairs": "active",
"editor.fontFamily": "'Cascadia Code','Fira Code','Operator Mono', Consolas, 'Courier New', monospace", //Fira Code
"code-runner.terminalRoot": "/",
"editor.renderWhitespace": "all",
"code-runner.runInTerminal": true,
"code-runner.saveAllFilesBeforeRun": true,
"C_Cpp.default.cStandard": "c11",
"C_Cpp.default.cppStandard": "c++20",
"terminal.integrated.defaultProfile.windows": "Git Bash",
"code-runner.executorMap": {
"javascript": "node",
"java": "cd $dir && javac $fileName && java $fileNameWithoutExt",
//=================================================================
// C and C++ settings
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt.exe && timeout 5s $dir$fileNameWithoutExt.exe < input.txt > output.txt || (echo -n > output.txt && echo 'Time Limit Gone')",
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt.exe && timeout 5s $dir$fileNameWithoutExt.exe < input.txt > output.txt || (echo -n > output.txt && echo 'Time Limit Gone')",
// for terminal output
// "cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt.exe && $dir$fileNameWithoutExt.exe",
//====================================================================
"objective-c": "cd $dir && gcc -framework Cocoa $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
"php": "php",
"python": "python -u",
"perl": "perl",
"perl6": "perl6",
"ruby": "ruby",
"go": "go run",
"lua": "lua",
"groovy": "groovy",
"powershell": "powershell -ExecutionPolicy ByPass -File",
"bat": "cmd /c",
"shellscript": "bash",
"fsharp": "fsi",
"csharp": "scriptcs",
"vbscript": "cscript //Nologo",
"typescript": "ts-node",
"coffeescript": "coffee",
"scala": "scala",
"swift": "swift",
"julia": "julia",
"crystal": "crystal",
"ocaml": "ocaml",
"r": "Rscript",
"applescript": "osascript",
"clojure": "lein exec",
"haxe": "haxe --cwd $dirWithoutTrailingSlash --run $fileNameWithoutExt",
"rust": "cd $dir && rustc $fileName && $dir$fileNameWithoutExt",
"racket": "racket",
"scheme": "csi -script",
"ahk": "autohotkey",
"autoit": "autoit3",
"dart": "dart",
"pascal": "cd $dir && fpc $fileName && $dir$fileNameWithoutExt",
"d": "cd $dir && dmd $fileName && $dir$fileNameWithoutExt",
"haskell": "runhaskell",
"nim": "nim compile --verbosity:0 --hints:off --run",
"lisp": "sbcl --script",
"kit": "kitc --run",
"v": "v run",
"sass": "sass --style expanded",
"scss": "scss --style expanded",
"less": "cd $dir && lessc $fileName $fileNameWithoutExt.css",
"FortranFreeForm": "cd $dir && gfortran $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
"fortran-modern": "cd $dir && gfortran $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
"fortran_fixed-form": "cd $dir && gfortran $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
"fortran": "cd $dir && gfortran $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt"
},
"git.openRepositoryInParentFolders": "never",
"code-runner.executorMapByFileExtension": {
".vb": "cd $dir && vbc /nologo $fileName && $dir$fileNameWithoutExt",
".vbs": "cscript //Nologo",
".scala": "scala",
".jl": "julia",
".cr": "crystal",
".ml": "ocaml",
".zig": "zig run",
".exs": "elixir",
".hx": "haxe --cwd $dirWithoutTrailingSlash --run $fileNameWithoutExt",
".rkt": "racket",
".scm": "csi -script",
".ahk": "autohotkey",
".au3": "autoit3",
".kt": "cd $dir && kotlinc $fileName -include-runtime -d $fileNameWithoutExt.jar && java -jar $fileNameWithoutExt.jar",
".kts": "kotlinc -script",
".dart": "dart",
".pas": "cd $dir && fpc $fileName && $dir$fileNameWithoutExt",
".pp": "cd $dir && fpc $fileName && $dir$fileNameWithoutExt",
".d": "cd $dir && dmd $fileName && $dir$fileNameWithoutExt",
".hs": "runhaskell",
".nim": "nim compile --verbosity:0 --hints:off --run",
".csproj": "dotnet run --project",
".fsproj": "dotnet run --project",
".lisp": "sbcl --script",
".kit": "kitc --run",
".v": "v run",
".vsh": "v run",
".sass": "sass --style expanded",
".cu": "cd $dir && nvcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
".ring": "ring",
".sml": "cd $dir && sml $fileName"
},
"workbench.iconTheme": "material-icon-theme",
"workbench.colorTheme": "Learn with Sumit - Shades of Grey",
}
C User Snippet Setting:
{
// Place your snippets for c here. Each snippet is defined under a snippet name and has a prefix, body and
// description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the
// same ids are connected.
// Example:
// "Print to console": {
// "prefix": "log",
// "body": [
// "console.log('$1');",
// "$2"
// ],
// "description": "Log output to console"
// }
// C structure
"Generating C structure": {
"prefix": "cst",
"body": [
"#include <stdio.h>",
"",
"int main()",
"{",
"",
" $0",
"",
" return 0;",
"}"
],
"description": "C language structure making with main() function"
}
}
C++ User Snippet Setting:
{
// Place your snippets for cpp here. Each snippet is defined under a snippet name and has a prefix, body and
// description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the
// same ids are connected.
// Example:
// "Print to console": {
// "prefix": "log",
// "body": [
// "console.log('$1');",
// "$2"
// ],
// "description": "Log output to console"
// }
// c++ structure
"C++ structure": {
"prefix": "cpp",
"body": [
"#include <bits/stdc++.h>",
"using namespace std;",
"",
"",
"",
"int main()",
"{",
"",
" $0",
"",
" return 0;",
"}"
],
"description": "C++ Structure generating"
},
// c++ class snippets
"class snippet": {
"prefix": "cls",
"body": [
"class ClassName",
"{",
"public:",
" $0",
" ",
"};"
],
"description": ""
},
// singly linked list Node snippet
"Generate Node class snippet": {
"prefix": "snode",
"body": [
"class Node",
"{",
"public:",
" int val;",
" Node *next;",
" Node(int val)",
" {",
" this->val = val;",
" this->next = NULL;",
" }",
"};"
],
"description": "Node class snippet"
},
// doubly linked list node snippet
"doubly linked list snippet": {
"prefix": "dnode",
"body": [
"class Node",
"{",
"public:",
" int val;",
" Node *prev;",
" Node *next;",
" Node(int val)",
" {",
" this->val = val;",
" this->prev = NULL;",
" this->next = NULL;",
" }",
"};"
],
"description": "doubly linked list snippet"
},
// binary search node for binary tree
"binary search node": {
"prefix": "bnode",
"body": [
"class Node",
"{",
"public:",
" int val;",
" Node *left;",
" Node *right;",
" Node(int val)",
" {",
" this->val = val;",
" this->left = NULL;",
" this->right = NULL;",
" }",
"};"
],
"description": "Binary Search Node for Binary Tree"
}
}
=========================ধন্যবাদ =================================
إرسال تعليق