Skip to content

Commit 1adff5c

Browse files
authored
Merge pull request #274 from MomentDerek/master
smallCamelCaseName
2 parents 895b3a2 + 4356b42 commit 1adff5c

File tree

3 files changed

+32
-2
lines changed

3 files changed

+32
-2
lines changed

src/main/java/com/shuzijun/leetcode/plugin/utils/VelocityTool.java

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,36 @@ public static String camelCaseName(String underscoreName) {
5959
}
6060
}
6161

62+
public static String smallCamelCaseName(String underscoreName) {
63+
64+
if (isNotBlank(underscoreName)) {
65+
underscoreName = underscoreName.replace(" ", "_");
66+
StringBuilder result = new StringBuilder();
67+
if (isNumeric(underscoreName.substring(0, 1))) {
68+
underscoreName = numsAry[Integer.valueOf(underscoreName.substring(0, 1))] + "-" + underscoreName.substring(1);
69+
}
70+
boolean first = false;
71+
boolean flag = false;
72+
for (int i = 0; i < underscoreName.length(); i++) {
73+
char ch = underscoreName.charAt(i);
74+
if ('_' == ch || '-' == ch) {
75+
flag = true;
76+
} else {
77+
if (flag || first) {
78+
result.append(Character.toUpperCase(ch));
79+
flag = false;
80+
first = false;
81+
} else {
82+
result.append(ch);
83+
}
84+
}
85+
}
86+
return result.toString();
87+
} else {
88+
return underscoreName;
89+
}
90+
}
91+
6292

6393
public static String snakeCaseName(String underscoreName) {
6494

src/main/resources/i18n/info.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ report=Report to plugin developer
3434
donate.info=Donation
3535
updata=Leetcode Editor new version {0} is found. Please update the plugin
3636
user.email=YOU HAVE NOT VERIFIED YOUR ACCOUNT\nYou cannot submit your code to the judge system until you verify your email.\nYou may resend the verification email or change your email in your profile page.
37-
template.variable=${0}question.title{1}\tquestion title\tex:Two Sum\n${0}question.titleSlug{1}\tquestion title slug \tex:two-sum\n${0}question.frontendQuestionId{1}\tquestion serial number\n${0}question.content{1}\tquestion content\n${0}question.code{1}\tquestion code\n$!velocityTool.camelCaseName(str)\ttransform str camel case\n$!velocityTool.snakeCaseName(str)\ttransform str snake case\n$!velocityTool.leftPadZeros(str,n)\tpad sting with zero make str length at least n.\n$!velocityTool.date()\tThe current time
37+
template.variable=${0}question.title{1}\tquestion title\tex:Two Sum\n${0}question.titleSlug{1}\tquestion title slug \tex:two-sum\n${0}question.frontendQuestionId{1}\tquestion serial number\n${0}question.content{1}\tquestion content\n${0}question.code{1}\tquestion code\n$!velocityTool.camelCaseName(str)\ttransform str big camel case\n$!velocityTool.smallCamelCaseName(str)\ttransform str small camel case\n$!velocityTool.snakeCaseName(str)\ttransform str snake case\n$!velocityTool.leftPadZeros(str,n)\tpad sting with zero make str length at least n.\n$!velocityTool.date()\tThe current time
3838
tree.load=Please load questions first
3939
tree.null=Questions returned are empty
4040
tree.select=Please select a valid question in the list

src/main/resources/i18n/info_zh.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ report=\u5411\u63D2\u4EF6\u4F5C\u8005\u62A5\u544A
3434
donate.info=\u6253\u8D4F
3535
updata=leetcode editor\u65B0\u7248\u672C {0} \u53D1\u5E03,\u8BF7\u53CA\u65F6\u66F4\u65B0
3636
user.email=\u60A8\u5C1A\u672A\u9A8C\u8BC1\u81EA\u5DF1\u7684\u5E10\u6237\n\u5728\u9A8C\u8BC1\u7535\u5B50\u90AE\u4EF6\u4E4B\u524D\uFF0C\u60A8\u65E0\u6CD5\u5C06\u4EE3\u7801\u63D0\u4EA4\u7ED9\u8BC4\u5224\u7CFB\u7EDF\u3002\n\u60A8\u53EF\u4EE5\u5728\u4E2A\u4EBA\u8D44\u6599\u9875\u9762\u4E2D\u91CD\u65B0\u53D1\u9001\u9A8C\u8BC1\u7535\u5B50\u90AE\u4EF6\u6216\u66F4\u6539\u7535\u5B50\u90AE\u4EF6\u3002
37-
template.variable=${0}question.title{1}\t\u9898\u76EE\u6807\u9898\t\u793A\u4F8B:\u4E24\u6570\u4E4B\u548C\n${0}question.titleSlug{1}\t\u9898\u76EE\u6807\u8BB0\t\u793A\u4F8B:two-sum\n${0}question.frontendQuestionId{1}\t\u9898\u76EE\u7F16\u53F7\n${0}question.content{1}\t\u9898\u76EE\u63CF\u8FF0\n${0}question.code{1}\t\u9898\u76EE\u4EE3\u7801\n$!velocityTool.camelCaseName(str)\t\u8F6C\u6362\u5B57\u7B26\u4E3A\u9A7C\u5CF0\u6837\u5F0F\n$!velocityTool.snakeCaseName(str)\t\u8F6C\u6362\u5B57\u7B26\u4E3A\u86C7\u5F62\u6837\u5F0F\n$!velocityTool.leftPadZeros(str,n)\tpad sting with zero make str length at least n.\n$!velocityTool.date()\t\u83B7\u53D6\u5F53\u524D\u65F6\u95F4
37+
template.variable=${0}question.title{1}\t\u9898\u76ee\u6807\u9898\t\u793a\u4f8b:\u4e24\u6570\u4e4b\u548c\n${0}question.titleSlug{1}\t\u9898\u76ee\u6807\u8bb0\t\u793a\u4f8b:two-sum\n${0}question.frontendQuestionId{1}\t\u9898\u76ee\u7f16\u53f7\n${0}question.content{1}\t\u9898\u76ee\u63cf\u8ff0\n${0}question.code{1}\t\u9898\u76ee\u4ee3\u7801\n$!velocityTool.camelCaseName(str)\t\u8f6c\u6362\u5b57\u7b26\u4e3a\u5927\u9a7c\u5cf0\u6837\u5f0f\uff08\u5f00\u5934\u5b57\u6bcd\u5927\u5199\uff09\n$!velocityTool.smallCamelCaseName(str)\t\u8f6c\u6362\u5b57\u7b26\u4e3a\u5c0f\u9a7c\u5cf0\u6837\u5f0f\uff08\u5f00\u5934\u5b57\u6bcd\u5c0f\u5199\uff09\n$!velocityTool.snakeCaseName(str)\t\u8f6c\u6362\u5b57\u7b26\u4e3a\u86c7\u5f62\u6837\u5f0f\n$!velocityTool.leftPadZeros(str,n)\t\u5728\u5b57\u7b26\u4e32\u7684\u5de6\u8fb9\u586b\u51450\uff0c\u4f7f\u5b57\u7b26\u4e32\u7684\u957f\u5ea6\u81f3\u5c11\u4e3an\n$!velocityTool.date()\t\u83b7\u53d6\u5f53\u524d\u65f6\u95f4
3838
tree.load=\u8BF7\u5148\u52A0\u8F7D\u9898\u76EE
3939
tree.null=\u83B7\u53D6\u9898\u76EE\u4E3A\u7A7A
4040
tree.select=\u8BF7\u5728\u5217\u8868\u4E2D\u9009\u62E9\u4E00\u4E2A\u6709\u6548\u7684\u9898\u76EE

0 commit comments

Comments
 (0)