1 1.2 rillig /* $NetBSD: indent_off_on.c,v 1.2 2021/10/19 20:41:42 rillig Exp $ */ 2 1.1 rillig /* $FreeBSD$ */ 3 1.1 rillig 4 1.1 rillig /* 5 1.1 rillig * Tests for the comments 'INDENT OFF' and 'INDENT ON', which temporarily 6 1.1 rillig * disable formatting. 7 1.1 rillig */ 8 1.1 rillig 9 1.1 rillig #indent input 10 1.1 rillig {} 11 1.1 rillig 12 1.1 rillig /*INDENT OFF*/ 13 1.1 rillig /*INDENT ON*/ 14 1.1 rillig 15 1.1 rillig {} 16 1.1 rillig #indent end 17 1.1 rillig 18 1.1 rillig /* 19 1.1 rillig * XXX: It is asymmetric that 'INDENT OFF' is kept as is, while 'INDENT ON' 20 1.1 rillig * gets enclosed with spaces. 21 1.1 rillig */ 22 1.1 rillig #indent run 23 1.1 rillig { 24 1.1 rillig } 25 1.1 rillig /* $ FIXME: This empty line must stay. */ 26 1.1 rillig /*INDENT OFF*/ 27 1.1 rillig /* INDENT ON */ 28 1.1 rillig 29 1.1 rillig { 30 1.1 rillig } 31 1.1 rillig #indent end 32 1.1 rillig 33 1.1 rillig 34 1.1 rillig #indent input 35 1.1 rillig {} 36 1.1 rillig /* INDENT OFF */ 37 1.1 rillig /* INDENT ON */ 38 1.1 rillig {} 39 1.1 rillig #indent end 40 1.1 rillig 41 1.1 rillig /* 42 1.1 rillig * XXX: It is asymmetric that 'INDENT OFF' is indented, while 'INDENT ON' 43 1.1 rillig * is aligned. 44 1.1 rillig */ 45 1.1 rillig #indent run 46 1.1 rillig { 47 1.1 rillig } 48 1.1 rillig /* INDENT OFF */ 49 1.1 rillig /* INDENT ON */ 50 1.1 rillig { 51 1.1 rillig } 52 1.1 rillig #indent end 53 1.1 rillig 54 1.1 rillig 55 1.1 rillig #indent input 56 1.1 rillig {} 57 1.1 rillig /* INDENT OFF */ 58 1.1 rillig /* INDENT ON */ 59 1.1 rillig {} 60 1.1 rillig #indent end 61 1.1 rillig 62 1.1 rillig /* 63 1.1 rillig * XXX: It is asymmetric that 'INDENT OFF' is indented, while 'INDENT ON' 64 1.1 rillig * is aligned. 65 1.1 rillig */ 66 1.1 rillig #indent run 67 1.1 rillig { 68 1.1 rillig } 69 1.1 rillig /* INDENT OFF */ 70 1.1 rillig /* INDENT ON */ 71 1.1 rillig { 72 1.1 rillig } 73 1.1 rillig #indent end 74 1.1 rillig 75 1.1 rillig /* 76 1.1 rillig * The INDENT comments can be written without space between the words, but 77 1.1 rillig * nobody does this. 78 1.1 rillig */ 79 1.1 rillig #indent input 80 1.1 rillig int decl ; 81 1.1 rillig /*INDENTOFF*/ 82 1.1 rillig int decl ; 83 1.1 rillig /*INDENTON*/ 84 1.1 rillig int decl ; 85 1.1 rillig #indent end 86 1.1 rillig 87 1.1 rillig #indent run -di0 88 1.1 rillig int decl; 89 1.1 rillig /*INDENTOFF*/ 90 1.1 rillig int decl ; 91 1.1 rillig /* INDENTON */ 92 1.1 rillig int decl; 93 1.1 rillig #indent end 94 1.1 rillig 95 1.1 rillig 96 1.1 rillig /* 97 1.1 rillig * Any whitespace around the 'INDENT ON/OFF' is ignored, as is any whitespace 98 1.1 rillig * between the two words. 99 1.1 rillig */ 100 1.1 rillig #indent input 101 1.1 rillig int decl; 102 1.1 rillig /* INDENT OFF */ 103 1.1 rillig int decl ; 104 1.1 rillig /* INDENT ON */ 105 1.1 rillig int decl; 106 1.1 rillig #indent end 107 1.1 rillig 108 1.1 rillig /* 109 1.1 rillig * XXX: It is asymmetric that 'INDENT OFF' is indented, while 'INDENT ON' 110 1.1 rillig * is aligned. 111 1.1 rillig */ 112 1.1 rillig #indent run -di0 113 1.1 rillig int decl; 114 1.1 rillig /* INDENT OFF */ 115 1.1 rillig int decl ; 116 1.1 rillig /* INDENT ON */ 117 1.1 rillig int decl; 118 1.1 rillig #indent end 119 1.2 rillig 120 1.2 rillig 121 1.2 rillig #indent input 122 1.2 rillig /*INDENT OFF*/ 123 1.2 rillig /* No formatting takes place here. */ 124 1.2 rillig int format( void ) {{{ 125 1.2 rillig /*INDENT ON*/ 126 1.2 rillig }}} 127 1.2 rillig #indent end 128 1.2 rillig 129 1.2 rillig #indent run 130 1.2 rillig /*INDENT OFF*/ 131 1.2 rillig /* No formatting takes place here. */ 132 1.2 rillig int format( void ) {{{ 133 1.2 rillig /* $ XXX: Why is the INDENT ON comment indented? */ 134 1.2 rillig /* $ XXX: Why does the INDENT ON comment get spaces, but not the OFF comment? */ 135 1.2 rillig /* INDENT ON */ 136 1.2 rillig } 137 1.2 rillig } 138 1.2 rillig } 139 1.2 rillig #indent end 140 1.2 rillig 141 1.2 rillig 142 1.2 rillig #indent input 143 1.2 rillig /* INDENT OFF */ 144 1.2 rillig void indent_off ( void ) ; 145 1.2 rillig /* INDENT */ 146 1.2 rillig void indent_on ( void ) ; 147 1.2 rillig /* INDENT OFF */ 148 1.2 rillig void indent_off ( void ) ; 149 1.2 rillig /* INDENT ON */ 150 1.2 rillig void indent_on ( void ) ; /* the comment may be indented */ 151 1.2 rillig /* INDENT OFF */ 152 1.2 rillig void indent_off ( void ) ; 153 1.2 rillig /* INDENTATION ON */ 154 1.2 rillig void indent_still_off ( void ) ; /* due to the word 'INDENTATION' */ 155 1.2 rillig /* INDENT ON * */ 156 1.2 rillig void indent_still_off ( void ) ; /* due to the extra '*' at the end */ 157 1.2 rillig /* INDENT ON */ 158 1.2 rillig void indent_on ( void ) ; 159 1.2 rillig /* INDENT: OFF */ 160 1.2 rillig void indent_still_on ( void ) ; /* due to the colon in the middle */ 161 1.2 rillig /* INDENT OFF */ /* extra comment */ 162 1.2 rillig void indent_still_on ( void ) ; /* due to the extra comment to the right */ 163 1.2 rillig #indent end 164 1.2 rillig 165 1.2 rillig #indent run 166 1.2 rillig /* INDENT OFF */ 167 1.2 rillig void indent_off ( void ) ; 168 1.2 rillig /* $ XXX: The double space from the below comment got merged to a single */ 169 1.2 rillig /* $ XXX: space even though the comment might be regarded to be still in */ 170 1.2 rillig /* $ XXX: the OFF section. */ 171 1.2 rillig /* INDENT */ 172 1.2 rillig void 173 1.2 rillig indent_on(void); 174 1.2 rillig /* INDENT OFF */ 175 1.2 rillig void indent_off ( void ) ; 176 1.2 rillig /* $ XXX: The below comment got moved from column 9 to column 1. */ 177 1.2 rillig /* INDENT ON */ 178 1.2 rillig void 179 1.2 rillig indent_on(void); /* the comment may be indented */ 180 1.2 rillig /* INDENT OFF */ 181 1.2 rillig void indent_off ( void ) ; 182 1.2 rillig /* INDENTATION ON */ 183 1.2 rillig void indent_still_off ( void ) ; /* due to the word 'INDENTATION' */ 184 1.2 rillig /* INDENT ON * */ 185 1.2 rillig void indent_still_off ( void ) ; /* due to the extra '*' at the end */ 186 1.2 rillig /* INDENT ON */ 187 1.2 rillig void 188 1.2 rillig indent_on(void); 189 1.2 rillig /* INDENT: OFF */ 190 1.2 rillig void 191 1.2 rillig indent_still_on(void); /* due to the colon in the middle */ 192 1.2 rillig /* $ The extra comment got moved to the left since there is no code in */ 193 1.2 rillig /* $ that line. */ 194 1.2 rillig /* INDENT OFF *//* extra comment */ 195 1.2 rillig void 196 1.2 rillig indent_still_on(void); /* due to the extra comment to the right */ 197 1.2 rillig #indent end 198