|
2745 | 2745 | ]
|
2746 | 2746 | },
|
2747 | 2747 | "yard": {
|
2748 |
| - "name": "comment.line.yard.ruby", |
2749 | 2748 | "patterns": [
|
2750 | 2749 | {
|
2751 | 2750 | "include": "#yard_comment"
|
2752 | 2751 | },
|
2753 | 2752 | {
|
2754 |
| - "include": "#yard_name_types" |
| 2753 | + "include": "#yard_param_types" |
2755 | 2754 | },
|
2756 | 2755 | {
|
2757 |
| - "include": "#yard_param_types" |
| 2756 | + "include": "#yard_option" |
2758 | 2757 | },
|
2759 | 2758 | {
|
2760 | 2759 | "include": "#yard_tag"
|
|
2764 | 2763 | },
|
2765 | 2764 | {
|
2766 | 2765 | "include": "#yard_directive"
|
| 2766 | + }, |
| 2767 | + { |
| 2768 | + "include": "#yard_see" |
| 2769 | + }, |
| 2770 | + { |
| 2771 | + "include": "#yard_macro_attribute" |
| 2772 | + } |
| 2773 | + ] |
| 2774 | + }, |
| 2775 | + "yard_see": { |
| 2776 | + "comment": "separate rule for @see because name could contain url", |
| 2777 | + "begin": "^(\\s*)(#)(\\s*)(@)(see)(?=\\s)(\\s+(.+?))?(?=\\s|$)", |
| 2778 | + "beginCaptures": { |
| 2779 | + "2": { |
| 2780 | + "name": "punctuation.definition.comment.ruby" |
| 2781 | + }, |
| 2782 | + "4": { |
| 2783 | + "name": "comment.line.keyword.punctuation.yard.ruby" |
| 2784 | + }, |
| 2785 | + "5": { |
| 2786 | + "name": "comment.line.keyword.yard.ruby" |
| 2787 | + }, |
| 2788 | + "7": { |
| 2789 | + "name": "comment.line.parameter.yard.ruby" |
| 2790 | + } |
| 2791 | + }, |
| 2792 | + "end": "^(?!\\s*#\\3\\s{2,}|\\s*#\\s*$)", |
| 2793 | + "contentName": "comment.line.string.yard.ruby", |
| 2794 | + "name": "comment.line.number-sign.ruby", |
| 2795 | + "patterns": [ |
| 2796 | + { |
| 2797 | + "include": "#yard" |
| 2798 | + }, |
| 2799 | + { |
| 2800 | + "include": "#yard_continuation" |
| 2801 | + } |
| 2802 | + ] |
| 2803 | + }, |
| 2804 | + "yard_macro_attribute": { |
| 2805 | + "comment": "separate rule for attribute and macro tags because name goes after []", |
| 2806 | + "begin": "^(\\s*)(#)(\\s*)(@!)(attribute|macro)(\\s+((\\[).+(])))?(?=\\s)(\\s+([a-z_]\\w*:?))?", |
| 2807 | + "beginCaptures": { |
| 2808 | + "2": { |
| 2809 | + "name": "punctuation.definition.comment.ruby" |
| 2810 | + }, |
| 2811 | + "4": { |
| 2812 | + "name": "comment.line.keyword.punctuation.yard.ruby" |
| 2813 | + }, |
| 2814 | + "5": { |
| 2815 | + "name": "comment.line.keyword.yard.ruby" |
| 2816 | + }, |
| 2817 | + "7": { |
| 2818 | + "name": "comment.line.type.yard.ruby" |
| 2819 | + }, |
| 2820 | + "8": { |
| 2821 | + "name": "comment.line.punctuation.yard.ruby" |
| 2822 | + }, |
| 2823 | + "9": { |
| 2824 | + "name": "comment.line.punctuation.yard.ruby" |
| 2825 | + }, |
| 2826 | + "11": { |
| 2827 | + "name": "comment.line.parameter.yard.ruby" |
| 2828 | + } |
| 2829 | + }, |
| 2830 | + "end": "^(?!\\s*#\\3\\s{2,}|\\s*#\\s*$)", |
| 2831 | + "contentName": "comment.line.string.yard.ruby", |
| 2832 | + "name": "comment.line.number-sign.ruby", |
| 2833 | + "patterns": [ |
| 2834 | + { |
| 2835 | + "include": "#yard" |
| 2836 | + }, |
| 2837 | + { |
| 2838 | + "include": "#yard_continuation" |
2767 | 2839 | }
|
2768 | 2840 | ]
|
2769 | 2841 | },
|
2770 | 2842 | "yard_comment": {
|
2771 | 2843 | "comment": "For YARD tags that follow the tag-comment pattern",
|
2772 | 2844 | "begin": "^(\\s*)(#)(\\s*)(@)(abstract|api|author|deprecated|example|macro|note|overload|since|todo|version)(?=\\s|$)",
|
2773 | 2845 | "beginCaptures": {
|
2774 |
| - "1": { |
2775 |
| - "name": "comment.line.yard.ruby" |
2776 |
| - }, |
2777 | 2846 | "2": {
|
2778 | 2847 | "name": "punctuation.definition.comment.ruby"
|
2779 | 2848 | },
|
2780 |
| - "3": { |
2781 |
| - "name": "comment.line.yard.ruby" |
2782 |
| - }, |
2783 | 2849 | "4": {
|
2784 | 2850 | "name": "comment.line.keyword.punctuation.yard.ruby"
|
2785 | 2851 | },
|
2786 | 2852 | "5": {
|
2787 | 2853 | "name": "comment.line.keyword.yard.ruby"
|
2788 | 2854 | }
|
2789 | 2855 | },
|
2790 |
| - "end": "^(?!\\s*#\\3\\s{2,})", |
| 2856 | + "end": "^(?!\\s*#\\3\\s{2,}|\\s*#\\s*$)", |
2791 | 2857 | "contentName": "comment.line.string.yard.ruby",
|
2792 | 2858 | "name": "comment.line.number-sign.ruby",
|
2793 | 2859 | "patterns": [
|
|
2799 | 2865 | }
|
2800 | 2866 | ]
|
2801 | 2867 | },
|
2802 |
| - "yard_name_types": { |
2803 |
| - "comment": "For YARD tags that follow the tag-name-types-comment pattern", |
2804 |
| - "begin": "^(\\s*)(#)(\\s*)(@)(attr|attr_reader|attr_writer|see|yieldparam)(?=\\s)(\\s+([a-z_][a-zA-Z_]*))?(\\s+((\\[).+(])))?", |
| 2868 | + "yard_param_types": { |
| 2869 | + "comment": "For YARD tags that follow the tag-name-types-description or tag-types-name-description pattern", |
| 2870 | + "begin": "^(\\s*)(#)(\\s*)(@)(attr|attr_reader|attr_writer|yieldparam|param)(?=\\s)(?>\\s+(?>([a-z_]\\w*:?)|((\\[).+(]))))?(?>\\s+(?>((\\[).+(]))|([a-z_]\\w*:?)))?", |
2805 | 2871 | "beginCaptures": {
|
2806 |
| - "1": { |
2807 |
| - "name": "comment.line.yard.ruby" |
2808 |
| - }, |
2809 | 2872 | "2": {
|
2810 | 2873 | "name": "punctuation.definition.comment.ruby"
|
2811 | 2874 | },
|
2812 |
| - "3": { |
2813 |
| - "name": "comment.line.yard.ruby" |
2814 |
| - }, |
2815 | 2875 | "4": {
|
2816 | 2876 | "name": "comment.line.keyword.punctuation.yard.ruby"
|
2817 | 2877 | },
|
2818 | 2878 | "5": {
|
2819 | 2879 | "name": "comment.line.keyword.yard.ruby"
|
2820 | 2880 | },
|
2821 | 2881 | "6": {
|
2822 |
| - "name": "comment.line.yard.ruby" |
| 2882 | + "name": "comment.line.parameter.yard.ruby" |
2823 | 2883 | },
|
2824 | 2884 | "7": {
|
2825 |
| - "name": "comment.line.parameter.yard.ruby" |
| 2885 | + "name": "comment.line.type.yard.ruby" |
2826 | 2886 | },
|
2827 | 2887 | "8": {
|
2828 |
| - "name": "comment.line.yard.ruby" |
| 2888 | + "name": "comment.line.punctuation.yard.ruby" |
2829 | 2889 | },
|
2830 | 2890 | "9": {
|
2831 |
| - "name": "comment.line.type.yard.ruby" |
| 2891 | + "name": "comment.line.punctuation.yard.ruby" |
2832 | 2892 | },
|
2833 | 2893 | "10": {
|
2834 |
| - "name": "comment.line.punctuation.yard.ruby" |
| 2894 | + "name": "comment.line.type.yard.ruby" |
2835 | 2895 | },
|
2836 | 2896 | "11": {
|
2837 | 2897 | "name": "comment.line.punctuation.yard.ruby"
|
| 2898 | + }, |
| 2899 | + "12": { |
| 2900 | + "name": "comment.line.punctuation.yard.ruby" |
| 2901 | + }, |
| 2902 | + "13": { |
| 2903 | + "name": "comment.line.parameter.yard.ruby" |
2838 | 2904 | }
|
2839 | 2905 | },
|
2840 |
| - "end": "^(?!\\s*#\\3\\s{2,})", |
| 2906 | + "end": "^(?!\\s*#\\3\\s{2,}|\\s*#\\s*$)", |
2841 | 2907 | "contentName": "comment.line.string.yard.ruby",
|
2842 | 2908 | "name": "comment.line.number-sign.ruby",
|
2843 | 2909 | "patterns": [
|
|
2849 | 2915 | }
|
2850 | 2916 | ]
|
2851 | 2917 | },
|
2852 |
| - "yard_param_types": { |
2853 |
| - "comment": "For YARD tags that follow the tag-param-types-comment pattern", |
2854 |
| - "begin": "^(\\s*)(#)(\\s*)(@)(option|param)(?=\\s)(\\s+([a-z_][a-zA-Z_]*:?))?(\\s+((\\[).+(])))?(\\s+(:[a-z_][a-zA-Z_]*))?", |
| 2918 | + "yard_option": { |
| 2919 | + "comment": "For YARD option tag that follow the tag-name-types-key-(value)-description pattern", |
| 2920 | + "begin": "^(\\s*)(#)(\\s*)(@)(option)(?=\\s)(?>\\s+([a-z_]\\w*:?))?(?>\\s+((\\[).+(])))?(?>\\s+((\\S*)))?(?>\\s+((\\().+(\\))))?", |
2855 | 2921 | "beginCaptures": {
|
2856 |
| - "1": { |
2857 |
| - "name": "comment.line.yard.ruby" |
2858 |
| - }, |
2859 | 2922 | "2": {
|
2860 | 2923 | "name": "punctuation.definition.comment.ruby"
|
2861 | 2924 | },
|
2862 |
| - "3": { |
2863 |
| - "name": "comment.line.yard.ruby" |
2864 |
| - }, |
2865 | 2925 | "4": {
|
2866 | 2926 | "name": "comment.line.keyword.punctuation.yard.ruby"
|
2867 | 2927 | },
|
2868 | 2928 | "5": {
|
2869 | 2929 | "name": "comment.line.keyword.yard.ruby"
|
2870 | 2930 | },
|
2871 | 2931 | "6": {
|
2872 |
| - "name": "comment.line.yard.ruby" |
| 2932 | + "name": "comment.line.parameter.yard.ruby" |
2873 | 2933 | },
|
2874 | 2934 | "7": {
|
2875 |
| - "name": "comment.line.parameter.yard.ruby" |
| 2935 | + "name": "comment.line.type.yard.ruby" |
2876 | 2936 | },
|
2877 | 2937 | "8": {
|
2878 |
| - "name": "comment.line.yard.ruby" |
| 2938 | + "name": "comment.line.punctuation.yard.ruby" |
2879 | 2939 | },
|
2880 | 2940 | "9": {
|
2881 |
| - "name": "comment.line.type.yard.ruby" |
| 2941 | + "name": "comment.line.punctuation.yard.ruby" |
2882 | 2942 | },
|
2883 | 2943 | "10": {
|
2884 |
| - "name": "comment.line.punctuation.yard.ruby" |
| 2944 | + "name": "comment.line.keyword.yard.ruby" |
2885 | 2945 | },
|
2886 | 2946 | "11": {
|
2887 |
| - "name": "comment.line.punctuation.yard.ruby" |
| 2947 | + "name": "comment.line.hashkey.yard.ruby" |
2888 | 2948 | },
|
2889 | 2949 | "12": {
|
2890 |
| - "name": "comment.line.punctuation.yard.ruby" |
| 2950 | + "name": "comment.line.defaultvalue.yard.ruby" |
2891 | 2951 | },
|
2892 | 2952 | "13": {
|
2893 |
| - "name": "comment.line.keyword.yard.ruby" |
| 2953 | + "name": "comment.line.punctuation.yard.ruby" |
2894 | 2954 | },
|
2895 | 2955 | "14": {
|
2896 | 2956 | "name": "comment.line.punctuation.yard.ruby"
|
2897 | 2957 | }
|
2898 | 2958 | },
|
2899 |
| - "end": "^(?!\\s*#\\3\\s{2,})", |
| 2959 | + "end": "^(?!\\s*#\\3\\s{2,}|\\s*#\\s*$)", |
2900 | 2960 | "contentName": "comment.line.string.yard.ruby",
|
2901 | 2961 | "name": "comment.line.number-sign.ruby",
|
2902 | 2962 | "patterns": [
|
|
2912 | 2972 | "comment": "For YARD tags that are just the tag",
|
2913 | 2973 | "match": "^(\\s*)(#)(\\s*)(@)(private)$",
|
2914 | 2974 | "captures": {
|
2915 |
| - "1": { |
2916 |
| - "name": "comment.line.yard.ruby" |
2917 |
| - }, |
2918 | 2975 | "2": {
|
2919 | 2976 | "name": "punctuation.definition.comment.ruby"
|
2920 | 2977 | },
|
2921 |
| - "3": { |
2922 |
| - "name": "comment.line.yard.ruby" |
2923 |
| - }, |
2924 | 2978 | "4": {
|
2925 | 2979 | "name": "comment.line.keyword.punctuation.yard.ruby"
|
2926 | 2980 | },
|
|
2934 | 2988 | "comment": "For YARD tags that follow the tag-types-comment pattern",
|
2935 | 2989 | "begin": "^(\\s*)(#)(\\s*)(@)(raise|return|yield(?:return)?)(?=\\s)(\\s+((\\[).+(])))?",
|
2936 | 2990 | "beginCaptures": {
|
2937 |
| - "1": { |
2938 |
| - "name": "comment.line.yard.ruby" |
2939 |
| - }, |
2940 | 2991 | "2": {
|
2941 | 2992 | "name": "punctuation.definition.comment.ruby"
|
2942 | 2993 | },
|
2943 |
| - "3": { |
2944 |
| - "name": "comment.line.yard.ruby" |
2945 |
| - }, |
2946 | 2994 | "4": {
|
2947 | 2995 | "name": "comment.line.keyword.punctuation.yard.ruby"
|
2948 | 2996 | },
|
2949 | 2997 | "5": {
|
2950 | 2998 | "name": "comment.line.keyword.yard.ruby"
|
2951 | 2999 | },
|
2952 |
| - "6": { |
2953 |
| - "name": "comment.line.yard.ruby" |
2954 |
| - }, |
2955 | 3000 | "7": {
|
2956 | 3001 | "name": "comment.line.type.yard.ruby"
|
2957 | 3002 | },
|
|
2962 | 3007 | "name": "comment.line.punctuation.yard.ruby"
|
2963 | 3008 | }
|
2964 | 3009 | },
|
2965 |
| - "end": "^(?!\\s*#\\3\\s{2,})", |
| 3010 | + "end": "^(?!\\s*#\\3\\s{2,}|\\s*#\\s*$)", |
2966 | 3011 | "contentName": "comment.line.string.yard.ruby",
|
2967 | 3012 | "name": "comment.line.number-sign.ruby",
|
2968 | 3013 | "patterns": [
|
|
2976 | 3021 | },
|
2977 | 3022 | "yard_directive": {
|
2978 | 3023 | "comment": "For YARD directives",
|
2979 |
| - "begin": "^(\\s*)(#)(\\s*)(@!)(attribute|endgroup|group|macro|method|parse|scope|visibility)(\\s+((\\[).+(])))?(?=\\s)", |
| 3024 | + "begin": "^(\\s*)(#)(\\s*)(@!)(endgroup|group|method|parse|scope|visibility)(\\s+((\\[).+(])))?(?=\\s)", |
2980 | 3025 | "beginCaptures": {
|
2981 |
| - "1": { |
2982 |
| - "name": "comment.line.yard.ruby" |
2983 |
| - }, |
2984 | 3026 | "2": {
|
2985 | 3027 | "name": "punctuation.definition.comment.ruby"
|
2986 | 3028 | },
|
2987 |
| - "3": { |
2988 |
| - "name": "comment.line.yard.ruby" |
2989 |
| - }, |
2990 | 3029 | "4": {
|
2991 | 3030 | "name": "comment.line.keyword.punctuation.yard.ruby"
|
2992 | 3031 | },
|
2993 | 3032 | "5": {
|
2994 | 3033 | "name": "comment.line.keyword.yard.ruby"
|
2995 | 3034 | },
|
2996 |
| - "6": { |
2997 |
| - "name": "comment.line.yard.ruby" |
2998 |
| - }, |
2999 | 3035 | "7": {
|
3000 | 3036 | "name": "comment.line.type.yard.ruby"
|
3001 | 3037 | },
|
|
3006 | 3042 | "name": "comment.line.punctuation.yard.ruby"
|
3007 | 3043 | }
|
3008 | 3044 | },
|
3009 |
| - "end": "^(?!\\s*#\\3\\s{2,})", |
| 3045 | + "end": "^(?!\\s*#\\3\\s{2,}|\\s*#\\s*$)", |
3010 | 3046 | "contentName": "comment.line.string.yard.ruby",
|
3011 | 3047 | "name": "comment.line.number-sign.ruby",
|
3012 | 3048 | "patterns": [
|
|
0 commit comments