-
-
Save JeongInyoung/bd458867b7b758c10f703c7657a7dc31 to your computer and use it in GitHub Desktop.
Visual Studio Code Settings Sync Gist
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{"lastUpload":"2019-02-13T07:48:59.275Z","extensionVersion":"v3.2.4"} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[ | |
{ | |
"metadata": { | |
"id": "d3836729-9cc1-42c1-b2af-d50071f57d29", | |
"publisherId": "formulahendry.auto-close-tag", | |
"publisherDisplayName": "formulahendry" | |
}, | |
"name": "auto-close-tag", | |
"publisher": "formulahendry", | |
"version": "0.5.6" | |
}, | |
{ | |
"metadata": { | |
"id": "6e440e71-8ed9-4f25-bb78-4b13096b8a03", | |
"publisherId": "formulahendry.auto-rename-tag", | |
"publisherDisplayName": "formulahendry" | |
}, | |
"name": "auto-rename-tag", | |
"publisher": "formulahendry", | |
"version": "0.0.15" | |
}, | |
{ | |
"metadata": { | |
"id": "5178733e-4b02-4829-95c5-1ce970847c23", | |
"publisherId": "teabyii.ayu", | |
"publisherDisplayName": "teabyii" | |
}, | |
"name": "ayu", | |
"publisher": "teabyii", | |
"version": "0.18.0" | |
}, | |
{ | |
"metadata": { | |
"id": "f583eafd-aa0d-4ccb-8f44-d1e610389660", | |
"publisherId": "CoenraadS.bracket-pair-colorizer", | |
"publisherDisplayName": "CoenraadS" | |
}, | |
"name": "bracket-pair-colorizer", | |
"publisher": "CoenraadS", | |
"version": "1.0.61" | |
}, | |
{ | |
"metadata": { | |
"id": "e337c67b-55c2-4fef-8949-eb260e7fb7fd", | |
"publisherId": "Shan.code-settings-sync", | |
"publisherDisplayName": "Shan" | |
}, | |
"name": "code-settings-sync", | |
"publisher": "Shan", | |
"version": "3.2.4" | |
}, | |
{ | |
"metadata": { | |
"id": "532533c9-a894-4a58-9eee-bbfbe7c06f71", | |
"publisherId": "mikestead.dotenv", | |
"publisherDisplayName": "mikestead" | |
}, | |
"name": "dotenv", | |
"publisher": "mikestead", | |
"version": "1.0.1" | |
}, | |
{ | |
"metadata": { | |
"id": "4de763bd-505d-4978-9575-2b7696ecf94e", | |
"publisherId": "eamodio.gitlens", | |
"publisherDisplayName": "eamodio" | |
}, | |
"name": "gitlens", | |
"publisher": "eamodio", | |
"version": "9.5.0" | |
}, | |
{ | |
"metadata": { | |
"id": "a2cec723-5349-460d-9de9-0fd1f8d3456f", | |
"publisherId": "xabikos.JavaScriptSnippets", | |
"publisherDisplayName": "xabikos" | |
}, | |
"name": "JavaScriptSnippets", | |
"publisher": "xabikos", | |
"version": "1.7.2" | |
}, | |
{ | |
"metadata": { | |
"id": "b63c44fd-0457-4696-99e9-dbfdf70d77de", | |
"publisherId": "ritwickdey.LiveServer", | |
"publisherDisplayName": "ritwickdey" | |
}, | |
"name": "LiveServer", | |
"publisher": "ritwickdey", | |
"version": "5.5.1" | |
}, | |
{ | |
"metadata": { | |
"id": "f154cf38-02ea-4253-b9c8-0e89def0b10f", | |
"publisherId": "wibblemonkey.markdown-auto-toc", | |
"publisherDisplayName": "wibblemonkey" | |
}, | |
"name": "markdown-auto-toc", | |
"publisher": "wibblemonkey", | |
"version": "0.3.0" | |
}, | |
{ | |
"metadata": { | |
"id": "5cbdf58a-694a-4aba-af08-61d00842eb03", | |
"publisherId": "bierner.markdown-preview-github-styles", | |
"publisherDisplayName": "bierner" | |
}, | |
"name": "markdown-preview-github-styles", | |
"publisher": "bierner", | |
"version": "0.1.4" | |
}, | |
{ | |
"metadata": { | |
"id": "7f147721-ec06-4043-9e37-c9ffbecbccd1", | |
"publisherId": "whizkydee.material-palenight-theme", | |
"publisherDisplayName": "whizkydee" | |
}, | |
"name": "material-palenight-theme", | |
"publisher": "whizkydee", | |
"version": "1.9.4" | |
}, | |
{ | |
"metadata": { | |
"id": "26a529c9-2654-4b95-a63f-02f6a52429e6", | |
"publisherId": "zhuangtongfa.Material-theme", | |
"publisherDisplayName": "zhuangtongfa" | |
}, | |
"name": "Material-theme", | |
"publisher": "zhuangtongfa", | |
"version": "2.18.2" | |
}, | |
{ | |
"metadata": { | |
"id": "6f35c257-7fd5-4bc2-9cd1-01976589c17a", | |
"publisherId": "arcticicestudio.nord-visual-studio-code", | |
"publisherDisplayName": "arcticicestudio" | |
}, | |
"name": "nord-visual-studio-code", | |
"publisher": "arcticicestudio", | |
"version": "0.6.0" | |
}, | |
{ | |
"metadata": { | |
"id": "dff6b801-247e-40e9-82e8-8c9b1d19d1b8", | |
"publisherId": "christian-kohler.npm-intellisense", | |
"publisherDisplayName": "christian-kohler" | |
}, | |
"name": "npm-intellisense", | |
"publisher": "christian-kohler", | |
"version": "1.3.0" | |
}, | |
{ | |
"metadata": { | |
"id": "fef63133-dae3-40fb-b81d-6da7617b4b1e", | |
"publisherId": "techer.open-in-browser", | |
"publisherDisplayName": "techer" | |
}, | |
"name": "open-in-browser", | |
"publisher": "techer", | |
"version": "2.0.0" | |
}, | |
{ | |
"metadata": { | |
"id": "a41c1549-4053-44d4-bf30-60fc809b4a86", | |
"publisherId": "christian-kohler.path-intellisense", | |
"publisherDisplayName": "christian-kohler" | |
}, | |
"name": "path-intellisense", | |
"publisher": "christian-kohler", | |
"version": "1.4.2" | |
}, | |
{ | |
"metadata": { | |
"id": "96fa4707-6983-4489-b7c5-d5ffdfdcce90", | |
"publisherId": "esbenp.prettier-vscode", | |
"publisherDisplayName": "esbenp" | |
}, | |
"name": "prettier-vscode", | |
"publisher": "esbenp", | |
"version": "1.8.1" | |
}, | |
{ | |
"metadata": { | |
"id": "e52bce95-a629-455f-8626-e7301b9e372a", | |
"publisherId": "robinbentley.sass-indented", | |
"publisherDisplayName": "robinbentley" | |
}, | |
"name": "sass-indented", | |
"publisher": "robinbentley", | |
"version": "1.5.1" | |
}, | |
{ | |
"metadata": { | |
"id": "529697b9-b343-4b1c-ba2f-f5ef692132d4", | |
"publisherId": "ms-vscode.sublime-keybindings", | |
"publisherDisplayName": "ms-vscode" | |
}, | |
"name": "sublime-keybindings", | |
"publisher": "ms-vscode", | |
"version": "4.0.0" | |
}, | |
{ | |
"metadata": { | |
"id": "17dca0d1-31da-4bef-8b7e-e3ca8c7dc8ef", | |
"publisherId": "cg-cnu.super-new-file", | |
"publisherDisplayName": "cg-cnu" | |
}, | |
"name": "super-new-file", | |
"publisher": "cg-cnu", | |
"version": "0.0.4" | |
}, | |
{ | |
"metadata": { | |
"id": "4ae6dc82-7981-4f10-bd81-2d72aec37f39", | |
"publisherId": "jock.svg", | |
"publisherDisplayName": "jock" | |
}, | |
"name": "svg", | |
"publisher": "jock", | |
"version": "0.1.4" | |
}, | |
{ | |
"metadata": { | |
"id": "b4e38a00-351e-4981-b9b4-2174c7865c2f", | |
"publisherId": "sidthesloth.svg-snippets", | |
"publisherDisplayName": "sidthesloth" | |
}, | |
"name": "svg-snippets", | |
"publisher": "sidthesloth", | |
"version": "1.0.1" | |
}, | |
{ | |
"metadata": { | |
"id": "68cb6e9e-ca32-48eb-b1a6-11ab6f532ab1", | |
"publisherId": "sculove.translator", | |
"publisherDisplayName": "sculove" | |
}, | |
"name": "translator", | |
"publisher": "sculove", | |
"version": "1.1.0" | |
}, | |
{ | |
"metadata": { | |
"id": "2f5dd8cb-d251-4d70-abfe-ddebcb077483", | |
"publisherId": "octref.vetur", | |
"publisherDisplayName": "octref" | |
}, | |
"name": "vetur", | |
"publisher": "octref", | |
"version": "0.15.0" | |
}, | |
{ | |
"metadata": { | |
"id": "901d9ffe-2718-416c-9edc-2607e7528d1a", | |
"publisherId": "mrmlnc.vscode-attrs-sorter", | |
"publisherDisplayName": "mrmlnc" | |
}, | |
"name": "vscode-attrs-sorter", | |
"publisher": "mrmlnc", | |
"version": "2.1.0" | |
}, | |
{ | |
"metadata": { | |
"id": "583b2b34-2c1e-4634-8c0b-0b82e283ea3a", | |
"publisherId": "dbaeumer.vscode-eslint", | |
"publisherDisplayName": "dbaeumer" | |
}, | |
"name": "vscode-eslint", | |
"publisher": "dbaeumer", | |
"version": "1.8.0" | |
}, | |
{ | |
"metadata": { | |
"id": "c727ab43-8d12-4f26-9648-f1d91035c9b6", | |
"publisherId": "NuclleaR.vscode-extension-auto-import", | |
"publisherDisplayName": "NuclleaR" | |
}, | |
"name": "vscode-extension-auto-import", | |
"publisher": "NuclleaR", | |
"version": "1.4.3" | |
}, | |
{ | |
"metadata": { | |
"id": "eedfd044-d5ac-4389-973d-3ac1fdb98ad5", | |
"publisherId": "kisstkondoros.vscode-gutter-preview", | |
"publisherDisplayName": "kisstkondoros" | |
}, | |
"name": "vscode-gutter-preview", | |
"publisher": "kisstkondoros", | |
"version": "0.16.5" | |
}, | |
{ | |
"metadata": { | |
"id": "9ccc1dd7-7ec4-4a46-bd4f-7d7b8b9d322a", | |
"publisherId": "robertohuertasm.vscode-icons", | |
"publisherDisplayName": "robertohuertasm" | |
}, | |
"name": "vscode-icons", | |
"publisher": "robertohuertasm", | |
"version": "8.1.0" | |
}, | |
{ | |
"metadata": { | |
"id": "c46b0018-f317-4b6c-a785-d2039b27338f", | |
"publisherId": "wix.vscode-import-cost", | |
"publisherDisplayName": "wix" | |
}, | |
"name": "vscode-import-cost", | |
"publisher": "wix", | |
"version": "2.12.0" | |
}, | |
{ | |
"metadata": { | |
"id": "7c15d326-cfdd-4932-9409-634b512daebe", | |
"publisherId": "MS-CEINTL.vscode-language-pack-ko", | |
"publisherDisplayName": "MS-CEINTL" | |
}, | |
"name": "vscode-language-pack-ko", | |
"publisher": "MS-CEINTL", | |
"version": "1.31.4" | |
}, | |
{ | |
"metadata": { | |
"id": "77b70e30-3534-4098-9d6d-382a96babca4", | |
"publisherId": "dkundel.vscode-new-file", | |
"publisherDisplayName": "dkundel" | |
}, | |
"name": "vscode-new-file", | |
"publisher": "dkundel", | |
"version": "4.0.2" | |
}, | |
{ | |
"metadata": { | |
"id": "ae9e3eb0-3357-4cc0-90ee-598d2d384757", | |
"publisherId": "eg2.vscode-npm-script", | |
"publisherDisplayName": "eg2" | |
}, | |
"name": "vscode-npm-script", | |
"publisher": "eg2", | |
"version": "0.3.5" | |
}, | |
{ | |
"metadata": { | |
"id": "6f5d4f30-67aa-4151-80c0-1bbe8ca5f9db", | |
"publisherId": "cssho.vscode-svgviewer", | |
"publisherDisplayName": "cssho" | |
}, | |
"name": "vscode-svgviewer", | |
"publisher": "cssho", | |
"version": "1.4.7" | |
}, | |
{ | |
"metadata": { | |
"id": "97a08c5f-6667-4242-a5c5-045dfb6bd4b9", | |
"publisherId": "wayou.vscode-todo-highlight", | |
"publisherDisplayName": "wayou" | |
}, | |
"name": "vscode-todo-highlight", | |
"publisher": "wayou", | |
"version": "1.0.4" | |
}, | |
{ | |
"metadata": { | |
"id": "876e8f93-74d0-4f4f-91b7-34a09f19f444", | |
"publisherId": "VisualStudioExptTeam.vscodeintellicode", | |
"publisherDisplayName": "VisualStudioExptTeam" | |
}, | |
"name": "vscodeintellicode", | |
"publisher": "VisualStudioExptTeam", | |
"version": "1.1.3" | |
}, | |
{ | |
"metadata": { | |
"id": "3299d342-46cf-4aee-9016-5bd02a7ccb90", | |
"publisherId": "ishiyama.vue-autoimport", | |
"publisherDisplayName": "ishiyama" | |
}, | |
"name": "vue-autoimport", | |
"publisher": "ishiyama", | |
"version": "1.0.1" | |
}, | |
{ | |
"metadata": { | |
"id": "6f99be10-9aad-4b1c-8691-bcae8ae7b104", | |
"publisherId": "dariofuzinato.vue-peek", | |
"publisherDisplayName": "dariofuzinato" | |
}, | |
"name": "vue-peek", | |
"publisher": "dariofuzinato", | |
"version": "1.0.2" | |
}, | |
{ | |
"metadata": { | |
"id": "d71fddb0-5a5a-4e17-9b96-9d30aca2afe3", | |
"publisherId": "shekhardtu.vuejspack", | |
"publisherDisplayName": "shekhardtu" | |
}, | |
"name": "vuejspack", | |
"publisher": "shekhardtu", | |
"version": "1.3.2" | |
} | |
] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[ | |
{ | |
"key": "alt+1", | |
"command": "workbench.view.explorer" | |
}, | |
{ | |
"key": "alt+2", | |
"command": "workbench.view.search" | |
}, | |
{ | |
"key": "alt+3", | |
"command": "workbench.view.scm" | |
}, | |
{ | |
"key": "alt+4", | |
"command": "workbench.view.debug" | |
}, | |
{ | |
"key": "alt+5", | |
"command": "workbench.view.extensions" | |
}, | |
{ | |
"key": "alt+a", | |
"command": "editor.action.toggleWordWrap" | |
} | |
] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Empty |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
// Defines VS Code's display language. | |
// See https://go.microsoft.com/fwlink/?LinkId=761051 for a list of supported languages. | |
"locale": "ko" // Changes will not take effect until VS Code has been restarted. | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
/////////////////////// | |
// 에디터 설정 | |
/////////////////////// | |
"editor.fontSize": 18, | |
"editor.fontFamily": "Consolas, 'Courier New', monospace", | |
"editor.tabSize": 2, | |
"editor.renderWhitespace": "all", | |
"editor.renderControlCharacters": true, | |
"editor.cursorStyle": "line-thin", | |
"editor.multiCursorModifier": "ctrlCmd", | |
"editor.wordWrap": "on", | |
"editor.lineHeight": 20, | |
"editor.letterSpacing": -0.05, | |
"editor.lineNumbers": "on", | |
"editor.smoothScrolling": true, | |
"editor.roundedSelection": true, | |
"editor.minimap.enabled": false, | |
"editor.autoIndent": false, | |
"editor.renderIndentGuides": true, | |
"editor.snippetSuggestions": "top", | |
"editor.cursorBlinking": "phase", | |
"editor.mouseWheelZoom": false, | |
"editor.stablePeek": true, | |
"editor.matchBrackets": false, | |
"editor.cursorSmoothCaretAnimation": true, | |
"editor.formatOnSave": true, | |
"editor.formatOnType": true, | |
"editor.formatOnPaste": false, | |
"editor.detectIndentation": true, | |
"editor.insertSpaces": true, | |
"explorer.confirmDragAndDrop": false, | |
"explorer.sortOrder": "type", | |
/////////////////////// | |
// 워크벤치 설정 | |
/////////////////////// | |
"workbench.startupEditor": "none", | |
"workbench.iconTheme": "ayu", | |
"workbench.sideBar.location": "left", | |
"workbench.statusBar.visible": true, | |
"workbench.activityBar.visible": true, | |
"workbench.fontAliasing": "antialiased", | |
"workbench.commandPalette.preserveInput": true, | |
"workbench.colorTheme": "Ayu Mirage Bordered", | |
/////////////////////// | |
// 창(Window) 설정 | |
/////////////////////// | |
"window.newWindowDimensions": "maximized", | |
/////////////////////// | |
// 파일(File) 설정 | |
/////////////////////// | |
"files.exclude": { | |
"build": true, | |
"config": true, | |
"**/node_modules": true, | |
".gitignore": true, | |
".eslintignore": true, | |
".eslintrc.js": false, | |
".babelrc": true, | |
".editorconfig": true, | |
".postcssrc.js": true, | |
".jshintrc": true, | |
"**/.git": true, | |
"**/.svn": true, | |
"**/.hg": true, | |
"**/.DS_Store": true, | |
"**/.vscode": true, | |
"**/CVS": true, | |
}, | |
"files.associations": { | |
"*.vue": "vue" | |
}, | |
"files.encoding": "utf8", | |
"files.trimTrailingWhitespace": true, | |
"files.watcherExclude": { | |
"**/.git/objects/**": true, | |
"**/.git/subtree-cache/**": true, | |
"**/node_modules/**": true, | |
"**/__/**": true | |
}, | |
"files.defaultLanguage": "html", | |
"files.insertFinalNewline": false, | |
/////////////////////// | |
// 검색(Search) 설정 | |
/////////////////////// | |
"search.exclude": { | |
"**/node_modules": true, | |
"**/bower_components": true, | |
"**/__": true | |
}, | |
/////////////////////// | |
// 터미널 설정 | |
/////////////////////// | |
"terminal.external.osxExec": "iTerm.app", | |
"terminal.integrated.lineHeight": 1.2, | |
"terminal.integrated.cursorBlinking": true, | |
"terminal.integrated.cursorStyle": "line", | |
"terminal.integrated.fontFamily": "", | |
"terminal.integrated.fontSize": 16, | |
/////////////////////// | |
// 원격분석 설정 | |
/////////////////////// | |
"telemetry.enableCrashReporter": false, | |
"telemetry.enableTelemetry": false, | |
/////////////////////// | |
// 기본 구성 재정의 | |
/////////////////////// | |
"[html]": { | |
"editor.wordWrap": "on", | |
"editor.tabSize": 2 | |
}, | |
"[svg]": { | |
"editor.insertSpaces": true, | |
"editor.wordWrap": "on", | |
"editor.tabSize": 2 | |
}, | |
"[css]": { | |
"editor.wordWrap": "on", | |
"editor.tabSize": 2 | |
}, | |
"[javascript]": { | |
"editor.wordWrap": "on", | |
"editor.tabSize": 2 | |
}, | |
"[typescript]": { | |
"editor.wordWrap": "on", | |
"editor.tabSize": 2 | |
}, | |
"[vue]": { | |
"editor.wordWrap": "on", | |
"editor.tabSize": 2 | |
}, | |
"[markdown]": { | |
"editor.wordWrap": "on", | |
"editor.quickSuggestions": true | |
}, | |
"html.format.wrapAttributes": "force-expand-multiline", | |
/////////////////////// | |
// JavaScript 설정 | |
/////////////////////// | |
"javascript.implicitProjectConfig.experimentalDecorators": true, | |
"javascript.implicitProjectConfig.checkJs": true, | |
"javascript.format.insertSpaceAfterConstructor": true, | |
"javascript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": true, | |
"javascript.format.placeOpenBraceOnNewLineForFunctions": true, | |
"javascript.validate.enable": false, | |
/////////////////////// | |
// TypeScript 설정 | |
/////////////////////// | |
// 자동 입력 인식에 대해 NPM이 설치되어 있는지 확인합니다. | |
"typescript.check.npmIsInstalled": false, | |
"typescript.locale": "ko", | |
/////////////////////// | |
// Vetur 설정 | |
/////////////////////// | |
"vetur.completion.useScaffoldSnippets": true, | |
"vetur.format.defaultFormatterOptions": { | |
"prettyhtml": { | |
"printWidth": 80, | |
"singleQuote": false | |
} | |
}, | |
/////////////////////// | |
// Path Intellisense 설정 | |
/////////////////////// | |
"path-intellisense.extensionOnImport": true, | |
"path-intellisense.autoSlashAfterDirectory": true, | |
/////////////////////// | |
// Emmet 설정 | |
/////////////////////// | |
"emmet.showExpandedAbbreviation": "always", | |
"emmet.showAbbreviationSuggestions": true, | |
"emmet.triggerExpansionOnTab": true, | |
"emmet.includeLanguages": { | |
"vue-html": "html", | |
"vue": "css" | |
}, | |
"emmet.variables": { | |
"lang": "ko-KR", | |
"charset": "UTF-8" | |
}, | |
"emmet.extensionsPath": "", | |
"emmet.syntaxProfiles": {}, | |
"emmet.preferences": {}, | |
"emmet.showSuggestionsAsSnippets": true, | |
/////////////////////// | |
// ESLint 설정 | |
/////////////////////// | |
"eslint.enable": true, | |
"eslint.autoFixOnSave": true, | |
"eslint.alwaysShowStatus": true, | |
"eslint._legacyModuleResolve": true, | |
"eslint.packageManager": "npm", | |
"eslint.run": "onSave", | |
"eslint.validate": [ | |
{ | |
"language": "javascript", | |
"autoFix": true | |
}, | |
{ | |
"language": "vue", | |
"autoFix": true | |
}, | |
"javascriptreact" | |
], | |
/////////////////////// | |
// LiveServer 설정 | |
/////////////////////// | |
"liveServer.settings.donotVerifyTags": true, | |
"liveServer.settings.port": 8000, | |
"liveServer.settings.donotShowInfoMsg": true, | |
/////////////////////// | |
// AdvancedNewFile 설정 | |
/////////////////////// | |
"newFile.defaultFileExtension": ".js", | |
"newFile.showPathRelativeTo": "project", | |
"newFile.fileTemplates": { | |
"practice": "/practice" | |
}, | |
"newFile.expandBraces": true, | |
/////////////////////// | |
// Browser 설정 | |
/////////////////////// | |
"open-in-browser.default": "chrome", | |
"diffEditor.ignoreTrimWhitespace": true, | |
/////////////////////// | |
// Auto Import 설정 | |
/////////////////////// | |
"autoimport.showNotifications": true, | |
"autoimport.autoComplete": false, | |
/////////////////////// | |
// Markdown Preview 설정 | |
/////////////////////// | |
"markdown.preview.fontSize": 16, | |
"markdown.preview.lineHeight": 1.5, | |
/////////////////////// | |
// Settings Sync 설정 | |
/////////////////////// | |
"sync.gist": "", | |
"sync.autoUpload": false, | |
/////////////////////// | |
// Prettier 설정 | |
/////////////////////// | |
"prettier.eslintIntegration": true, | |
"prettier.proseWrap": "always", | |
"prettier.requireConfig": true, | |
"prettier.singleQuote": true, | |
"prettier.tslintIntegration": true, | |
"javascript.format.enable": false, | |
"prettier.trailingComma": "es5", | |
///////////////////////////////////////// | |
// Sorting HTML and Jade attributes 설정 | |
///////////////////////////////////////// | |
"attrsSorter.order": [ | |
"is", | |
"v-for", | |
"v-if", | |
"v-else-if", | |
"v-else", | |
"v-show", | |
"v-cloak", | |
"v-once", | |
"v-pre", | |
"id", | |
"ref", | |
"key", | |
"slot", | |
"v-model", | |
"v-model.+", | |
"v-bind", | |
"v-bind.+", | |
":.+", | |
"v-text", | |
"v-text.+", | |
"v-html", | |
"v-html.+", | |
"class", | |
"v-on.+", | |
"@.+", | |
"name", | |
"data-.+", | |
"ng-.+", | |
"src", | |
"for", | |
"type", | |
"href", | |
"values", | |
"title", | |
"alt", | |
"role", | |
"aria-.+", | |
"$unknown$" | |
], | |
//////////////////////////////// | |
// Bracket Pair Colorizer 설정 | |
//////////////////////////////// | |
"bracketPairColorizer.showBracketsInGutter": true, | |
"bracketPairColorizer.showHorizontalScopeLine": false, | |
/////////////////////// | |
// TODO Highlight 설정 | |
/////////////////////// | |
"todohighlight.isEnable": true | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
/* | |
// Place your snippets for Batch 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" | |
} | |
*/ | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"charset/": { | |
"prefix": "charset/", | |
"body": "\n@charset \"${1:utf-8}\";\n$0\n", | |
"description": "", | |
}, | |
"acc-hidden/": { | |
"prefix": "acc-hidden/", | |
"body": ".${1:readable}-hidden {\n\toverflow: hidden;\n\tposition: absolute;\n\tclip: rect(0 0 0 0);\n\tclip: rect(0,0,0,0);\n\twidth: 1px;\n\theight: 1px;\n\tmargin: -1px;\n\tpadding: 0;\n\tborder: 0;\n}\n.${1:readable}-hidden.focusable {\n\toverflow: visible;\n\tposition: static;\n\tclip: auto;\n\twidth: auto;\n\theight: auto;\n\tmargin: 0;\n}\n$0", | |
"description": "", | |
}, | |
"dis-block": { | |
"prefix": "dis-block", | |
"body": "display: block;", | |
"description": "CSS - display: block;", | |
}, | |
"dis-inline-block": { | |
"prefix": "dis-inline-block", | |
"body": "display: inline-block;\nvertical-align: ${1:top};${2:\nzoom: 1;\n*display: inline; /* IE 7 이하 브라우저 핵 */}", | |
"description": "CSS - display: inline-block;", | |
}, | |
"dis-inline": { | |
"prefix": "dis-inline", | |
"body": "display: inline;", | |
"description": "CSS - display: inline;", | |
}, | |
"aft/": { | |
"prefix": "aft/", | |
"body": "$1:after {\n\tcontent: '$2';\n\t$0\n}", | |
"description": "CSS - :after", | |
}, | |
"bef/": { | |
"prefix": "bef/", | |
"body": "$1:before {\n\tcontent: '$2';\n\t$0\n}", | |
"description": "CSS - :before", | |
}, | |
"hov/": { | |
"prefix": "hov/", | |
"body": "$1:hover,\n$1:focus {\n\t$2\n}\n$0", | |
"description": "CSS - :hover, :focus", | |
}, | |
"@key/": { | |
"prefix": "@key/", | |
"body": "@keyframes $1 {\n\t0% { $2 }\n\t100% { $3 }\n}\n$0\n", | |
"description": "CSS - @keyframes {}", | |
}, | |
"ani-delay": { | |
"prefix": "ani-delay", | |
"body": "animation-delay: ${1:0s};", | |
"description": "", | |
}, | |
"ani-direction": { | |
"prefix": "ani-direction", | |
"body": "animation-direction: ${1:normal|reverse|alternate|alternate-reverse};", | |
"description": "", | |
}, | |
"ani-duration": { | |
"prefix": "ani-duration", | |
"body": "animation-duration: ${1:0.3s};", | |
"description": "", | |
}, | |
"ani-fill-mode": { | |
"prefix": "ani-fill-mode", | |
"body": "animation-fill-mode: ${1:none|forwards|backwards|both};", | |
"description": "", | |
}, | |
"ani-iteration-count": { | |
"prefix": "ani-iteration-count", | |
"body": "animation-iteration-count: ${1:3|infinite};", | |
"description": "", | |
}, | |
"ani-name": { | |
"prefix": "ani-name", | |
"body": "animation-name: ${1:fadeIn};", | |
"description": "", | |
}, | |
"ani-pla": { | |
"prefix": "ani-pla", | |
"body": "animation-play-state: ${1:running|paused};", | |
"description": "CSS - animation-play-state: ;", | |
}, | |
"ani-timing-function": { | |
"prefix": "ani-timing-function", | |
"body": "animation-timing-function: ${1:ease};", | |
"description": "", | |
}, | |
"ani-guide": { | |
"prefix": "ani-guide", | |
"body": "animation: ${1:name} ${2:duration} ${3:ease|linear|ease-in|ease-out|ease-in-out|cubic-bezier(<number>,<number>,<number>,<number>)} ${4:delay} ${5:infinite|<number>} ${6:normal|alternate};", | |
"description": "CSS - animation: ;", | |
}, | |
"backface-visibility": { | |
"prefix": "backface-visibility", | |
"body": "backface-visibility: ${1:visible|hidden};", | |
"description": "", | |
}, | |
"background-clip": { | |
"prefix": "background-clip", | |
"body": "background-clip: ${1:padding-box};", | |
"description": "", | |
}, | |
"box-shadow": { | |
"prefix": "box-shadow", | |
"body": "box-shadow: ${1:horizontal-offset} ${2:vertical-offset} ${3:blur-radius} ${4:spread-distance} ${5:hsla(0,0%,0%,.25)};", | |
"description": "CSS - box-shadow: ;", | |
}, | |
"box-sizing": { | |
"prefix": "box-sizing", | |
"body": "box-sizing: ${1:border-box};", | |
"description": "CSS - box-sizing: border-box;", | |
}, | |
"calc": { | |
"prefix": "calc", | |
"body": "calc($1)", | |
"description": "calc: CSS 계산 함수", | |
}, | |
"column-count": { | |
"prefix": "column-count", | |
"body": "column-count: ${1:3};", | |
"description": "", | |
}, | |
"column-gap": { | |
"prefix": "column-gap", | |
"body": "column-gap: ${1:20px};", | |
"description": "", | |
}, | |
"column-rule-color": { | |
"prefix": "column-rule-color", | |
"body": "column-rule-color: ${1:#000};", | |
"description": "", | |
}, | |
"column-rule-style": { | |
"prefix": "column-rule-style", | |
"body": "column-rule-style: ${1:solid};", | |
"description": "", | |
}, | |
"column-rule-width": { | |
"prefix": "column-rule-width", | |
"body": "column-rule-width: ${1:1px};", | |
"description": "", | |
}, | |
"column-rule": { | |
"prefix": "column-rule", | |
"body": "column-rule: ${1:1px solid #000};", | |
"description": "", | |
}, | |
"column-width": { | |
"prefix": "column-width", | |
"body": "column-width: ${1:300px};", | |
"description": "", | |
}, | |
"columns": { | |
"prefix": "columns", | |
"body": "column-count: ${1:3};\ncolumn-gap: ${2:20px};\n", | |
"description": "", | |
}, | |
"hyp": { | |
"prefix": "hyp", | |
"body": "-webkit-hyphens: auto;\n -moz-hyphens: auto;\n -ms-hyphens: auto;\n hyphens: auto;\n\n", | |
"description": "CSS - hyphens: auto;", | |
}, | |
"perspective-origin": { | |
"prefix": "perspective-origin", | |
"body": "perspective-origin: ${1:50%} ${2:50%};", | |
"description": "", | |
}, | |
"perspective": { | |
"prefix": "perspective", | |
"body": "perspective: ${1:400};", | |
"description": "", | |
}, | |
"input-placeholder/": { | |
"prefix": "input-placeholder/", | |
"body": "::-webkit-input-placeholder {\n\t${1:color: #fff;}\n}\n:-moz-placeholder { /* Firefox 18- */\n\t${1:color: #fff;}\n}\n::-moz-placeholder { /* Firefox 19+ */\n\t${1:color: #fff;}\n}\n:-ms-input-placeholder {\n\t${1:color: #fff;}\n}\n::input-placeholder {\n\t${1:color: #fff;}\n}\n$0", | |
"description": "", | |
}, | |
"selection/": { | |
"prefix": "selection/", | |
"body": "::-moz-selection {\n background: $1;\n text-shadow: none;\n}\n::selection {\n background: $1;\n text-shadow: none;\n}", | |
"description": "", | |
}, | |
"text-shadow": { | |
"prefix": "text-shadow", | |
"body": "text-shadow: $1;", | |
"description": "", | |
}, | |
"transform-3d": { | |
"prefix": "transform-3d", | |
"body": "transform-style: ${1:preserve-3d};\ntransform-origin: ${2:50%}${3: 50%};\ntransform: perspective(${4:400px}) $0", | |
"description": "CSS - Transform 3D", | |
}, | |
"transform-rotate": { | |
"prefix": "transform-rotate", | |
"body": "transform: rotate(${1:0deg});", | |
"description": "", | |
}, | |
"transform-scale": { | |
"prefix": "transform-scale", | |
"body": "transform: scale(${1:1});", | |
"description": "", | |
}, | |
"transform-skew": { | |
"prefix": "transform-skew", | |
"body": "transform: skew(${1:0deg}, ${2:0deg});", | |
"description": "", | |
}, | |
"transform-style": { | |
"prefix": "transform-style", | |
"body": "transform-style: ${1:flat|preserve-3d};", | |
"description": "", | |
}, | |
"transform-translate": { | |
"prefix": "transform-translate", | |
"body": "transform: translate($1, $2);", | |
"description": "", | |
}, | |
"transform": { | |
"prefix": "transform", | |
"body": "transform: ${1:rotate|scale|translate|skew};", | |
"description": "CSS - Transform 2D", | |
}, | |
"trans-delay": { | |
"prefix": "trans-delay", | |
"body": "transition-delay: ${1:0s};", | |
"description": "", | |
}, | |
"trans-duration": { | |
"prefix": "trans-duration", | |
"body": "transition-duration: ${1:03s};", | |
"description": "", | |
}, | |
"trans-prop": { | |
"prefix": "trans-prop", | |
"body": "transition-property: ${1:all};", | |
"description": "", | |
}, | |
"trans-timing-function": { | |
"prefix": "trans-timing-function", | |
"body": "transition-timing-function: ${1:ease};", | |
"description": "", | |
}, | |
"transition": { | |
"prefix": "transition", | |
"body": "transition: ${1:all} ${2:.3s} ${3:ease} $4;", | |
"description": "", | |
}, | |
"word-break": { | |
"prefix": "word-break", | |
"body": "word-break: ${1:normal|break-all|keep-all};", | |
"description": "", | |
}, | |
"word-wrap": { | |
"prefix": "word-wrap", | |
"body": "overflow-wrap: ${1:break-word|normal};\nword-wrap: ${1:break-word|normal};", | |
"description": "", | |
}, | |
"cf-micro/": { | |
"prefix": "cf-micro/", | |
"body": ".cf:after,\n.cf:before { content: ''; display: table; }\n.cf:after { clear: both; }\n.lt-ie8 .cf { zoom: 1; }", | |
"description": "모던 클리어픽스", | |
}, | |
"cf/": { | |
"prefix": "cf/", | |
"body": "\n.clearfix::after {\n\tcontent: '';\n\tdisplay: block;\n\tclear: both; }\n.lt-ie8 .clearfix { zoom: 1; }", | |
"description": "클리어픽스", | |
}, | |
"cmt+/": { | |
"prefix": "cmt+/", | |
"body": "\n/*! ${2:style.css} © ${3:yamoo9.net}, ${4:2014} */\n$0", | |
"description": "저작권 싱글 주석", | |
}, | |
"cmt/": { | |
"prefix": "cmt/", | |
"body": "\n/**\n * --------------------------------$2\n * $1\n * --------------------------------$2\n */\n$0", | |
"description": "CSS - 섹션 주석", | |
}, | |
"cmt-/": { | |
"prefix": "cmt-/", | |
"body": "\n/**\n * $1\n * --------------------------------$2\n */\n$0", | |
"description": "CSS - 서브 섹션 주석", | |
}, | |
"mq-retina/": { | |
"prefix": "mq-retina/", | |
"body": "/*\n * 고해상도 디스플레이(@2x)\n */\n@media\n(-webkit-min-device-pixel-ratio: 2),\n( min--moz-device-pixel-ratio: 2),\n( -o-min-device-pixel-ratio: 2/1),\n( min-device-pixel-ratio: 2),\n( min-resolution: 192dpi),\n( min-resolution: 2dppx) {\n\t$3\n}\n$0", | |
"description": "", | |
}, | |
"mq/": { | |
"prefix": "mq/", | |
"body": "@media ${1:only screen} and (${2:min-device-width}: ${3:480px}) ${4: }{\n\t$0\n}", | |
"description": "미디어쿼리", | |
}, | |
"font-smoothing": { | |
"prefix": "font-smoothing", | |
"body": "${3:/* -----------------------------------------------\n * 모바일 폰트 부드럽게(font-smoothing)\n * none | subpixel-antialiased | antialiased\n * http://maxvoltar.com/sandbox/fontsmoothing/\n * http://www.icondeposit.com/blog:how-to-properly-smooth-font-using-css3\n -------------------------------------------------\n * font smooting for windows\n * http://forum.cockos.com/showthread.php?t=126465\n * -------------------------------------------- */\n}-webkit-font-smoothing: ${1:antialiased};\ntext-shadow: ${2:1px 1px 1px rgba(0,0,0,0.004)};\n$0", | |
"description": "폰트 부드럽게하는 CSS 속성", | |
}, | |
"tap-highlight-color": { | |
"prefix": "tap-highlight-color", | |
"body": "${2:/* 탭 하이라이트 컬러\n 참고: http://davidwalsh.name/mobile-highlight-color */\n}-webkit-tap-highlight-color: ${1:hsla(0,0%,0%,.5)};\ntap-highlight-color: ${1:hsla(0,0%,0%,.5)};\n$0", | |
"description": "탭 하이라이트 컬러", | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"Open Graph 프로토콜": { | |
"prefix": "meta-og", | |
"body": [ | |
"<meta property=\"og:type\" content=\"website\">", | |
"<meta property=\"og:image\" content=\"${1:/images/og_img.png}\">", | |
"<meta property=\"og:site_name\" content=\"${2:site.com}\">", | |
"<meta property=\"og:url\" content=\"${3:https://site.com\"}>", | |
"<meta property=\"og:title\" content=\"${4:site title}\">", | |
"<meta property=\"og:description\" content=\"${5:사이트 설명}\">", | |
"<meta property=\"og:locale\" content=\"ko_KR\">", | |
"<meta property=\"og:locale:alternate\" content=\"en_US\">" | |
], | |
"description": "Open Graph 프로토콜" | |
}, | |
"bulma": { | |
"prefix": "bulma", | |
"body": [ | |
"<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/bulma/0.4.2/css/bulma.min.css\">", | |
"<link rel=\"stylesheet\" href=\"https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css\">" | |
], | |
"description": "Bulma CSS 프레임워크" | |
}, | |
"svg-v-ns": { | |
"prefix": "svg-v-ns", | |
"body": [ | |
"<svg", | |
" id=\"$1\"", | |
" width=\"$2\" height=\"$3\"", | |
" viewbox=\"$4\" preserveAspectRatio=\"$5\"", | |
" version=\"1.1\"", | |
" xmlns=\"http://www.w3.org/2000/svg\"", | |
" xmlns:xlink=\"http://www.w3.org/1999/xlink\">", | |
" $0", | |
"</svg>" | |
], | |
"description": "SVG 요소" | |
}, | |
"svg": { | |
"prefix": "svg", | |
"body": [ | |
"<svg", | |
" id=\"$1\"", | |
" width=\"$2\" height=\"$3\"", | |
" viewbox=\"$4\" preserveAspectRatio=\"$5\">", | |
" $0", | |
"</svg>" | |
], | |
"description": "SVG 요소" | |
}, | |
"ellipse": { | |
"prefix": "ellipse", | |
"body": "<ellipse cx=\"$1\" cy=\"$2\" rx=\"$3\" ry=\"$4\" />", | |
"description": "SVG > Ellipse 요소" | |
}, | |
"circle": { | |
"prefix": "circle", | |
"body": "<circle cx=\"$1\" cy=\"$2\" r=\"$3\" />", | |
"description": "SVG > Circle 요소" | |
}, | |
"rect": { | |
"prefix": "rect", | |
"body": "<rect x=\"$1\" y=\"$2\" width=\"$3\" height=\"$4\" />", | |
"description": "SVG > Rect 요소" | |
}, | |
"line": { | |
"prefix": "line", | |
"body": "<line x1=\"$1\" y1=\"$2\" x2=\"$3\" y2=\"$4\" stroke=\"$5\" stroke-width=\"$6\" />", | |
"description": "SVG > Line 요소" | |
}, | |
"polyline": { | |
"prefix": "polyline", | |
"body": "<polyline points=\"${1:x1,y1 x2,y2 x3,y3 ...}\" fill=\"${2:none}\" stroke=\"$3\" stroke-width=\"$4\" />", | |
"description": "SVG > Polyline 요소" | |
}, | |
"polygon": { | |
"prefix": "polygon", | |
"body": "<polygon points=\"${1:x1,y1 x2,y2 x3,y3 ...}\" fill=\"${2:none}\" stroke=\"$3\" stroke-width=\"$4\" />", | |
"description": "SVG > Polygon 요소" | |
}, | |
"path": { | |
"prefix": "path", | |
"body": "<path d=\"$1\" fill=\"$2\" stroke=\"$3\" stroke-width=\"$4\" />", | |
"description": "SVG > Path 요소" | |
}, | |
"image": { | |
"prefix": "image", | |
"body": "<image xlink:href=\"$1\" x=\"$2\" y=\"$3\" width=\"$4\" height=\"$5\" />", | |
"description": "SVG > Image 요소" | |
}, | |
"text": { | |
"prefix": "text", | |
"body": "<text x=\"$1\" y=\"$2\" fill=\"$3\" font-size=\"$4\">${5:content}</text>", | |
"description": "SVG > Text 요소" | |
}, | |
"use": { | |
"prefix": "use", | |
"body": "<use xlink:href=\"${1:#item-for-reuse}\" x=\"$2\" y=\"$3\" fill=\"$4\" />", | |
"description": "SVG > Use 요소" | |
}, | |
"symbol": { | |
"prefix": "symbol", | |
"body": [ | |
"<symbol id=\"${1:symbol-for-reuse}\" viewbox=\"$2\">", | |
" $0", | |
"</symbol>" | |
], | |
"description": "SVG > 재사용 목적의 심볼(Symbol) 요소" | |
}, | |
"linearGradient": { | |
"prefix": "linearGradient", | |
"body": [ | |
"<linearGradient id=\"$1\"", | |
" x1=\"$2\" y1=\"$3\"", | |
" x2=\"$4\" y2=\"$5\"", | |
" spreadMethod=\"$6\">", | |
" $0", | |
"</linearGradient>", | |
], | |
"description": "SVG > Linear Gradient 요소" | |
}, | |
"radialGradient": { | |
"prefix": "radialGradient", | |
"body": [ | |
"<radialGradient id=\"$1\"", | |
" cx=\"$2\" cy=\"$3\" r=\"$4\"", | |
" fx=\"$5\" fy=\"$6\"", | |
" spreadMethod=\"$7\">", | |
" $0", | |
"</radialGradient>", | |
], | |
"description": "SVG > Radial Gradient 요소" | |
}, | |
"stop": { | |
"prefix": "stop", | |
"body": "<stop offset=\"${1:0%}\" stop-color=\"$2\" stop-opacity=\"${3:1}\" />", | |
"description": "SVG > Stop 요소" | |
}, | |
"animate": { | |
"prefix": "animate", | |
"body": [ | |
"<animate ", | |
" attributeType=\"${1:XML | CSS}\"", | |
" attributeName=\"${2: x | y ...}\"", | |
" from=\"$3\" to=\"$4\"", | |
" begin=\"${5:0s}\"", | |
" dur=\"${6:0.4s}\"", | |
" repeatCount=\"${7:indefinite | count}\" />" | |
], | |
"description": "SVG > Animate 요소" | |
}, | |
"animateTransform": { | |
"prefix": "animateTransform", | |
"body": [ | |
"<animateTransform ", | |
" attributeType=\"XML\"", | |
" attributeName=\"${2:rotate | translate | scale | skew}\"", | |
" from=\"$3\" to=\"$4\"", | |
" begin=\"${5:0s}\"", | |
" dur=\"${6:0.4s}\"", | |
" repeatCount=\"${7:indefinite | count}\" />" | |
], | |
"description": "SVG > AnimateTransform 요소" | |
}, | |
"animateMotion": { | |
"prefix": "animateMotion", | |
"body": [ | |
"<animateMotion ", | |
" path=\"$1\"", | |
" begin=\"${5:0s}\"", | |
" dur=\"${6:0.4s}\"", | |
" repeatCount=\"${7:indefinite | count}\" />" | |
], | |
"description": "SVG > AnimateMotion 요소" | |
}, | |
"mpath": { | |
"prefix": "mpath", | |
"body": "<animateMotion xlink:href=\"${1:#motion-path}\" />", | |
"description": "SVG > mpath 요소" | |
}, | |
"defs": { | |
"prefix": "defs", | |
"body": "<defs>$0</defs>", | |
"description": "SVG > 재사용 목적의 정의(Define)된 컨테이너 요소" | |
}, | |
"group": { | |
"prefix": "g", | |
"body": "<g id=\"$1\">$0</g>", | |
"description": "SVG > Group 요소" | |
}, | |
"svg-gooey": { | |
"prefix": "filter-gooey", | |
"body": [ | |
"<filter id=\"gooey\">", | |
" <feGaussianBlur in=\"SourceGraphic\" stdDeviation=\"10\" result=\"blur\" />", | |
" <feColorMatrix in=\"blur\" mode=\"matrix\" values=\"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 18 -7\" result=\"gooey\" />", | |
" <feBlend in=\"SourceGraphic\" in2=\"gooey\" />", | |
"</filter>", | |
], | |
"description": "SVG Gooey 필터" | |
}, | |
"svg-gooey-composite": { | |
"prefix": "filter-gooey-composite", | |
"body": [ | |
"<filter id=\"gooey-composite\">", | |
" <feGaussianBlur in=\"SourceGraphic\" stdDeviation=\"10\" result=\"blur\" />", | |
" <feColorMatrix in=\"blur\" mode=\"matrix\" values=\"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 18 -7\" result=\"gooey\" />", | |
" <feComposite in=\"SourceGraphic\" in2=\"gooey\" operator=\"atop\" />", | |
"</filter>", | |
], | |
"description": "SVG Gooey Composite 필터" | |
}, | |
// Angular HTML | |
"a-unicode-2way-databinding": { | |
"prefix": "a-unicode-2way", | |
"body": "(input)=\"${1:템플릿 문(Statement)}\" [value]=\"${2:바인딩 멤버}\"", | |
"description": "Angular 유니코드 문자 양방향 바인딩" | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"fn-array-extends": { | |
"prefix": "fn-array-extends", | |
"body": "\nif (!('indexOf' in Array.prototype)) {\n Array.prototype.indexOf= function(find, i /*opt*/) {\n if (i===undefined) i= 0;\n if (i<0) i+= this.length;\n if (i<0) i= 0;\n for (var n= this.length; i<n; i++)\n if (i in this && this[i]===find)\n return i;\n return -1;\n };\n}\nif (!('lastIndexOf' in Array.prototype)) {\n Array.prototype.lastIndexOf= function(find, i /*opt*/) {\n if (i===undefined) i= this.length-1;\n if (i<0) i+= this.length;\n if (i>this.length-1) i= this.length-1;\n for (i++; i-->0;) /* i++ because from-argument is sadly inclusive */\n if (i in this && this[i]===find)\n return i;\n return -1;\n };\n}\nif (!('forEach' in Array.prototype)) {\n Array.prototype.forEach= function(action, that /*opt*/) {\n for (var i= 0, n= this.length; i<n; i++)\n if (i in this)\n action.call(that, this[i], i, this);\n };\n}\nif (!('map' in Array.prototype)) {\n Array.prototype.map= function(mapper, that /*opt*/) {\n var other= new Array(this.length);\n for (var i= 0, n= this.length; i<n; i++)\n if (i in this)\n other[i]= mapper.call(that, this[i], i, this);\n return other;\n };\n}\nif (!('filter' in Array.prototype)) {\n Array.prototype.filter= function(filter, that /*opt*/) {\n var other= [], v;\n for (var i=0, n= this.length; i<n; i++)\n if (i in this && filter.call(that, v= this[i], i, this))\n other.push(v);\n return other;\n };\n}\nif (!('every' in Array.prototype)) {\n Array.prototype.every= function(tester, that /*opt*/) {\n for (var i= 0, n= this.length; i<n; i++)\n if (i in this && !tester.call(that, this[i], i, this))\n return false;\n return true;\n };\n}\nif (!('some' in Array.prototype)) {\n Array.prototype.some= function(tester, that /*opt*/) {\n for (var i= 0, n= this.length; i<n; i++)\n if (i in this && tester.call(that, this[i], i, this))\n return true;\n return false;\n };\n}\n", | |
"description": "배열 객체 확장", | |
}, | |
"fn-bind": { | |
"prefix": "fn-bind", | |
"body": "if (!('bind' in Function.prototype)) {\n Function.prototype.bind= function(owner) {\n var that= this;\n if (arguments.length<=1) {\n return function() { return that.apply(owner, arguments); };\n } else {\n var args= Array.prototype.slice.call(arguments, 1);\n return function() {\n return that.apply(owner, arguments.length===0? args : args.concat(Array.prototype.slice.call(arguments)));\n };\n }\n };\n};", | |
"description": "함수 객체 확장 - bind", | |
}, | |
"fn-obj-create": { | |
"prefix": "fn-obj-create", | |
"body": "\nif(!Object.create) {\n\tObject.create = function(obj) {\n\t\tif(arguments.length > 1) {\n\t\t\tthrow new Error('전달인자는 하나(객체)여야 합니다.');\n\t\t};\n\t\tfunction F() {};\n\t\tF.prototype = obj;\n\t\treturn new F;\n\t};\n};\n", | |
"description": "객체 확장 - create", | |
}, | |
"fn-str-trim": { | |
"prefix": "fn-str-trim", | |
"body": "if(!('trim' in String.prototype)) {\n String.prototype.trim= function() {\n\t\treturn this.replace(/^\\s+/, '').replace(/\\s+$/, '');\n\t};\n};", | |
"description": "문자 객체 확장 - trim", | |
}, | |
"af": { | |
"prefix": "af", | |
"body": "\n(function(${2}){\n\t${3}\n})(${1});\n", | |
"description": "", | |
}, | |
"cleanwhitespace": { | |
"prefix": "cleanwhitespace", | |
"body": "\nfunction cleanWhiteSpace(element) {\n element = element || document;\n var cur = element.firstChild;\n while ( cur !== null ) {\n if( cur.nodeType === 3 && ! /\\S/.test(cur.nodeValue) ) {\n element.removeChild(cur);\n } else if(cur.nodeType === 1) {\n cleanWhiteSpace(cur);\n }\n cur = cur.nextSibling;\n }\n}\n", | |
"description": "", | |
}, | |
"fn-extend": { | |
"prefix": "fn-extend", | |
"body": "function extend( obj ) {\n\tif ( !arguments[1] ) { return obj; }\n\tfor ( var i=1, l=arguments.length, source, prop; i<l; i++ ) {\n\t\tsource = arguments[i];\n\t\tif ( source.constructor !== Object ) { throw new Error('전달인자가 객체가 아닙니다.'); return; }\n\t\tfor ( prop in source ) {\n\t\t\tif (\n\t\t\t\t( !obj[prop] && source.hasOwnProperty(prop) ) ||\n\t\t\t\t( prop in obj && prop in source )\n\t\t\t) { obj[prop] = source[prop]; }\n\t\t}\n\t\treturn obj;\n\t}\n}", | |
"description": "extend 헬퍼함수", | |
}, | |
"fn": { | |
"prefix": "fn", | |
"body": "function($1) {\n\t$2\n}", | |
"description": "익명함수", | |
}, | |
"IIFE": { | |
"prefix": "iife", | |
"body": [ | |
"(function($2){", | |
" 'use strict';", | |
" $0", | |
"})($1);" | |
], | |
"description": "즉시 실행 함수 (모듈 패턴)" | |
}, | |
"ES6-IIFE": { | |
"prefix": "iife-es6", | |
"body": [ | |
";((${2:global}) => {", | |
" $0", | |
"})(${1:window})", | |
], | |
"description": "ES6 즉시 실행 함수 (모듈 패턴)" | |
}, | |
"insertAdjacentHTML": { | |
"prefix": "insertAdjacentHTML", | |
"body": "\ninsertAdjacentHTML('${1:beforebegin | afterbegin | beforeend | afterend}', '${2:HTML Code}');\n", | |
"description": "", | |
}, | |
"keyboard": { | |
"prefix": "keyboard", | |
"body": "\n/*\n키보드 코드 참조 (Keyboard codes reference)\nKey\tKeyboard code\nBackspace\t8\nTab\t 9\nEnter\t 13\nShift\t 16\nCtrl\t 17\nAlt\t 18\nPause\t 19\nCapslock\t20\nEsc\t 27\nPage up\t 33\nPage down\t34\nEnd\t 35\nHome\t 36\nLeft arrow\t37\nUp arrow\t38\nRight arrow\t39\nDown arrow\t40\nInsert\t 45\nDelete\t 46\n0\t 48\n1\t 49\n2\t 50\n3\t 51\n4\t 52\n5\t 53\n6\t 54\n7\t 55\n8\t 56\n9\t 57\na\t 65\nb\t 66\nc\t 67\nd\t 68\ne\t 69\nf\t 70\ng\t 71\nh\t 72\ni\t 73\nj\t 74\nk\t 75\nl\t 76\nm\t 77\nn\t 78\no\t 79\np\t 80\nq\t 81\nr\t 82\ns\t 83\nt\t 84\nu\t 85\nv\t 86\nw\t 87\nx\t 88\ny\t 89\nz\t 90\n0 (numpad)\t96\n1 (numpad)\t97\n2 (numpad)\t98\n3 (numpad)\t99\n4 (numpad)\t100\n5 (numpad)\t101\n6 (numpad)\t102\n7 (numpad)\t103\n8 (numpad)\t104\n9 (numpad)\t105\n*\t 106\n+\t 107\n-\t 109\n.\t 110\n/\t 111\nF1\t 112\nF2\t 113\nF3\t 114\nF4\t 115\nF5\t 116\nF6\t 117\nF7\t 118\nF8\t 119\nF9\t 120\nF10\t 121\nF11\t 122\nF12\t 123\n=\t 187\nComa\t 188\nSlash /\t 191\nBackslash \\\t220\n*/\n", | |
"description": "키보드 키코드 참고", | |
}, | |
"strict": { | |
"prefix": "strict", | |
"body": "'use strict';", | |
"description": "", | |
}, | |
"ajax": { | |
"prefix": "ajax", | |
"body": "\nvar XMLHttpFactories, createXHR, sendRequest;\n\nXMLHttpFactories = [\n function () {return new XMLHttpRequest()},\n function () {return new ActiveXObject(\"Msxml2.XMLHTTP\")},\n function () {return new ActiveXObject(\"Msxml3.XMLHTTP\")},\n function () {return new ActiveXObject(\"Microsoft.XMLHTTP\")}\n];\n\ncreateXHR = function () {\n var xmlhttp = false;\n for (var i=0;i<XMLHttpFactories.length;i++) {\n try {\n xmlhttp = XMLHttpFactories[i]();\n }\n catch (e) {\n continue;\n }\n break;\n }\n return xmlhttp;\n};\n\nsendRequest = function (url,callback,postData) {\n var req = createXHR();\n if (!req) return;\n var method = (postData) ? \"POST\" : \"GET\";\n req.open(method,url,true);\n req.setRequestHeader('User-Agent','XMLHTTP/1.0');\n if (postData)\n req.setRequestHeader('Content-type','application/x-www-form-urlencoded');\n req.onreadystatechange = function () {\n if (req.readyState != 4) return;\n if (req.status != 200 && req.status != 304) {\n// alert('HTTP error ' + req.status);\n return;\n }\n callback(req);\n }\n if (req.readyState == 4) return;\n req.send(postData);\n};\n", | |
"description": "AJAX 헬퍼 함수", | |
}, | |
// console ------------------------------------------------ | |
"dir": { | |
"prefix": "dir", | |
"body": "console.dir($1);", | |
"description": "JS: Console - dir", | |
}, | |
"error": { | |
"prefix": "error", | |
"body": "\nconsole.error($0);\n", | |
"description": "", | |
}, | |
"log": { | |
"prefix": "log", | |
"body": "console.log($1);", | |
"description": "JS: Console", | |
}, | |
"console": { | |
"prefix": "console", | |
"body": "console.${1:log}($2);", | |
"description": "콘솔: Console", | |
}, | |
"console - label log": { | |
"prefix": "log-label", | |
"body": [ | |
"console.log('$1:', $1)" | |
], | |
"description": "확인용 콘솔 로그" | |
}, | |
"console - group": { | |
"prefix": "log-group", | |
"body": [ | |
"console.group('$1');", | |
"", | |
"$0", | |
"", | |
"console.groupEnd('$1');" | |
], | |
"description": "그룹 콘솔 로그" | |
}, | |
"console - time": { | |
"prefix": "log-time", | |
"body": [ | |
"console.time('$1');", | |
"", | |
"$0", | |
"", | |
"console.timeEnd('$1');" | |
], | |
"description": "타임 콘솔 로그" | |
}, | |
// comments ------------------------------------------------ | |
"Comments - Author": { | |
"prefix": "cmt", | |
"body": [ | |
"/*! ${1:01.ojbects}.js @ 2017, yamoo9.net */" | |
], | |
"description": "저작자 주석" | |
}, | |
"Comments - Section": { | |
"prefix": "cmt+", | |
"body": [ | |
"// ————————————————————————————————————${2:——}", | |
"// $1", | |
"// ————————————————————————————————————${2:——}", | |
], | |
"description": "메인 섹션 주석" | |
}, | |
"Comments - Element": { | |
"prefix": "cmt-", | |
"body": [ | |
"// ------------------------------------${2:---}", | |
"// $1" | |
], | |
"description": "서브 섹션 주석" | |
}, | |
// ES6 ------------------------------------------------ | |
"ES6 임포트": { | |
"prefix": "import", | |
"body": [ | |
"import $1 from '${2:./}';" | |
], | |
"description": "ES6 import" | |
}, | |
"ES6 화살표함수": { | |
"prefix": "afn", | |
"body": [ | |
"($1) => {$2}" | |
], | |
"description": "ES6 Arrow Function" | |
}, | |
// Vue.js ------------------------------------------------ | |
"vue.js 데이터": { | |
"prefix": "v-data", | |
"body": [ | |
"data () {", | |
"\treturn {", | |
"\t\t$0", | |
"\t}", | |
"}," | |
], | |
"description": "Vue 데이터" | |
}, | |
"vue.js 화살표 함수 데이터": { | |
"prefix": "v-data-arrow", | |
"body": [ | |
"data: () => ({", | |
"\t$0", | |
"})," | |
], | |
"description": "Vue 화살표 함수 데이터" | |
}, | |
"vue.js 배열 속성 전달": { | |
"prefix": "v-props", | |
"body": [ | |
"props: [$0]," | |
], | |
"description": "vue.js 배열 속성 전달" | |
}, | |
"vue.js 객체 속성 전달": { | |
"prefix": "v-props-o", | |
"body": [ | |
"props: {", | |
" type: ${1:String | Number | Boolean | Object | Function | Array | Symbol},", | |
" ${3:required: ${2:false | true},", | |
" }${0:default: ${4:null},}", | |
"}" | |
], | |
"description": "vue.js 객체 속성 전달" | |
}, | |
"vue.js 메서드": { | |
"prefix": "v-methods", | |
"body": [ | |
"methods: {", | |
"\t$0", | |
"}," | |
], | |
"description": "Vue 메서드" | |
}, | |
"vue.js 속성 상속": { | |
"prefix": "v-inheritAttrs", | |
"body": [ | |
"inheritAttrs: ${1: true | false}" | |
], | |
"description": "Vue 속성 상속" | |
}, | |
"vue.js 플러그인": { | |
"prefix": "v-plugin", | |
"body": [ | |
"// 플러그인 객체", | |
"var vuePlugin = {", | |
" // 플러그인 환경설정 객체", | |
" config: {},", | |
" // 플러그인 설치 함수", | |
" install: function(Vue, options){", | |
" // 전역 디렉티브 추가", | |
" Vue.directive('디렉티브-이름', {\\});", | |
" // 전역 믹스인 추가", | |
" // 믹스인 객체 설정", | |
" Vue.mixin({", | |
" mounted: function(){\\}", | |
" \\});", | |
" // 인스턴스 속성/메서드 추가", | |
" Vue.prototype.\\$instanceProperty = '';", | |
" Vue.prototype.\\$instanceMethod = function(options){\\};", | |
" }", | |
"};" | |
], | |
"description": "Vue 플러그인" | |
}, | |
// Nuxt.js ------------------------------------------------ | |
"nuxt.js 헤드 메서드": { | |
"prefix": "n-head", | |
"body": [ | |
"head() {", | |
" return {", | |
" $0", | |
" }", | |
"}, " | |
], | |
"description": "nuxt.js 헤드 메서드" | |
}, | |
"nuxt.js 비동기 데이터": { | |
"prefix": "n-asyncdata", | |
"body": [ | |
"asyncData(${1:context}, ${2:callback}) {", | |
"\t$0", | |
"}," | |
], | |
"description": "Nuxt 비동기 데이터" | |
}, | |
"Nuxt.js - Open Graph 프로토콜": { | |
"prefix": "n-og", | |
"body": [ | |
"{ property: 'og:type', content: 'website' },", | |
"{ property: 'og:image', content: '${1:이미지 경로}' },", | |
"{ property: 'og:site_name', content: '${2:사이트 이름}' },", | |
"{ property: 'og:url', content: '${3:사이트 경로}' },", | |
"{ property: 'og:title', content: '${4:사이트 타이틀}' },", | |
"{ property: 'og:description', content: '${5:사이트 설명}' },", | |
"{ property: 'og:locale', content: 'ko-KR' },", | |
"{ property: 'og:locale:alternate', content: 'en-US' }," | |
], | |
"description": "Nuxt.js - Open Graph 프로토콜" | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"SassDoc Comment": { | |
"prefix": "sassdoc", | |
"body": [ | |
"/// ${1:설명 (Markdown 문법 사용 가능)}", | |
"/// @access ${2:public | private}", | |
"/// @author ${3:작성자 이름}", | |
"/// @param ${4:{데이터유형 | 다른 데이터유형} 매개변수_이름 [기본값] - 설명}", | |
"/// @return ${5:{데이터유형 | 다른 데이터유형} 설명}", | |
"/// @content ${6:믹스인 설명 (믹스인의 경우만, Markdown 문법 사용 가능)}", | |
"/// @example ${7:예제 작성}", | |
"/// ${0:@link http://sassdoc.com/annotations/}" | |
], | |
"description": "SassDoc 주석" | |
}, | |
",": { | |
"prefix": ",", | |
"body": "%${1:플레이스홀더 이름}\n\t$2\n", | |
"description": "Sass - 플레이스홀더 정의" | |
}, | |
"placeholder": { | |
"prefix": "placeholder", | |
"body": "%${1:플레이스홀더 이름}\n\t$2\n$0", | |
"description": "Sass - 플레이스홀더 정의" | |
}, | |
"&&": { | |
"prefix": "&&", | |
"body": "${1:상위 참조 선택자} &$2\n", | |
"description": "Sass - 중첩 상위 참조 선택자" | |
}, | |
"at-root": { | |
"prefix": "at-root", | |
"body": "@at-root\n\t$1\n", | |
"description": "Sass - @at-root" | |
}, | |
"content": { | |
"prefix": "content", | |
"body": "@content", | |
"description": "Sass - @content" | |
}, | |
"debug": { | |
"prefix": "debug", | |
"body": "@debug $0", | |
"description": "Sass - @debug" | |
}, | |
"/": { | |
"prefix": "/", | |
"body": "@extend ${1:상속 선택자 이름}", | |
"description": "Sass - 익스텐드 호출" | |
}, | |
"extend": { | |
"prefix": "extend", | |
"body": "@extend ${1:상속 선택자 이름}", | |
"description": "Sass - 익스텐드 호출" | |
}, | |
"fontface": { | |
"prefix": "fontface", | |
"body": "@font-face\n\tfont-family: $1\n\tsrc:url($2)\n$0", | |
"description": "Sass - @font-face" | |
}, | |
"webfont": { | |
"prefix": "webfont", | |
"body": "@font-face\n\tfont-family: \"${1:FontName}\"\n\tsrc: url(\"${2:FileName}.eot'\")\n\tsrc: url(\"${2:FileName}.eot?#iefix\") format(\"embedded-opentype\"), url(\"${2:FileName}.woff\") format(\"woff\"), url(\"${2:FileName}.ttf\") format(\"truetype\"), url(\"${2:FileName}.svg#FontName\") format(\"svg\")\n\t${3:font-style: ${4:normal}}\n\t${5:font-weight: ${6:normal}}\n$0", | |
"description": "Sass - 웹폰트 코드" | |
}, | |
"import": { | |
"prefix": "import", | |
"body": "@import $0", | |
"description": "Sass - @import" | |
}, | |
"+": { | |
"prefix": "+", | |
"body": "+${1:믹스인 이름}${2:($3)}", | |
"description": "Sass - 믹스인 호출" | |
}, | |
"include": { | |
"prefix": "include", | |
"body": "+${1:믹스인 이름}${2:($3)}", | |
"description": "Sass - 믹스인 호출" | |
}, | |
"media-queries": { | |
"prefix": "media-queries", | |
"body": "@media ${1:only screen} and (${2:max-device-width}: ${3:480px}) ${4: }\n\t$0\n", | |
"description": "Sass - @media-queries 문" | |
}, | |
"media": { | |
"prefix": "media", | |
"body": "@media ${1:screen}\n\t$0\n", | |
"description": "Sass - @media 문" | |
}, | |
"=": { | |
"prefix": "=", | |
"body": "=${1:믹스인 이름} ${2:($3)}\n\t$4\n$0", | |
"description": "Sass - 믹스인 정의" | |
}, | |
"mixin": { | |
"prefix": "mixin", | |
"body": "=${1:믹스인 이름} ${2:($3)}\n\t$4\n$0", | |
"description": "Sass - 믹스인 정의" | |
}, | |
"warn": { | |
"prefix": "warn", | |
"body": "@warn $0", | |
"description": "Sass - @warn" | |
}, | |
"cmt-sass-section": { | |
"prefix": "cmt-sass-section", | |
"body": "//\n * --------------------------------$2\n * $1\n * --------------------------------$2\n$0", | |
"description": "Sass - 섹션 주석" | |
}, | |
"cmt-sass-subsection": { | |
"prefix": "cmt-sass-subsection", | |
"body": "//\n * --------------------------------$2\n * $1\n$0", | |
"description": "Sass - 서브 섹션 주석" | |
}, | |
"nested-properties": { | |
"prefix": "nested-properties", | |
"body": "${1:margin}:\n\t$2", | |
"description": "Sass - 중첩 속성 정의" | |
}, | |
"each": { | |
"prefix": "each", | |
"body": "@each $${1:var} in ${2:item1, item2, item3}\n\t.#{$$1}$3\n\t\t$4\n$0", | |
"description": "Sass - @each 문" | |
}, | |
"for": { | |
"prefix": "for", | |
"body": "@for $i from ${1:1} ${2:through} ${3:10}\n\t$4\n$0", | |
"description": "Sass - @for 문" | |
}, | |
"function": { | |
"prefix": "function", | |
"body": "@function ${1:함수 이름} (${2:전달인자})\n\t$3\n$0", | |
"description": "Sass - @function 문" | |
}, | |
"ifelseif": { | |
"prefix": "ifelseif", | |
"body": "@if ${1:변수} ${2:==} ${3:true|false}\n\t$4\n@else if\n\t$5\n${6: @else}\n\t$7\n$0", | |
"description": "Sass - @if @else if 문" | |
}, | |
"ifelse": { | |
"prefix": "ifelse", | |
"body": "@if ${1:변수} ${2:==} ${3:true|false}\n\t$4\n@else\n\t$5\n$0", | |
"description": "Sass - @if @else 문" | |
}, | |
"if": { | |
"prefix": "if", | |
"body": "@if ${1:변수} ${2:==} ${3:true|false}\n\t$4\n$0", | |
"description": "Sass - @if 문" | |
}, | |
"while": { | |
"prefix": "while", | |
"body": "$i: ${1:1}\n@while $i ${2:<=} ${3:12}\n\t${4:.${5:item-}${6:#{$i\\}}}\n\t\t$7\n\t\t${8:$i: $i + ${9:1}}\n$0", | |
"description": "Sass - @while 문" | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"SassDoc Comment": { | |
"prefix": "sassdoc", | |
"body": [ | |
"/// ${1:설명 (Markdown 문법 사용 가능)}", | |
"/// @access ${2:public | private}", | |
"/// @author ${3:작성자 이름}", | |
"/// @param ${4:{데이터유형 | 다른 데이터유형} 매개변수_이름 [기본값] - 설명}", | |
"/// @return ${5:{데이터유형 | 다른 데이터유형} 설명}", | |
"/// @content ${6:믹스인 설명 (믹스인의 경우만, Markdown 문법 사용 가능)}", | |
"/// @example ${7:예제 작성}", | |
"/// ${0:@link http://sassdoc.com/annotations/}" | |
], | |
"description": "SassDoc 주석" | |
}, | |
",": { | |
"prefix": ",", | |
"body": "%${1:플레이스홀더 이름} {\n\t$2\n}", | |
"description": "Sass - 플레이스홀더 정의", | |
}, | |
"placeholder": { | |
"prefix": "placeholder", | |
"body": "%${1:플레이스홀더 이름} {\n\t$2\n}\n$0", | |
"description": "Sass - 플레이스홀더 정의", | |
}, | |
"&&": { | |
"prefix": "&&", | |
"body": "${1:상위 참조 선택자} &$2 {\n\t$3\n}\n", | |
"description": "Sass - 중첩 상위 참조 선택자", | |
}, | |
"Sass - 중첩 규칙, 부모 참조\n": { | |
"prefix": "Sass - 중첩 규칙, 부모 참조\n", | |
"body": "&$1 {\n\t$2\n}\n", | |
"description": "Sass - 중첩 규칙, 부모 참조", | |
}, | |
"at-root": { | |
"prefix": "at-root", | |
"body": "@at-root {\n\t$1\n}\n$0", | |
"description": "Sass - @at-root", | |
}, | |
"content": { | |
"prefix": "content", | |
"body": "@content;", | |
"description": "Sass - @content", | |
}, | |
"debug": { | |
"prefix": "debug", | |
"body": "@debug $0;", | |
"description": "Sass - @debug", | |
}, | |
"/": { | |
"prefix": "/", | |
"body": "@extend ${1:상속 선택자 이름};", | |
"description": "Sass - 익스텐드 호출", | |
}, | |
"extend": { | |
"prefix": "extend", | |
"body": "@extend ${1:상속 선택자 이름};", | |
"description": "Sass - 익스텐드 호출", | |
}, | |
"fontface": { | |
"prefix": "fontface", | |
"body": "@font-face {\n font-family: $1;\n src:url($2);\n}\n$0", | |
"description": "SASS - @font-face", | |
}, | |
"webfont": { | |
"prefix": "webfont", | |
"body": "@font-face {\n font-family: '${1:FontName}';\n src: url('${2:FileName}.eot');\n src: url('${2:FileName}.eot?#iefix') format('embedded-opentype'),\n url('${2:FileName}.woff') format('woff'),\n url('${2:FileName}.ttf') format('truetype'),\n url('${2:FileName}.svg#${1:FontName}') format('svg');\n ${3:font-style: ${4:normal};}\n ${5:font-weight: ${6:normal};}\n}\n$0", | |
"description": "Sass - 웹폰트 코드", | |
}, | |
"import": { | |
"prefix": "import", | |
"body": "@import \"$0\";", | |
"description": "Sass - @import", | |
}, | |
"+": { | |
"prefix": "+", | |
"body": "@include ${1:믹스인 이름}${2:($3)};", | |
"description": "Sass - 믹스인 호출", | |
}, | |
"include": { | |
"prefix": "include", | |
"body": "@include ${1:믹스인 이름}${2:($3)};", | |
"description": "Sass - 믹스인 호출", | |
}, | |
"media-queries": { | |
"prefix": "media-queries", | |
"body": "@media ${1:only screen} and (${2:max-device-width}: ${3:480px}) ${4: }{\n\t$0\n}", | |
"description": "Sass - @media-queries 문", | |
}, | |
"media": { | |
"prefix": "media", | |
"body": "@media ${1:screen} {\n\t$0\n}", | |
"description": "Sass - @media 문", | |
}, | |
"=": { | |
"prefix": "=", | |
"body": "@mixin ${1:믹스인 이름} ${2:($3)} {\n $4\n}\n$5", | |
"description": "Sass - 믹스인 정의", | |
}, | |
"mixin": { | |
"prefix": "mixin", | |
"body": "@mixin ${1:믹스인 이름} ${2:($3)} {\n\t$4\n}\n$0", | |
"description": "Sass - 믹스인 정의", | |
}, | |
"warn": { | |
"prefix": "warn", | |
"body": "@warn \"$0\";", | |
"description": "Sass - @warn", | |
}, | |
"cmt-sass-section": { | |
"prefix": "cmt-sass-section", | |
"body": "// * --------------------------------$2\n// * $1\n// * --------------------------------$2\n$0", | |
"description": "Sass - 섹션 주석", | |
}, | |
"cmt-sass-subsection": { | |
"prefix": "cmt-sass-subsection", | |
"body": "// * --------------------------------$2\n// * $1\n$0", | |
"description": "Sass - 서브 섹션 주석", | |
}, | |
"call": { | |
"prefix": "call", | |
"body": "call(${1:$name}, ${2:$args...})", | |
"description": "Sass - call() 함수", | |
}, | |
"feature-exists": { | |
"prefix": "feature-exists", | |
"body": "feature_exists(${1:$feature})", | |
"description": "Sass - feature-exists() 함수", | |
}, | |
"function-exists": { | |
"prefix": "function-exists", | |
"body": "function-exists(${1:$name})", | |
"description": "Sass - function-exists() 함수", | |
}, | |
"global-variable-exists": { | |
"prefix": "global-variable-exists", | |
"body": "global-variable-exists(${1:$name})", | |
"description": "Sass - global-variable-exists() 함수", | |
}, | |
"inspect": { | |
"prefix": "inspect", | |
"body": "inspect(${1:$value})", | |
"description": "Sass - inspect() 함수", | |
}, | |
"is-superselector": { | |
"prefix": "is-superselector", | |
"body": "is-superselector(${1:$super}, ${2:$sub})", | |
"description": "Sass - is-superselector() 함수", | |
}, | |
"keywords": { | |
"prefix": "keywords", | |
"body": "keywords(${1:$args})", | |
"description": "Sass - keywords() 함수", | |
}, | |
"list-separator": { | |
"prefix": "list-separator", | |
"body": "list-separator(${1:$list})", | |
"description": "Sass - list-separator() 함수", | |
}, | |
"map-get": { | |
"prefix": "map-get", | |
"body": "map-get(${1:$map}, ${2:$key})", | |
"description": "Sass - map-get() 함수", | |
}, | |
"map-has-key": { | |
"prefix": "map-has-key", | |
"body": "map-has-key(${1:$map}, ${2:$key})", | |
"description": "Sass - map-has-key() 함수", | |
}, | |
"map-keys": { | |
"prefix": "map-keys", | |
"body": "map-keys(${1:$map})", | |
"description": "Sass - map-keys() 함수", | |
}, | |
"map-merge": { | |
"prefix": "map-merge", | |
"body": "map-merge(${1:$map1}, ${2:$map2})", | |
"description": "Sass - map-merge() 함수", | |
}, | |
"map-remove": { | |
"prefix": "map-remove", | |
"body": "map-remove(${1:$map}, ${2:$keys...})", | |
"description": "Sass - map-remove() 함수", | |
}, | |
"map-values": { | |
"prefix": "map-values", | |
"body": "map-values(${1:$map})", | |
"description": "Sass - map-values() 함수", | |
}, | |
"mixin-exists": { | |
"prefix": "mixin-exists", | |
"body": "mixin-exists(${1:$name})", | |
"description": "Sass - mixin-exists() 함수", | |
}, | |
"opacity": { | |
"prefix": "opacity", | |
"body": "opacity(${1:$color})", | |
"description": "Sass - opacity() 함수", | |
}, | |
"random": { | |
"prefix": "random", | |
"body": "random(${1:$limit})", | |
"description": "Sass - random() 함수", | |
}, | |
"selector-append": { | |
"prefix": "selector-append", | |
"body": "selector-append(${1:$selectors...})", | |
"description": "Sass - selector-append() 함수", | |
}, | |
"selector-extend": { | |
"prefix": "selector-extend", | |
"body": "selector-extend(${1:$selector}, ${2:$extendee}, ${3:$extender})", | |
"description": "Sass - selector-extend() 함수", | |
}, | |
"selector-nest": { | |
"prefix": "selector-nest", | |
"body": "selector-nest(${1:$selectors...})", | |
"description": "Sass - selector-nest() 함수", | |
}, | |
"selector-parse": { | |
"prefix": "selector-parse", | |
"body": "selector-parse(${1:$selector})", | |
"description": "Sass - selector-parse() 함수", | |
}, | |
"selector-replace": { | |
"prefix": "selector-replace", | |
"body": "selector-replace(${1:$selector}, ${2:$original}, ${3:$replacement})", | |
"description": "Sass - selector-replace() 함수", | |
}, | |
"selector-unify": { | |
"prefix": "selector-unify", | |
"body": "selector-unify(${1:$selector1}, ${2:$selector2})", | |
"description": "Sass - selector-unify() 함수", | |
}, | |
"simple-selectors": { | |
"prefix": "simple-selectors", | |
"body": "simple-selectors(${1:$selector})", | |
"description": "Sass - simple-selectors() 함수", | |
}, | |
"str-index": { | |
"prefix": "str-index", | |
"body": "str-index(${1:$string}, ${2:$substring})", | |
"description": "Sass - str-index() 함수", | |
}, | |
"str-insert": { | |
"prefix": "str-insert", | |
"body": "str-insert(${1:$string}, ${2:$insert}, ${3:$index})", | |
"description": "Sass - str-insert() 함수", | |
}, | |
"str-length": { | |
"prefix": "str-length", | |
"body": "str-length(${1:$string})", | |
"description": "Sass - str-length() 함수", | |
}, | |
"str-slice": { | |
"prefix": "str-slice", | |
"body": "str-slice(${1:$string}, ${2:$start-at}, ${3:$end-at: -1})", | |
"description": "Sass - str-slice() 함수", | |
}, | |
"to-lower-case": { | |
"prefix": "to-lower-case", | |
"body": "to-lower-case(${1:$string})", | |
"description": "Sass - to-lower-case() 함수", | |
}, | |
"to-upper-case": { | |
"prefix": "to-upper-case", | |
"body": "to-upper-case(${1:$string})", | |
"description": "Sass - to-upper-case() 함수", | |
}, | |
"unique-id": { | |
"prefix": "unique-id", | |
"body": "unique-id()", | |
"description": "Sass - unique-id() 함수", | |
}, | |
"variable-exists": { | |
"prefix": "variable-exists", | |
"body": "variable-exists(${1:$name})", | |
"description": "Sass - variable-exists() 함수", | |
}, | |
"adjust-hue": { | |
"prefix": "adjust-hue", | |
"body": "adjust-hue(${1:$color}, ${2:$degrees})", | |
"description": "SASS - adjust-hue 컬러 함수", | |
}, | |
"complement": { | |
"prefix": "complement", | |
"body": "complement(${1:$color})", | |
"description": "SASS - complement 컬러 함수", | |
}, | |
"darken": { | |
"prefix": "darken", | |
"body": "darken(${1:$color}, ${2:$amount})", | |
"description": "SASS - darken 컬러 함수", | |
}, | |
"desaturate": { | |
"prefix": "desaturate", | |
"body": "desaturate(${1:$color}, ${2:$amount})", | |
"description": "SASS - desaturate 컬러 함수", | |
}, | |
"grayscale": { | |
"prefix": "grayscale", | |
"body": "grayscale(${1:$color})", | |
"description": "SASS - grayscale 컬러 함수", | |
}, | |
"hsl": { | |
"prefix": "hsl", | |
"body": "hsl(${1:$hue}, ${2:$saturation}, ${3:$lightness})", | |
"description": "SASS - hsl 컬러 함수", | |
}, | |
"hsla": { | |
"prefix": "hsla", | |
"body": "hsl(${1:$hue}, ${2:$saturation}, ${3:$lightness}, ${4:$alpha})", | |
"description": "SASS - hsla 컬러 함수", | |
}, | |
"hue": { | |
"prefix": "hue", | |
"body": "hue(${1:$color})", | |
"description": "SASS - hue 컬러 함수", | |
}, | |
"invert": { | |
"prefix": "invert", | |
"body": "invert(${1:$color})", | |
"description": "SASS - invert 컬러 함수", | |
}, | |
"lighten": { | |
"prefix": "lighten", | |
"body": "lighten(${1:$color}, ${2:$amount})", | |
"description": "SASS - lighten 컬러 함수", | |
}, | |
"lightness": { | |
"prefix": "lightness", | |
"body": "lightness(${1:$color})", | |
"description": "SASS - lightness 컬러 함수", | |
}, | |
"saturate": { | |
"prefix": "saturate", | |
"body": "saturate(${1:$color}, ${2:$amount})", | |
"description": "SASS - saturate 컬러 함수", | |
}, | |
"saturation": { | |
"prefix": "saturation", | |
"body": "saturation(${1:$color})", | |
"description": "SASS - saturation 컬러 함수", | |
}, | |
"blue": { | |
"prefix": "blue", | |
"body": "blue(${1:$color})", | |
"description": "SASS - blue() 컬러 함수", | |
}, | |
"green": { | |
"prefix": "green", | |
"body": "green(${1:$color})", | |
"description": "SASS - green() 컬러 함수", | |
}, | |
"mix": { | |
"prefix": "mix", | |
"body": "mix(${1:$color1}, ${2:$color2}, ${3:$weight:50%})", | |
"description": "SASS - mix 컬러 함수", | |
}, | |
"red": { | |
"prefix": "red", | |
"body": "red(${1:$color})", | |
"description": "SASS - red() 컬러 함수", | |
}, | |
"rgb": { | |
"prefix": "rgb", | |
"body": "rgb(${1:$red}, ${2:$green}, ${3:$blue})", | |
"description": "SASS - rgb() 컬러 함수", | |
}, | |
"rgba-long": { | |
"prefix": "rgba-l", | |
"body": "rgb(${1:$red}, ${2:$green}, ${3:$blue}, ${4:$alpha})", | |
"description": "SASS - rgba 컬러 함수", | |
}, | |
"rgba": { | |
"prefix": "rgba", | |
"body": "rgba(${1:$color}, ${3:$alpha})", | |
"description": "SASS - rgba 단축 컬러 함수", | |
}, | |
"counter": { | |
"prefix": "counter", | |
"body": "counter(${1:$args...})", | |
"description": "SASS - counter IE7 함수", | |
}, | |
"counters": { | |
"prefix": "counters", | |
"body": "counters(${1:$args...})", | |
"description": "SASS - counters IE7 함수", | |
}, | |
"comparable": { | |
"prefix": "comparable", | |
"body": "comparable(${1:$number1}, ${2:$number2})", | |
"description": "SASS - comparable 체크 함수", | |
}, | |
"type-of": { | |
"prefix": "type-of", | |
"body": "type-of(${1:$value})", | |
"description": "SASS - type-of 체크 함수", | |
}, | |
"unit": { | |
"prefix": "unit", | |
"body": "unit(${1:$number})", | |
"description": "SASS - unit 체크 함수", | |
}, | |
"unitless": { | |
"prefix": "unitless", | |
"body": "unitless(${1:$number})", | |
"description": "SASS - unitless 체크 함수", | |
}, | |
"append": { | |
"prefix": "append", | |
"body": "append(${1:$list}, ${2:$value}${3:, ${4:auto|comma|space}})", | |
"description": "SASS - append, 리스트 아이템 추가 함수", | |
}, | |
"index": { | |
"prefix": "index", | |
"body": "index(${1:$list}, ${2:$value})", | |
"description": "SASS - index, 해당 아이템 순서반환 함수", | |
}, | |
"join": { | |
"prefix": "join", | |
"body": "join(${1:$list1}, ${2:$list2}${3:, ${4:auto|comma|space}})", | |
"description": "SASS - join, 리스트를 합치는 함수", | |
}, | |
"length": { | |
"prefix": "length", | |
"body": "length(${1:$list})", | |
"description": "SASS - length, 아이템 개수 반환 함수", | |
}, | |
"nth": { | |
"prefix": "nth", | |
"body": "nth(${1:$list}, ${2:$n})", | |
"description": "SASS - nth, 해당 순번의 아이템 반환 함수", | |
}, | |
"zip": { | |
"prefix": "zip", | |
"body": "zip(${1:$lists...})", | |
"description": "SASS - zip, 아이템 인자 순서에 맞춰 합치는 함수", | |
}, | |
"if-function": { | |
"prefix": "if-function", | |
"body": "if(${1:$condition}, ${2:$if-true}, ${3:$if-false})", | |
"description": "Sass - if() 조건 함수", | |
}, | |
"abs": { | |
"prefix": "abs", | |
"body": "abs(${1:$value})", | |
"description": "SASS - abs 수학 함수", | |
}, | |
"ceil": { | |
"prefix": "ceil", | |
"body": "ceil(${1:$value})", | |
"description": "SASS - ceil 수학 함수", | |
}, | |
"floor": { | |
"prefix": "floor", | |
"body": "floor(${1:$value})", | |
"description": "SASS - floor 수학 함수", | |
}, | |
"max": { | |
"prefix": "max", | |
"body": "max(${1:$numbers...})", | |
"description": "SASS - max 수학 함수", | |
}, | |
"min": { | |
"prefix": "min", | |
"body": "min(${1:$numbers...})", | |
"description": "SASS - min 수학 함수", | |
}, | |
"percentage": { | |
"prefix": "percentage", | |
"body": "percentage(${1:$value})", | |
"description": "SASS - percentage 수학 함수", | |
}, | |
"round": { | |
"prefix": "round", | |
"body": "round(${1:$value})", | |
"description": "SASS - round 수학 함수", | |
}, | |
"alpha": { | |
"prefix": "alpha", | |
"body": "alpha(${1:$color})", | |
"description": "SASS - alpha 컬러 함수", | |
}, | |
"fade-in": { | |
"prefix": "fade-in", | |
"body": "fade-in(${1:$color}, ${2:$amount})", | |
"description": "SASS - fade-in 컬러 함수", | |
}, | |
"fade-out": { | |
"prefix": "fade-out", | |
"body": "fade-out(${1:$color}, ${2:$amount})", | |
"description": "SASS - fade-out 컬러 함수", | |
}, | |
"opacify": { | |
"prefix": "opacify", | |
"body": "opacify(${1:$color}, ${2:$amount})", | |
"description": "SASS - ofacify 컬러 함수", | |
}, | |
"transparentize": { | |
"prefix": "transparentize", | |
"body": "transparentize(${1:$color}, ${2:$amount})", | |
"description": "SASS - transparentize 컬러 함수", | |
}, | |
"adjust-color": { | |
"prefix": "adjust-color", | |
"body": "adjust-color(${1:$color}, ${2:[$red]}, ${3:[$green]}, ${4:[$blue]}, ${5:[$hue]}, ${6:[$saturation]}, ${7:[$lightness]}, ${7:[$alpha]})", | |
"description": "SASS - adjust-color 컬러 함수", | |
}, | |
"change-color": { | |
"prefix": "change-color", | |
"body": "change-color(${1:$color}, ${2:[$red]}, ${3:[$green]}, ${4:[$blue]}, ${5:[$hue]}, ${6:[$saturation]}, ${7:[$lightness]}, ${7:[$alpha]})", | |
"description": "SASS - change-color 컬러 함수", | |
}, | |
"ie-hex-str": { | |
"prefix": "ie-hex-str", | |
"body": "ie-hex-str(${1:$color})", | |
"description": "SASS - ie-hex-str 컬러 함수", | |
}, | |
"scale-color": { | |
"prefix": "scale-color", | |
"body": "scale-color(${1:$color}, ${2:[$red]}, ${3:[$green]}, ${4:[$blue]}, ${6:[$saturation]}, ${7:[$lightness]}, ${7:[$alpha]})", | |
"description": "SASS - scale-color 컬러 함수", | |
}, | |
"quote": { | |
"prefix": "quote", | |
"body": "quote(${1:$string})", | |
"description": "SASS - quote 따옴표 붙이는 함수", | |
}, | |
"unquote": { | |
"prefix": "unquote", | |
"body": "unquote(${1:$string})", | |
"description": "SASS - unquote 따옴표 제거하는 함수", | |
}, | |
"nested-properties": { | |
"prefix": "nested-properties", | |
"body": "${1:margin}: {\n\t$2\n}\n$0", | |
"description": "Sass - 중첩 속성 정의", | |
}, | |
"#": { | |
"prefix": "#", | |
"body": "#{$0}", | |
"description": "Sass - #{}", | |
}, | |
"interpolation": { | |
"prefix": "interpolation", | |
"body": "#{$0}", | |
"description": "Sass - #{}", | |
}, | |
"each": { | |
"prefix": "each", | |
"body": "@each $${1:var} in ${2:item1, item2, item3} {\n\t.#{$$1}$3 {\n\t\t$4\n\t}\n}$0", | |
"description": "Sass - @each 문", | |
}, | |
"error": { | |
"prefix": "error", | |
"body": "@error \"$0\"", | |
"description": "Sass - @error", | |
}, | |
"for": { | |
"prefix": "for", | |
"body": "@for $i from ${1:1} ${2:through} ${3:10} {\n\t$4\n}\n$0", | |
"description": "Sass - @for 문", | |
}, | |
"function": { | |
"prefix": "function", | |
"body": "@function ${1:함수 이름} (${2:전달인자}) {\n\t$3\n}\n$0", | |
"description": "Sass - @function 문", | |
}, | |
"ifelseif": { | |
"prefix": "ifelseif", | |
"body": "@if ${1:변수} ${2:==} ${3:true|false} {\n\t$4\n} @else if {\n\t$5\n}${6: @else {\n\t$7\n\\}}\n$0", | |
"description": "Sass - @if @else if 문", | |
}, | |
"ifelse": { | |
"prefix": "ifelse", | |
"body": "@if ${1:변수} ${2:==} ${3:true|false} {\n\t$4\n} @else {\n\t$5\n}\n$0", | |
"description": "Sass - @if @else 문", | |
}, | |
"if": { | |
"prefix": "if", | |
"body": "@if ${1:변수} ${2:==} ${3:true|false} {\n\t$4\n}\n$0", | |
"description": "Sass - @if 문", | |
}, | |
"return": { | |
"prefix": "return", | |
"body": "@return $0", | |
"description": "Sass - @return", | |
}, | |
"while": { | |
"prefix": "while", | |
"body": "$i: ${1:1};\n@while $i ${2:<=} ${3:12} {\n\t${4:.${5:item-}${6:#{$i\\}}} {\n\t\t$7\n\t\t${8:$i: $i + ${9:1};}\n\t}\n}\n$0", | |
"description": "Sass - @while 문", | |
}, | |
".d": { | |
"prefix": ".d", | |
"body": "!default", | |
"description": "Sass - !default", | |
}, | |
".o": { | |
"prefix": ".o", | |
"body": "!optional", | |
"description": "Sass - !optional", | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"html": { | |
"snippets": { | |
"ull": "ul>li[id=${1} class=${2}]*2{ Will work with html, jade, haml and slim }", | |
"oll": "<ol><li id=${1} class=${2}> Will only work in html </ol>", | |
"ran": "{ Wrap plain text in curly braces }" | |
} | |
}, | |
"css": { | |
"snippets": { | |
"cb": "color: black", | |
"bsd": "border: 1px solid ${1:red}", | |
"ls": "list-style: ${1}" | |
} | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
/* | |
// Place your snippets for SVG 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" | |
} | |
*/ | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
// Place your snippets for typescript 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" | |
// } | |
"console - log": { | |
"prefix": "log", | |
"body": [ | |
"console.log($1);" | |
], | |
"description": "기록용 콘솔 로그" | |
}, | |
// comments ------------------------------------------------ | |
"Comments - Author": { | |
"prefix": "cmt", | |
"body": [ | |
"/*! ${1:01.ojbects}.js @ 2017, yamoo9.net */" | |
], | |
"description": "저작자 주석" | |
}, | |
"Comments - Section": { | |
"prefix": "cmt+", | |
"body": [ | |
"// ————————————————————————————————————${2:——}", | |
"// $1", | |
"// ————————————————————————————————————${2:——}" | |
], | |
"description": "메인 섹션 주석" | |
}, | |
"Comments - Element": { | |
"prefix": "cmt-", | |
"body": [ | |
"// ------------------------------------${2:---}", | |
"// $1" | |
], | |
"description": "서브 섹션 주석" | |
}, | |
"ES6 화살표함수": { | |
"prefix": "afn", | |
"body": [ | |
"($1) => {$2}" | |
], | |
"description": "ES6 Arrow Function" | |
}, | |
/// Angular --------------------------------------------------------------- | |
"Angular 라이프 사이클 훅": { | |
"prefix": "ng-life-cycle-hook", | |
"body": [ | |
"/** ", | |
" * Angular 라이프 사이클 훅 ", | |
" * ——————————————————————", | |
" * OnChanges", | |
" * OnInit", | |
" * DoCheck", | |
" * AfterContentInit", | |
" * AfterContentChecked", | |
" * AfterViewInit", | |
" * AfterViewChecked", | |
" * OnDestroy", | |
"*/" | |
], | |
"description": "Angular 라이프 사이클 훅" | |
}, | |
/// Vue.js --------------------------------------------------------------- | |
"Vue TS Component": { | |
"prefix": "v-component", | |
"description": "Vue TypeScript 컴포넌트", | |
"body": [ | |
"import Vue from 'vue';", | |
"import { Component${1:, Prop, Emit, Watch} } from 'vue-property-decorator';", | |
"", | |
"@Component($3)", | |
"export default class ${2:Component} extends Vue {", | |
"\t$0", | |
"\tconstructor(){", | |
"\t\tsuper();", | |
"\t}", | |
"}" | |
] | |
}, | |
"Vue Prop": { | |
"prefix": "v-prop", | |
"description": "Vue TypeScript @Prop 데코레이터", | |
"body": [ | |
"@Prop(${1:{default: 'value'\\} | Number | [String, Boolean]}) ${2:prop}!:${3:types};$0" | |
] | |
}, | |
"Vue Watch": { | |
"prefix": "v-watch", | |
"description": "Vue TypeScript @Watch 데코레이터", | |
"body": [ | |
"@Watch('${1:path}'${2:, { immediate: true, deep: true \\}})\n${3:onMethodChanged}(val${4::string}, oldVal${5::string}) {", | |
"\t$0", | |
"};" | |
] | |
}, | |
"Vue Emit": { | |
"prefix": "v-emit", | |
"description": "Vue TypeScript @Emit 데코레이터", | |
"body": [ | |
"@Emit(${1:'event'})\n${2:methodName}() {", | |
"\t$0", | |
"}" | |
] | |
}, | |
"Vue Component Http": { | |
"prefix": "v-component-http", | |
"description": "Vue 컴포넌트 with HTTP", | |
"body": [ | |
"import Vue from 'vue';", | |
"import Component from 'vue-class-component';", | |
"import axios, { AxiosResponse } from 'axios';", | |
"", | |
"@Component({", | |
"\t${1:template: require('component.html')}", | |
"})", | |
"export class ${2:Component} extends Vue {", | |
"", | |
"\tprivate url:string = '$3';", | |
"", | |
"\tconstructor() {", | |
"\t\tsuper();", | |
"\t\tthis.axios = axios;", | |
"\t}", | |
"", | |
"\tmounted() {", | |
"\t\tthis.axios.get(this.url).then((response: AxiosResponse) => {", | |
"\t\t\tthis.items = response.data;", | |
"\t\t\t$0", | |
"\t\t}, (error) => {", | |
"\t\t\tconsole.error(error);", | |
"\t\t});", | |
"\t}", | |
"}" | |
] | |
}, | |
"Vue Routes": { | |
"prefix": "v-routing", | |
"description": "Vue 라우팅 파일", | |
"body": [ | |
"import Vue from 'vue';", | |
"import VueRouter from 'vue-router';", | |
"", | |
"Vue.use(VueRouter);", | |
"", | |
"let router:VueRouter = new VueRouter({", | |
"\troutes: [", | |
"\t\t{ path: '${1:path}', component: ${2:ComponentName} },", | |
"\t\t$3", | |
"\t]", | |
"});", | |
"", | |
"${4:new Vue({", | |
"\tel: '#app-main',", | |
"\trouter: router", | |
"\\});}" | |
] | |
}, | |
"Vue Service Class": { | |
"prefix": "v-service", | |
"description": "서비스 클래스(싱글톤)", | |
"body": [ | |
"class ${Feature}Service {", | |
"", | |
"\tprivate static _instance: ${Feature}Service;", | |
"", | |
"\tprivate constructor() {", | |
"\t}", | |
"", | |
"\tstatic createInstance() {", | |
"\t\t${Feature}Service.getInstance();", | |
"\t}", | |
"", | |
"\tstatic getInstance() {", | |
"\t\treturn this._instance || (this._instance = new this());", | |
"\t}", | |
"$0", | |
"}" | |
] | |
}, | |
"Vuex Store": { | |
"prefix": "v-store", | |
"description": "Vuex 스토어", | |
"body": [ | |
"import axios from 'axios';", | |
"import { ActionContext, Store } from 'vuex';", | |
"import { getStoreAccessors } from 'vuex-typescript';", | |
"", | |
"export interface Product {", | |
"\tid: number;", | |
"\tname: string;", | |
"\tunitPrice: number;", | |
"}", | |
"", | |
"export interface ProductInBasket {", | |
"\tproduct: Product;", | |
"\tisSelected: boolean;", | |
"}", | |
"", | |
"export interface BasketState {", | |
"\titems: ProductInBasket[];", | |
"\ttotalAmount: number;", | |
"}", | |
"", | |
"type BasketContext = ActionContext<BasketState, BasketState>;", | |
"", | |
"export const basket = {", | |
"\tnamespaced: false,", | |
"", | |
"\tstate: {", | |
"\t\titems: [],", | |
"\t\ttotalAmount: 0,", | |
"\t},", | |
"", | |
"\tgetters: {", | |
"\t\tgetProductNames(state: BasketState) {", | |
"\t\t\treturn state.items.map((item) => item.product.name);", | |
"\t\t},", | |
"\t\tgetTotalAmountWithoutDiscount(state: BasketState) {", | |
"\t\t\treturn state.items.reduce((total, item) => total + item.product.unitPrice, 0);", | |
"\t\t},", | |
"\t},", | |
"", | |
"\tmutations: {", | |
"\t\tappendItem(state: BasketState, item: { product: Product; atTheEnd: boolean }) {", | |
"\t\t\tstate.items.push({ product: item.product, isSelected: false });", | |
"\t\t},", | |
"\t\tsetTotalAmount(state: BasketState, totalAmount: number) {", | |
"\t\t\tstate.totalAmount = totalAmount;", | |
"\t\t},", | |
"\t},", | |
"", | |
"\tactions: {", | |
"\t\tasync updateTotalAmount(context: BasketContext, discount: number): Promise<void> {", | |
"\t\t\tconst totalBeforeDiscount = readTotalAmountWithoutDiscount(context);", | |
"\t\t\tconst response = await axios.get(`/api/calculatetotal/\\${totalBeforeDiscount}/\\${discount}`);", | |
"\t\t\tcommitSetTotalAmount(context, response.data.totalAfterDiscount);", | |
"\t\t},", | |
"\t},", | |
"};", | |
"", | |
"export const createStore = () => new Store<BasketState>(basket);", | |
"", | |
"const { commit, read, dispatch } = getStoreAccessors<BasketState, BasketState>('');", | |
"", | |
"export const readProductNames = read(basket.getters.getProductNames);", | |
"export const readTotalAmountWithoutDiscount = read(basket.getters.getTotalAmountWithoutDiscount);", | |
"export const dispatchUpdateTotalAmount = dispatch(basket.actions.updateTotalAmount);", | |
"export const commitAppendItem = commit(basket.mutations.appendItem);", | |
"export const commitSetTotalAmount = commit(basket.mutations.setTotalAmount);", | |
"$0", | |
"" | |
] | |
}, | |
"Vue Component using Vuex store": { | |
"prefix": "v-component-store", | |
"description": "Vue 컴포넌트 with Vuex 스토어", | |
"body": [ | |
"import Vue from 'vue';", | |
"import Component from 'vue-class-component';", | |
"import { readProductNames, readTotalAmountWithoutDiscount, dispatchUpdateTotalAmount } from './store';", | |
"", | |
"@Component({", | |
"\ttemplate: require('./basket.html')", | |
"})", | |
"export class BasketComponent extends Vue {", | |
"\t", | |
"\tget productNames() {", | |
"\t\treturn readProductNames(this.\\$store);", | |
"\t}", | |
"", | |
"\tget totalAmountWithoutDiscount() {", | |
"\t\treturn readTotalAmountWithoutDiscount(this.\\$store);", | |
"\t}", | |
"", | |
"\tupdateTotal() {", | |
"\t\tdispatchUpdateTotalAmount(this.\\$store, 10);", | |
"\t}", | |
"}", | |
"$0", | |
"" | |
] | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"vBind": { | |
"prefix": "v-bind", | |
"body": [ | |
"v-bind=\"$attrs\"" | |
], | |
"description": "vue.js - v-bind 디렉티브로 연결된 속성 집합(객체) 설정" | |
}, | |
"vIf": { | |
"prefix": "v-if", | |
"body": [ | |
"v-if=\"${1:expression}\"" | |
], | |
"description": "vue.js - if 디렉티브" | |
}, | |
"vElseIf": { | |
"prefix": "v-else-if", | |
"body": [ | |
"v-else-if=\"${1:expression}\" $0" | |
], | |
"description": "vue.js - else if 디렉티브" | |
}, | |
"vFor": { | |
"prefix": "v-for", | |
"body": [ | |
"v-for=\"${2:item} in ${1:items}\"$0" | |
], | |
"description": "vue.js - for 디렉티브" | |
}, | |
"vFor Index": { | |
"prefix": "v-for-i", | |
"body": [ | |
"v-for=\"(${2:item},${3:i}) in ${1:items}\" :key=\"${3:i}\"$0" | |
], | |
"description": "vue.js - for 디렉티브" | |
}, | |
"vClass": { | |
"prefix": "v-class", | |
"body": [ | |
"${1:v-bind}:class=\"{${1:cssClass}: ${2:expression}}\"" | |
], | |
"description": "vue.js - class 디렉티브" | |
}, | |
"vHref": { | |
"prefix": "v-href", | |
"body": [ | |
"${1:v-bind}:href=\"${1:expression}\"" | |
], | |
"description": "vue.js - href 디렉티브" | |
}, | |
"vShow": { | |
"prefix": "v-show", | |
"body": [ | |
"v-show=\"${1:expression}\"" | |
], | |
"description": "vue.js - show 디렉티브" | |
}, | |
"vModel": { | |
"prefix": "v-model", | |
"body": [ | |
"v-model=\"${1:expression}\"" | |
], | |
"description": "vue.js - model 디렉티브" | |
}, | |
"vOn": { | |
"prefix": "v-on", | |
"body": [ | |
"v-on=\"$listeners\"" | |
], | |
"description": "vue.js - 상위 컴포넌트의 v-on 이벤트 상속" | |
}, | |
"vOnSubmit": { | |
"prefix": "v-@submit", | |
"body": [ | |
"@submit${2:.prevent}=\"${1:expression}\"" | |
], | |
"description": "vue.js - @submit 이벤트" | |
}, | |
"vOnClick": { | |
"prefix": "v-@click", | |
"body": [ | |
"@click{2:.prevent}=\"${1:expression}\"" | |
], | |
"description": "vue.js - @click 이벤트" | |
}, | |
"vRouterView": { | |
"prefix": "v-routerView", | |
"body": [ | |
"<router-view>${1:Loading...}</router-view>" | |
], | |
"description": "vue.js - 라우터 뷰" | |
}, | |
"vRouterLink": { | |
"prefix": "v-routerLink", | |
"body": [ | |
"<router-link ${1:v-bind}:to=\"${2:linkPath}\">${3:linkName}</router-link>" | |
], | |
"description": "vue.js - 라우터 링크" | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"Vue TypeScript 템플릿": { | |
"prefix": "vt-template", | |
"description": "Vue TypeScript 컴포넌트", | |
"body": [ | |
"<template>", | |
"", | |
"</template>", | |
"", | |
"<script lang=\"ts\">", | |
"\timport Vue from 'vue';", | |
"\timport { Component${1:, Prop, Emit, Watch} } from 'vue-property-decorator';", | |
"", | |
"\t@Component($3)", | |
"\texport default class ${2:Component} extends Vue {", | |
"\t\t$0", | |
"\t};", | |
"</script>", | |
"", | |
"<style>", | |
"", | |
"</style>" | |
] | |
}, | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment