Home | History | Annotate | Line # | Download | only in indent
indent_off_on.c revision 1.2
      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