]> granicus.if.org Git - vim/commitdiff
updated for version 7.0060
authorBram Moolenaar <Bram@vim.org>
Tue, 15 Mar 2005 22:50:43 +0000 (22:50 +0000)
committerBram Moolenaar <Bram@vim.org>
Tue, 15 Mar 2005 22:50:43 +0000 (22:50 +0000)
src/eval.c
src/ex_cmds.h
src/os_amiga.c

index 42556b53722bb277f3c9fd651eaa441a7ca11cf1..52d0a14ff7ff84697b33320b471f14e777aa84c7 100644 (file)
@@ -13024,8 +13024,13 @@ f_synIDattr(argvars, rettv)
                p = highlight_has_attr(id, HL_STANDOUT, modec);
                break;
 
-       case 'u':                                       /* underline */
-               p = highlight_has_attr(id, HL_UNDERLINE, modec);
+       case 'u':
+               if (STRLEN(what) <= 5 || TOLOWER_ASC(what[5]) != 'c')
+                                                       /* underline */
+                   p = highlight_has_attr(id, HL_UNDERLINE, modec);
+               else
+                                                       /* undercurl */
+                   p = highlight_has_attr(id, HL_UNDERCURL, modec);
                break;
     }
 
index 9b105feea0165a3279187d0dc64d9b62d39e205f..f4a13025b7c41d97dbbf78334234e39d9ad81b7a 100644 (file)
@@ -110,7 +110,7 @@ EX(CMD_anoremenu,   "anoremenu",    ex_menu,
 EX(CMD_args,           "args",         ex_args,
                        BANG|FILES|EDITCMD|ARGOPT|TRLBAR),
 EX(CMD_argadd,         "argadd",       ex_argadd,
-                       BANG|NEEDARG|RANGE|NOTADR|ZEROR|COUNT|FILES|TRLBAR),
+                       BANG|NEEDARG|RANGE|NOTADR|ZEROR|FILES|TRLBAR),
 EX(CMD_argdelete,      "argdelete",    ex_argdelete,
                        BANG|RANGE|NOTADR|COUNT|FILES|TRLBAR),
 EX(CMD_argdo,          "argdo",        ex_listdo,
index 772bdcf8029845fd7d92cbc14438b4568914a3f3..1c15dc1f9e948c4e4b37f9ef4182caee87bb2e53 100644 (file)
@@ -119,9 +119,6 @@ mch_inchar(buf, maxlen, time, tb_change_cnt)
 {
     int            len;
     long    utime;
-#ifdef FEAT_AUTOCMD
-    static int once_already = 0;
-#endif
 
     if (time >= 0)
     {
@@ -130,43 +127,28 @@ mch_inchar(buf, maxlen, time, tb_change_cnt)
        else
            utime = time * 1000L;   /* convert from milli to micro secs */
        if (WaitForChar(raw_in, utime) == 0)    /* no character available */
-       {
-#ifdef FEAT_AUTOCMD
-           once_already = 0;
-#endif
            return 0;
-       }
     }
     else    /* time == -1 */
     {
-#ifdef FEAT_AUTOCMD
-       if (once_already == 2)
-           updatescript(0);
-       else if (once_already == 1)
-       {
-           setcursor();
-           once_already = 2;
-           return 0;
-       }
-       else
-#endif
        /*
         * If there is no character available within 2 seconds (default)
-        * write the autoscript file to disk
+        * write the autoscript file to disk.  Or cause the CursorHold event
+        * to be triggered.
         */
-           if (WaitForChar(raw_in, p_ut * 1000L) == 0)
+       if (WaitForChar(raw_in, p_ut * 1000L) == 0)
        {
 #ifdef FEAT_AUTOCMD
-           if (has_cursorhold() && get_real_state() == NORMAL_BUSY)
+           if (!did_cursorhold && has_cursorhold()
+                           && get_real_state() == NORMAL_BUSY && maxlen >= 3)
            {
-               apply_autocmds(EVENT_CURSORHOLD, NULL, NULL, FALSE, curbuf);
-               update_screen(VALID);
-               once_already = 1;
-               return 0;
+               buf[0] = K_SPECIAL;
+               buf[1] = KS_EXTRA;
+               buf[2] = (int)KE_CURSORHOLD;
+               return 3;
            }
-           else
 #endif
-               updatescript(0);
+           updatescript(0);
        }
     }
 
@@ -179,9 +161,6 @@ mch_inchar(buf, maxlen, time, tb_change_cnt)
 #  endif
        if (len > 0)
        {
-#ifdef FEAT_AUTOCMD
-           once_already = 0;
-#endif
 #ifdef FEAT_MBYTE
            /* Convert from 'termencoding' to 'encoding'. */
            if (input_conv.vc_type != CONV_NONE)