📄 parse_yy.c
字号:
"fun_dec: id fid LPAREN params RPAREN SEMI",
"params: param_list",
"params:",
"param_list: param_list COMMA param",
"param_list: param",
"param: type_spec",
"param: type_spec id",
"param: type_spec id LBRA RBRA",
"param: type_spec id LBRA simple_exp RBRA",
"comp_stmt: LBRACE local_dec stmt_list RBRACE",
"local_dec: local_dec var_dec",
"local_dec:",
"stmt_list: stmt_list stmt",
"stmt_list:",
"stmt: exp_stmt",
"stmt: sele_stmt",
"stmt: iter_stmt",
"stmt: return_stmt",
"stmt: comp_stmt",
"exp_stmt: exp SEMI",
"exp_stmt: SEMI",
"sele_stmt: IF LPAREN exp RPAREN stmt",
"sele_stmt: IF LPAREN exp RPAREN stmt ELSE stmt",
"iter_stmt: WHILE LPAREN exp RPAREN stmt",
"return_stmt: RETURN SEMI",
"return_stmt: RETURN exp SEMI",
"exp: var ASSIGN exp",
"exp: simple_exp",
"var: id",
"var: id LBRA simple_exp RBRA",
"simple_exp: simple_exp LT simple_exp",
"simple_exp: simple_exp LTEQ simple_exp",
"simple_exp: simple_exp GT simple_exp",
"simple_exp: simple_exp GTEQ simple_exp",
"simple_exp: simple_exp EQ simple_exp",
"simple_exp: simple_exp NOEQ simple_exp",
"simple_exp: simple_exp PLUS simple_exp",
"simple_exp: simple_exp MINUS simple_exp",
"simple_exp: simple_exp TIMES simple_exp",
"simple_exp: simple_exp OVER simple_exp",
"simple_exp: factor",
"factor: LPAREN exp RPAREN",
"factor: var",
"factor: call",
"factor: NUM",
"call: var LPAREN args RPAREN",
"arg_list: arg_list COMMA exp",
"arg_list: exp",
"args: arg_list",
"args:"
};
#endif
YYCONST yyreduction_t YYNEARFAR YYBASED_CODE YYDCDECL yyreduction[] = {
{ 0, 1, -1 },
{ 1, 1, 0 },
{ 2, 2, 1 },
{ 2, 1, 2 },
{ 3, 1, 3 },
{ 3, 1, 4 },
{ 3, 1, 5 },
{ 4, 1, 6 },
{ 5, 0, 7 },
{ 6, 3, 8 },
{ 7, 3, 9 },
{ 7, 1, 10 },
{ 7, 5, 11 },
{ 7, 3, 12 },
{ 8, 1, 13 },
{ 8, 1, 14 },
{ 9, 7, 15 },
{ 9, 6, 16 },
{ 10, 7, 17 },
{ 10, 6, 18 },
{ 11, 1, 19 },
{ 11, 0, 20 },
{ 12, 3, 21 },
{ 12, 1, 22 },
{ 13, 1, 23 },
{ 13, 2, 24 },
{ 13, 4, 25 },
{ 13, 5, 26 },
{ 14, 4, 27 },
{ 15, 2, 28 },
{ 15, 0, 29 },
{ 16, 2, 30 },
{ 16, 0, 31 },
{ 17, 1, 32 },
{ 17, 1, 33 },
{ 17, 1, 34 },
{ 17, 1, 35 },
{ 17, 1, 36 },
{ 18, 2, 37 },
{ 18, 1, 38 },
{ 19, 5, 39 },
{ 19, 7, 40 },
{ 20, 5, 41 },
{ 21, 2, 42 },
{ 21, 3, 43 },
{ 22, 3, 44 },
{ 22, 1, 45 },
{ 23, 1, 46 },
{ 23, 4, 47 },
{ 24, 3, 48 },
{ 24, 3, 49 },
{ 24, 3, 50 },
{ 24, 3, 51 },
{ 24, 3, 52 },
{ 24, 3, 53 },
{ 24, 3, 54 },
{ 24, 3, 55 },
{ 24, 3, 56 },
{ 24, 3, 57 },
{ 24, 1, 58 },
{ 25, 3, 59 },
{ 25, 1, 60 },
{ 25, 1, 61 },
{ 25, 1, 62 },
{ 26, 4, 63 },
{ 27, 3, 64 },
{ 27, 1, 65 },
{ 28, 1, 66 },
{ 28, 0, 67 }
};
int YYNEAR YYDCDECL yytokenaction_size = 138;
YYCONST yytokenaction_t YYNEARFAR YYBASED_CODE YYDCDECL yytokenaction[] = {
{ 81, YYAT_SHIFT, 45 },
{ 81, YYAT_SHIFT, 46 },
{ 81, YYAT_SHIFT, 47 },
{ 81, YYAT_SHIFT, 48 },
{ 81, YYAT_SHIFT, 49 },
{ 81, YYAT_SHIFT, 50 },
{ 81, YYAT_SHIFT, 51 },
{ 81, YYAT_SHIFT, 52 },
{ 81, YYAT_SHIFT, 53 },
{ 81, YYAT_SHIFT, 54 },
{ 75, YYAT_SHIFT, 45 },
{ 75, YYAT_SHIFT, 46 },
{ 75, YYAT_SHIFT, 47 },
{ 75, YYAT_SHIFT, 48 },
{ 82, YYAT_SHIFT, 1 },
{ 82, YYAT_SHIFT, 2 },
{ 81, YYAT_SHIFT, 88 },
{ 79, YYAT_SHIFT, 45 },
{ 79, YYAT_SHIFT, 46 },
{ 79, YYAT_SHIFT, 47 },
{ 79, YYAT_SHIFT, 48 },
{ 79, YYAT_SHIFT, 49 },
{ 79, YYAT_SHIFT, 50 },
{ 79, YYAT_SHIFT, 51 },
{ 79, YYAT_SHIFT, 52 },
{ 79, YYAT_SHIFT, 53 },
{ 79, YYAT_SHIFT, 54 },
{ 42, YYAT_SHIFT, 45 },
{ 42, YYAT_SHIFT, 46 },
{ 42, YYAT_SHIFT, 47 },
{ 42, YYAT_SHIFT, 48 },
{ 42, YYAT_SHIFT, 49 },
{ 42, YYAT_SHIFT, 50 },
{ 42, YYAT_SHIFT, 51 },
{ 42, YYAT_SHIFT, 52 },
{ 42, YYAT_SHIFT, 53 },
{ 42, YYAT_SHIFT, 54 },
{ 31, YYAT_SHIFT, 45 },
{ 31, YYAT_SHIFT, 46 },
{ 31, YYAT_SHIFT, 47 },
{ 31, YYAT_SHIFT, 48 },
{ 31, YYAT_SHIFT, 49 },
{ 31, YYAT_SHIFT, 50 },
{ 31, YYAT_SHIFT, 51 },
{ 31, YYAT_SHIFT, 52 },
{ 31, YYAT_SHIFT, 53 },
{ 31, YYAT_SHIFT, 54 },
{ 77, YYAT_SHIFT, 45 },
{ 77, YYAT_SHIFT, 46 },
{ 77, YYAT_SHIFT, 47 },
{ 77, YYAT_SHIFT, 48 },
{ 77, YYAT_SHIFT, 49 },
{ 77, YYAT_SHIFT, 50 },
{ 77, YYAT_SHIFT, 51 },
{ 77, YYAT_SHIFT, 52 },
{ 76, YYAT_SHIFT, 45 },
{ 76, YYAT_SHIFT, 46 },
{ 76, YYAT_SHIFT, 47 },
{ 76, YYAT_SHIFT, 48 },
{ 76, YYAT_SHIFT, 49 },
{ 76, YYAT_SHIFT, 50 },
{ 76, YYAT_SHIFT, 51 },
{ 76, YYAT_SHIFT, 52 },
{ 118, YYAT_SHIFT, 94 },
{ 109, YYAT_SHIFT, 27 },
{ 118, YYAT_SHIFT, 95 },
{ 118, YYAT_SHIFT, 96 },
{ 116, YYAT_SHIFT, 118 },
{ 44, YYAT_SHIFT, 3 },
{ 44, YYAT_SHIFT, 27 },
{ 74, YYAT_SHIFT, 45 },
{ 74, YYAT_SHIFT, 46 },
{ 74, YYAT_SHIFT, 47 },
{ 74, YYAT_SHIFT, 48 },
{ 73, YYAT_SHIFT, 45 },
{ 73, YYAT_SHIFT, 46 },
{ 73, YYAT_SHIFT, 47 },
{ 73, YYAT_SHIFT, 48 },
{ 109, YYAT_SHIFT, 28 },
{ 5, YYAT_SHIFT, 1 },
{ 5, YYAT_SHIFT, 2 },
{ 5, YYAT_SHIFT, 3 },
{ 118, YYAT_SHIFT, 97 },
{ 44, YYAT_SHIFT, 28 },
{ 72, YYAT_SHIFT, 45 },
{ 72, YYAT_SHIFT, 46 },
{ 72, YYAT_SHIFT, 47 },
{ 72, YYAT_SHIFT, 48 },
{ 118, YYAT_SHIFT, 60 },
{ 14, YYAT_SHIFT, 18 },
{ 78, YYAT_SHIFT, 86 },
{ 113, YYAT_SHIFT, 115 },
{ 14, YYAT_REDUCE, 8 },
{ 93, YYAT_SHIFT, 18 },
{ 14, YYAT_SHIFT, 19 },
{ 36, YYAT_SHIFT, 57 },
{ 78, YYAT_SHIFT, 60 },
{ 111, YYAT_SHIFT, 114 },
{ 93, YYAT_SHIFT, 19 },
{ 41, YYAT_SHIFT, 63 },
{ 36, YYAT_SHIFT, 19 },
{ 108, YYAT_SHIFT, 112 },
{ 41, YYAT_SHIFT, 44 },
{ 69, YYAT_SHIFT, 47 },
{ 69, YYAT_SHIFT, 48 },
{ 68, YYAT_SHIFT, 47 },
{ 68, YYAT_SHIFT, 48 },
{ 40, YYAT_SHIFT, 1 },
{ 40, YYAT_SHIFT, 2 },
{ 35, YYAT_SHIFT, 1 },
{ 35, YYAT_SHIFT, 2 },
{ 17, YYAT_SHIFT, 1 },
{ 17, YYAT_SHIFT, 2 },
{ 15, YYAT_SHIFT, 21 },
{ 15, YYAT_SHIFT, 22 },
{ 105, YYAT_SHIFT, 110 },
{ 96, YYAT_SHIFT, 109 },
{ 95, YYAT_SHIFT, 107 },
{ 94, YYAT_SHIFT, 106 },
{ 91, YYAT_SHIFT, 98 },
{ 90, YYAT_SHIFT, 3 },
{ 67, YYAT_SHIFT, 85 },
{ 66, YYAT_SHIFT, 84 },
{ 58, YYAT_SHIFT, 80 },
{ 56, YYAT_SHIFT, 78 },
{ 43, YYAT_SHIFT, 64 },
{ 39, YYAT_SHIFT, 59 },
{ 38, YYAT_SHIFT, 58 },
{ 34, YYAT_SHIFT, 55 },
{ 30, YYAT_SHIFT, 44 },
{ 29, YYAT_SHIFT, 19 },
{ 25, YYAT_SHIFT, 40 },
{ 24, YYAT_SHIFT, 39 },
{ 23, YYAT_SHIFT, 3 },
{ 20, YYAT_SHIFT, 35 },
{ 13, YYAT_SHIFT, 17 },
{ 4, YYAT_ACCEPT, 0 },
{ 0, YYAT_SHIFT, 3 }
};
YYCONST yystateaction_t YYNEARFAR YYBASED_CODE YYDCDECL yystateaction[] = {
{ -128, 1, YYAT_DEFAULT, 40 },
{ 0, 0, YYAT_REDUCE, 14 },
{ 0, 0, YYAT_REDUCE, 15 },
{ 0, 0, YYAT_REDUCE, 7 },
{ 136, 1, YYAT_ERROR, 0 },
{ -184, 1, YYAT_REDUCE, 1 },
{ 0, 0, YYAT_REDUCE, 3 },
{ 0, 0, YYAT_REDUCE, 4 },
{ 0, 0, YYAT_REDUCE, 5 },
{ 0, 0, YYAT_REDUCE, 6 },
{ 0, 0, YYAT_REDUCE, 8 },
{ 0, 0, YYAT_DEFAULT, 90 },
{ 0, 0, YYAT_REDUCE, 2 },
{ -145, 1, YYAT_ERROR, 0 },
{ -188, 1, YYAT_REDUCE, 47 },
{ -165, 1, YYAT_ERROR, 0 },
{ 0, 0, YYAT_REDUCE, 11 },
{ -152, 1, YYAT_REDUCE, 21 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ -146, 1, YYAT_ERROR, 0 },
{ 0, 0, YYAT_REDUCE, 9 },
{ 0, 0, YYAT_DEFAULT, 90 },
{ -132, 1, YYAT_REDUCE, 24 },
{ -149, 1, YYAT_ERROR, 0 },
{ -148, 1, YYAT_REDUCE, 20 },
{ 0, 0, YYAT_REDUCE, 23 },
{ 0, 0, YYAT_REDUCE, 63 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ -152, 1, YYAT_REDUCE, 47 },
{ -151, 1, YYAT_REDUCE, 61 },
{ -230, 1, YYAT_REDUCE, 13 },
{ 0, 0, YYAT_REDUCE, 59 },
{ 0, 0, YYAT_REDUCE, 62 },
{ -155, 1, YYAT_DEFAULT, 81 },
{ -154, 1, YYAT_REDUCE, 21 },
{ -182, 1, YYAT_REDUCE, 47 },
{ 0, 0, YYAT_REDUCE, 10 },
{ -155, 1, YYAT_REDUCE, 25 },
{ -152, 1, YYAT_DEFAULT, 78 },
{ -156, 1, YYAT_ERROR, 0 },
{ -178, 1, YYAT_REDUCE, 61 },
{ -240, 1, YYAT_REDUCE, 46 },
{ -156, 1, YYAT_ERROR, 0 },
{ -197, 1, YYAT_REDUCE, 68 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_REDUCE, 48 },
{ -157, 1, YYAT_ERROR, 0 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ -160, 1, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_REDUCE, 19 },
{ 0, 0, YYAT_REDUCE, 30 },
{ 0, 0, YYAT_REDUCE, 17 },
{ 0, 0, YYAT_REDUCE, 22 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_REDUCE, 60 },
{ 0, 0, YYAT_REDUCE, 66 },
{ -159, 1, YYAT_ERROR, 0 },
{ -158, 1, YYAT_REDUCE, 67 },
{ -164, 1, YYAT_REDUCE, 55 },
{ -166, 1, YYAT_REDUCE, 56 },
{ 0, 0, YYAT_REDUCE, 57 },
{ 0, 0, YYAT_REDUCE, 58 },
{ -183, 1, YYAT_REDUCE, 49 },
{ -193, 1, YYAT_REDUCE, 50 },
{ -197, 1, YYAT_REDUCE, 51 },
{ -257, 1, YYAT_REDUCE, 52 },
{ -212, 1, YYAT_REDUCE, 53 },
{ -220, 1, YYAT_REDUCE, 54 },
{ -188, 1, YYAT_ERROR, 0 },
{ -250, 1, YYAT_REDUCE, 12 },
{ 0, 0, YYAT_REDUCE, 26 },
{ -267, 1, YYAT_ERROR, 0 },
{ -249, 1, YYAT_REDUCE, 32 },
{ 0, 0, YYAT_REDUCE, 45 },
{ 0, 0, YYAT_REDUCE, 64 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_REDUCE, 18 },
{ 0, 0, YYAT_REDUCE, 16 },
{ 0, 0, YYAT_REDUCE, 27 },
{ 0, 0, YYAT_REDUCE, 29 },
{ -145, 1, YYAT_ERROR, 0 },
{ -166, 1, YYAT_DEFAULT, 118 },
{ 0, 0, YYAT_REDUCE, 65 },
{ -184, 1, YYAT_REDUCE, 47 },
{ -162, 1, YYAT_ERROR, 0 },
{ -161, 1, YYAT_DEFAULT, 109 },
{ -164, 1, YYAT_ERROR, 0 },
{ 0, 0, YYAT_REDUCE, 39 },
{ 0, 0, YYAT_REDUCE, 28 },
{ 0, 0, YYAT_REDUCE, 37 },
{ 0, 0, YYAT_REDUCE, 31 },
{ 0, 0, YYAT_REDUCE, 33 },
{ 0, 0, YYAT_REDUCE, 34 },
{ 0, 0, YYAT_REDUCE, 35 },
{ 0, 0, YYAT_REDUCE, 36 },
{ -163, 1, YYAT_ERROR, 0 },
{ 0, 0, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_REDUCE, 43 },
{ -177, 1, YYAT_ERROR, 0 },
{ -202, 1, YYAT_DEFAULT, 90 },
{ 0, 0, YYAT_REDUCE, 38 },
{ -184, 1, YYAT_ERROR, 0 },
{ 0, 0, YYAT_REDUCE, 44 },
{ -190, 1, YYAT_ERROR, 0 },
{ 0, 0, YYAT_DEFAULT, 118 },
{ 0, 0, YYAT_DEFAULT, 118 },
{ -193, 1, YYAT_REDUCE, 40 },
{ 0, 0, YYAT_REDUCE, 42 },
{ -196, 1, YYAT_DEFAULT, 109 },
{ 0, 0, YYAT_REDUCE, 41 }
};
int YYNEAR YYDCDECL yynontermgoto_size = 70;
YYCONST yynontermgoto_t YYNEARFAR YYBASED_CODE YYDCDECL yynontermgoto[] = {
{ 109, 29 },
{ 118, 99 },
{ 115, 117 },
{ 114, 116 },
{ 118, 119 },
{ 118, 101 },
{ 118, 102 },
{ 118, 103 },
{ 118, 104 },
{ 118, 105 },
{ 5, 12 },
{ 5, 10 },
{ 22, 36 },
{ 5, 7 },
{ 106, 111 },
{ 5, 11 },
{ 5, 9 },
{ 5, 8 },
{ 109, 113 },
{ 109, 41 },
{ 109, 42 },
{ 109, 32 },
{ 109, 33 },
{ 90, 93 },
{ 44, 65 },
{ 82, 89 },
{ 90, 15 },
{ 82, 90 },
{ 40, 23 },
{ 44, 67 },
{ 44, 66 },
{ 22, 37 },
{ 95, 108 },
{ 40, 62 },
{ 91, 100 },
{ 82, 91 },
{ 58, -1 },
{ 58, 30 },
{ 58, 81 },
{ 35, 56 },
{ 35, 25 },
{ 35, 26 },
{ 90, 16 },
{ 0, 4 },
{ 0, 5 },
{ 0, 6 },
{ 85, 92 },
{ 78, 87 },
{ 63, 83 },
{ 60, 82 },
{ 57, 79 },
{ 54, 77 },
{ 53, 76 },
{ 52, 75 },
{ 51, 74 },
{ 50, 73 },
{ 49, 72 },
{ 48, 71 },
{ 47, 70 },
{ 46, 69 },
{ 45, 68 },
{ 39, 61 },
{ 28, 43 },
{ 23, 38 },
{ 19, 34 },
{ 18, 31 },
{ 17, 24 },
{ 14, 20 },
{ 11, 14 },
{ 10, 13 }
};
YYCONST yystategoto_t YYNEARFAR YYBASED_CODE YYDCDECL yystategoto[] = {
{ 42, 5 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 7, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 64, -1 },
{ 64, 90 },
{ 0, -1 },
{ 0, -1 },
{ 62, -1 },
{ 0, -1 },
{ 0, -1 },
{ 55, 35 },
{ 41, 58 },
{ 40, 58 },
{ 0, -1 },
{ 0, -1 },
{ 8, -1 },
{ 59, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 40, 109 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 28, 40 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 47, -1 },
{ 20, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 2, 109 },
{ 36, 58 },
{ 35, 58 },
{ 34, 58 },
{ 33, 58 },
{ 32, 58 },
{ 31, 58 },
{ 30, 58 },
{ 29, 58 },
{ 28, 58 },
{ 27, 58 },
{ 0, -1 },
{ 0, -1 },
{ 26, 58 },
{ 14, 109 },
{ 0, -1 },
{ 34, -1 },
{ 0, -1 },
{ 0, -1 },
{ 26, 109 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 33, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 19, -1 },
{ 0, -1 },
{ 0, -1 },
{ 24, 109 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 19, -1 },
{ 17, 118 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 10, 109 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ -8, 109 },
{ 0, -1 },
{ 0, -1 },
{ -4, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ 0, -1 },
{ -14, 118 },
{ -15, 118 },
{ 0, -1 },
{ 0, -1 },
{ -13, 109 },
{ 0, -1 }
};
YYCONST yydestructor_t YYNEARFAR *YYNEAR YYDCDECL yydestructorptr = NULL;
YYCONST yytokendest_t YYNEARFAR *YYNEAR YYDCDECL yytokendestptr = NULL;
int YYNEAR YYDCDECL yytokendest_size = 0;
YYCONST yytokendestbase_t YYNEARFAR *YYNEAR YYDCDECL yytokendestbaseptr = NULL;
int YYNEAR YYDCDECL yytokendestbase_size = 0;
#line 373 ".\\parse_yy.y"
void yyerror(const char * message)
{ fprintf(listing,"Syntax error at line %d: %s\n",lineno,message);
fprintf(listing,"Current token: ");
printToken(yychar,tokenString);
Error = TRUE;
}
/* yylex calls getToken to make Yacc/Bison output
* compatible with ealier versions of the TINY scanner
*/
#ifdef YYPROTOTYPE
int YYCDECL yygettoken(void)
#else
int YYCDECL yygettoken()
#endif
{
return yylex();
}
static TokenType yylex(void)
{ return getToken(); }
TreeNode * parse(void)
{ yyparse();
return savedTree;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -