Ruby VS 코드 스니펫
VS Code에 사용자 지정 스니펫을 추가하기 위한 참조:
VS 코드 스니펫 변환에 대한 내 블로그 게시물
내 gif를 기록하는 데 사용하는 프로그램:
스니펫 목록
변수 할당으로 초기화
"Initialize With Var Assign" : {
"prefix": "init var",
"body": [
"def initialize($1$2)",
"\t${1/^(\\w+)|,\\s(\\w+)/${2:+\n\t}@$1$2 = $1$2/g}$0",
"end"
]
}
Purpose: creates initialize method for a class, taking arguments which are assigned to class-scoped variables
Demo:어떻게:
접두사: "init var"
Tabstop 1: 클래스 변수로 설정해야 하는 매개변수를 쉼표로 구분하여 입력합니다.
Tabstop 2: 클래스 변수로 설정하면 안 되는 매개변수를 쉼표로 구분하여 입력합니다
Tabstop 0: 초기화 메서드 끝에 커서가 있음
Attr_Accessor로 초기화
"Initialize With Attr" : {
"prefix": "init attr",
"body": [
"attr_accessor ${1/(\\w+,\\s|\\w+)/:$1/g}$3",
"",
"def initialize($1$2)",
"\t${1/^(\\w+)|,\\s(\\w+)/${2:+\n\t}@$1$2 = $1$2/g}$0",
"end"
]
}
Purpose: creates initialize method for a class, as with the prior snippet, but additionally creates attr_accessors for each class variable set
Demo:
어떻게:
접두사: "init attr"
Tabstop 1: 클래스 변수 및 attr_accessors로 설정해야 하는 초기화 메서드 매개변수를 쉼표로 구분하여 입력합니다.
Tabstop 2: 클래스 변수로 설정하면 안 되는 초기화 메서드 매개변수를 쉼표로 구분하여 입력합니다
Tabstop 3: 추가 attr_accessors를 입력하거나 새 줄에 attr_readers와 같은 기타 필요한 코드를 입력합니다
Tabstop 0: 초기화 메서드 끝에 커서가 있음
클래스 설정
"Class Setup" : {
"prefix": "class setup",
"body": [
"class ${1:${TM_FILENAME_BASE/[^a-zA-Z]*([a-zA-Z]+.*_.*)|[^a-zA-Z]*([a-zA-Z].*)/${1:/pascalcase}${2:/capitalize}/}}",
"\tattr_accessor ${2/(\\w+,\\s|\\w+)/:$1/g}$4",
"",
"\tdef initialize($2$3)",
"\t\t${2/^(\\w+)|,\\s(\\w+)/${2:+\n\t\t}@$1$2 = $1$2/g}$5",
"\tend",
"",
"\t$0",
"end",
]
}
Purpose: creates initialize method and attr_accessors, as with the prior snippet, but also creates the containing class definition which derives its name from the filename
Demo:어떻게:
접두사: "클래스 설정"
Tabstop 1: 클래스 이름 입력
Tabstop 2: 클래스 변수 및 attr_accessors로 설정해야 하는 초기화 메서드 매개변수를 쉼표로 구분하여 입력합니다.
Tabstop 3: 클래스 변수로 설정하면 안 되는 초기화 메서드 매개변수를 쉼표로 구분하여 입력합니다
Tabstop 4: 추가 attr_accessors를 입력하거나 새 줄에 attr_readers와 같은 기타 필요한 코드를 입력합니다
Tabstop 5: 초기화 메서드 내에 추가 코드를 입력합니다
Tabstop 0: 커서가 클래스 정의의 끝에 위치함
모든 변수
"All Class Variable" : {
"prefix": "all",
"body": [
"\t@@all = []",
"",
"${TM_SELECTED_TEXT/(end)$/\n\t\t@@all << self\n\tend/}",
"",
"\tdef self.all",
"\t\t@all",
"\tend"
]
}
Purpose: for an existing class, creates class-level @@all variable to contain array of class instances, adds instance to array within initialize method, and creates class-level get method
Demo:어떻게:
선택: 방법 정의를 닫는 마지막 단어 "end"를 통해 첫 번째 행의 시작부터 시작하여 방법을 초기화합니다.
참고: 스니펫이 제대로 작동하려면 "끝"이 선택 항목의 마지막 문자여야 합니다. 그렇지 않은 경우 초기화 내의 삽 방법이 생성되지 않습니다
유형 접두사: "all"
Tabstop 0: getter 메서드 끝에 커서가 있음
ActiveRecord 모델 클래스
"ActiveRecord Class" : {
"prefix": "ar class",
"body": [
"class ${1:${TM_FILENAME_BASE/[^a-zA-Z]*([a-zA-Z]+.*_.*)|[^a-zA-Z]*([a-zA-Z].*)/${1:/pascalcase}${2:/capitalize}/}} < ActiveRecord::Base",
"\t$0",
"end"
]
}
Purpose: creates basic class definition with inheritance for use with the ActiveRecord ORM gem
Demo:어떻게:
프롬프트: "ar class"
Tabstop 1: 클래스 이름 입력
Tabstop 0: 커서가 클래스 정의 내에 배치됨
Reference
이 문제에 관하여(Ruby VS 코드 스니펫), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/arkfuldodger/ruby-vs-code-snippets-37id텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)