test3.in
资源名称:vim53src.zip [点击查看]
上传用户:gddssl
上传日期:2007-01-06
资源大小:1003k
文件大小:7k
源码类别:
编辑器/阅读器
开发平台:
DOS
- /* vim: set cin ts=4 sw=4 : */
- Test for 'cindent'
- STARTTEST
- :set nocompatible
- :edit " read modeline
- /start of AUTO
- =/end of AUTO
- ENDTEST
- /* start of AUTO matically checked */
- {
- if (test)
- cmd1;
- cmd2;
- }
- {
- if (test)
- cmd1;
- else
- cmd2;
- }
- {
- if (test)
- {
- cmd1;
- cmd2;
- }
- }
- {
- if (test)
- {
- cmd1;
- else
- }
- }
- {
- while (this)
- if (test)
- cmd1;
- cmd2;
- }
- {
- while (this)
- if (test)
- cmd1;
- else
- cmd2;
- }
- {
- if (test)
- {
- cmd;
- }
- if (test)
- cmd;
- }
- {
- if (test) {
- cmd;
- }
- if (test) cmd;
- }
- {
- cmd1;
- for (blah)
- while (this)
- if (test)
- cmd2;
- cmd3;
- }
- {
- cmd1;
- for (blah)
- while (this)
- if (test)
- cmd2;
- cmd3;
- if (test)
- {
- cmd1;
- cmd2;
- cmd3;
- }
- }
- /* Test for 'cindent' do/while mixed with if/else: */
- {
- do
- if (asdf)
- asdfasd;
- while (cond);
- do
- if (asdf)
- while (asdf)
- asdf;
- while (asdf);
- }
- /* Test for 'cindent' with two ) on a continuation line */
- {
- if (asdfasdf;asldkfj asdlkfj as;ldkfj sal;d
- aal;sdkjf ( ;asldfkja;sldfk
- al;sdjfka ;slkdf ) sa;ldkjfsa dlk;)
- line up here;
- }
- /* C++ tests: */
- // foo() these three lines should remain in column 0
- // {
- // }
- /* Test for continuation and unterminated lines: */
- {
- i = 99 + 14325 +
- 21345 +
- 21345 +
- 21345 + ( 21345 +
- 21345) +
- 2345 +
- 1234;
- c = 1;
- }
- /*
- testje for indent with empty line
- here */
- {
- if (testing &&
- not a joke ||
- line up here)
- hay;
- if (testing &&
- (not a joke || testing
- )line up here)
- hay;
- if (testing &&
- (not a joke || testing
- line up here))
- hay;
- }
- {
- switch (c)
- {
- case xx:
- do
- if (asdf)
- do
- asdfasdf;
- while (asdf);
- else
- asdfasdf;
- while (cond);
- case yy:
- case xx:
- case zz:
- testing;
- }
- }
- {
- if (cond) {
- foo;
- }
- else
- {
- bar;
- }
- }
- {
- if (alskdfj ;alsdkfjal;skdjf (;sadlkfsa ;dlkf j;alksdfj ;alskdjf
- alsdkfj (asldk;fj
- awith cino=(0 ;lf this one goes to below the paren with ==
- ;laksjfd ;lsakdjf ;alskdf asd)
- asdfasdf;)))
- asdfasdf;
- }
- int
- func(a, b)
- int a;
- int c;
- {
- if (c1 && (c2 ||
- c3))
- foo;
- if (c1 &&
- (c2 || c3)
- )
- }
- {
- while (asd)
- {
- if (asdf)
- if (test)
- if (that)
- {
- if (asdf)
- do
- cdasd;
- while (as
- df);
- }
- else
- if (asdf)
- asdf;
- else
- asdf;
- asdf;
- }
- }
- {
- s = "/*"; b = ';'
- s = "/*"; b = ';';
- a = b;
- }
- {
- switch (a)
- {
- case a:
- switch (t)
- {
- case 1:
- cmd;
- break;
- case 2:
- cmd;
- break;
- }
- cmd;
- break;
- case b:
- {
- int i;
- cmd;
- }
- break;
- case c: {
- int i;
- cmd;
- }
- case d: if (cond &&
- test) { /* this line doesn't work right */
- int i;
- cmd;
- }
- break;
- }
- }
- {
- if (!(vim_strchr(p_cpo, CPO_BUFOPTGLOB) != NULL && entering) &&
- (bp_to->b_p_initialized ||
- (!entering && vim_strchr(p_cpo, CPO_BUFOPT) != NULL)))
- return;
- label :
- asdf = asdf ?
- asdf : asdf;
- asdf = asdf ?
- asdf: asdf;
- }
- /* Special Comments : This function has the added complexity (compared */
- /* : to addtolist) of having to check for a detail */
- /* : texture and add that to the list first. */
- char *(array[100]) = {
- "testje",
- "foo",
- "bar",
- }
- {
- struct Type
- {
- int i;
- char *str;
- } var[] =
- {
- 0, "zero",
- 1, "one",
- 2, "two",
- 3, "three"
- };
- float matrix[3][3] =
- {
- {
- 0,
- 1,
- 2
- },
- {
- 3,
- 4,
- 5
- },
- {
- 6,
- 7,
- 8
- }
- };
- }
- {
- /* blah ( blah */
- /* where does this go? */
- /* blah ( blah */
- cmd;
- func(arg1,
- /* comment */
- arg2);
- a;
- {
- b;
- {
- c; /* Hey, NOW it indents?! */
- }
- }
- {
- func(arg1,
- arg2,
- arg3);
- /* Hey, what am I doing here? Is this coz of the ","? */
- }
- }
- main ()
- {
- if (cond)
- {
- a = b;
- }
- if (cond) {
- a = c;
- }
- if (cond)
- a = d;
- return;
- }
- {
- case 2: if (asdf &&
- asdfasdf)
- aasdf;
- a = 9;
- case 3: if (asdf)
- aasdf;
- a = 9;
- case 4: x = 1;
- y = 2;
- label: if (asdf)
- here;
- label: if (asdf &&
- asdfasdf)
- {
- }
- label: if (asdf &&
- asdfasdf) {
- there;
- }
- label: if (asdf &&
- asdfasdf)
- there;
- }
- {
- /*
- hello with ":set comments= cino=c5"
- */
- /*
- hello with ":set comments= cino="
- */
- }
- {
- if (a < b) {
- a = a + 1;
- } else
- a = a + 2;
- if (a)
- do {
- testing;
- } while (asdfasdf);
- a = b + 1;
- asdfasdf
- }
- class bob
- {
- int foo() {return 1;}
- int bar;
- }
- main()
- {
- while(1)
- if (foo)
- {
- bar;
- }
- else {
- asdf;
- }
- misplacedline;
- }
- {
- if (clipboard.state == SELECT_DONE
- && ((row == clipboard.start.lnum
- && col >= clipboard.start.col)
- || row > clipboard.start.lnum))
- }
- /* end of AUTO */
- STARTTEST
- :set tw=0 wm=60 columns=80 noai fo=croq
- /serious/e
- a about life, the universe, and the rest
- ENDTEST
- {
- /* this is
- * a real serious important big
- * comment
- */
- /* insert " about life, the universe, and the rest" after "serious" */
- }
- STARTTEST
- :set nocin
- /comments
- joabout life/happens
- jothere/below
- oline/this
- Ohello
- ENDTEST
- {
- /*
- * Testing for comments, without 'cin' set
- */
- /*
- * what happens here?
- */
- /*
- the end of the comment, try inserting a line below */
- /* how about
- this one */
- }
- STARTTEST
- :set cin
- /vec2
- ==
- ENDTEST
- {
- var = this + that + vec[0] * vec[0]
- + vec[1] * vec[1]
- + vec2[2] * vec[2];
- }
- STARTTEST
- :set cin
- :set cino=}4
- /testing1
- k2==/testing2
- k2==
- ENDTEST
- {
- asdf asdflkajds f;
- if (tes & ting) {
- asdf asdf asdf ;
- asdfa sdf asdf;
- }
- testing1;
- if (tes & ting)
- {
- asdf asdf asdf ;
- asdfa sdf asdf;
- }
- testing2;
- }
- STARTTEST
- :set cin
- :set cino=(0,)20
- /main
- =][
- ENDTEST
- main ( int first_par, /*
- * Comment for
- * first par
- */
- int second_par /*
- * Comment for
- * second par
- */
- )
- {
- func( first_par, /*
- * Comment for
- * first par
- */
- second_par /*
- * Comment for
- * second par
- */
- );
- }
- STARTTEST
- :set cin
- :set cino=
- ]]=][
- ENDTEST
- {
- do
- {
- if ()
- {
- if ()
- asdf;
- else
- asdf;
- }
- } while ();
- cmd; /* this should go under the } */
- }
- STARTTEST
- ]]=][
- ENDTEST
- void f()
- {
- if ( k() ) {
- l();
- } else { /* Start (two words) end */
- m();
- }
- n();
- }
- STARTTEST
- /while
- ohere
- ENDTEST
- a()
- {
- do {
- a = a +
- a;
- } while ( a ); /* add text under this line */
- if ( a )
- a;
- }
- STARTTEST
- :1;/ENDTEST/+1,$wq! test.out
- ENDTEST