[w3m-dev 01560] Re: long URL

From: Hironori Sakamoto (h-saka@lsi.nec.co.jp)
Date: Fri Dec 22 2000 - 02:39:47 CST

  • Next message: Hironori Sakamoto: "[w3m-dev 01562] Re: <P> in <DL>"

    $B:dK\$G$9!#(B

    >> $B2,ED$G$9!#(B
    >> PEEK $B$d(B PEEK_LINK $B$G2hLLI}$h$jD9$$(B URL $B$r8+$i$l$k$h$&$K!"(Bprefix $B$rMxMQ(B
    >> $B$7$F<BAu$7$F$_$^$7$?!#(B
    >> $BK\Ev$O0lEY$KA4ItI=<($7$?$+$C$?$N$G$9$,!"2hLL@)8f$^$o$j$,$h$/$o$+$i$J$+$C(B
    >> $B$?$N$G!"$H$j$"$($:I=<($7$?$$ItJ,$r;XDj$9$kJ}K!$r$H$C$F$$$^$9!#(B2c $B$d(B 3u
    >> $B$HF~NO$9$k$H!";XDj$5$l$?ItJ,$KBP1~$9$k!"(BURL $B$N0lIt$,I=<($5$l$^$9!#(B
    >> $B8f0U8+!"8f46A[$*BT$A$7$F$*$j$^$9!#(B

    $B$3$&$$$&$N$O$I$&$G$7$g$&!#(B
    $BO"B3$7$?(B 'u' $B$d(B 'c' $B$G(B URL $B$,0lJ8;z$:$D%9%/%m!<%k$7$^$9!#(B
    # $B:FIA2h$,$A$g$C$H$&$C$H$&$7$$$+$b!#(B
    # $B2,ED$5$s$N0F$bF~$l$F$b$$$$$+$b$7$l$^$;$s!#(B

    $B$J$*!"2,ED$5$s$N(B patch $B$d(B displayBuffer $B$G(B URL $B$rI=<($9$k=hM}$G$bF1MM(B
    $B$G$9$,!"(BURL $B$K4A;z$,4^$^$l$F$$$k$HJ8;z2=$1$9$k$3$H$,$"$k$+$H;W$$$^$9!#(B
    m17n $BHG$G$d$C$F$$$k(B URL $B$r(B parse $B$9$kA0$K(B quote $B$9$k=hM}$r$$$l$k$Y$-(B
    $B$+$b$7$l$^$;$s!#(B
    # $B$?$@!"%U%!%$%kL>$H(B URL $B$N5DO@$,Mm$`$+$i$J$"!#(B
    -----------------------------------
    $B:dK\(B $B9@B'(B <hsaka@mth.biglobe.ne.jp>
     http://www2u.biglobe.ne.jp/~hsaka/

    --- main.c.orig Fri Dec 22 13:57:37 2000
    +++ main.c Fri Dec 22 14:45:03 2000
    @@ -64,6 +64,7 @@
     static void dump_source(Buffer *);
     static void dump_head(Buffer *);
     int prec_num = 0;
    +int prev_key = -1;
     int on_target = 1;
     
     #define PREC_NUM (prec_num ? prec_num : 1)
    @@ -663,6 +664,8 @@
                     prec_num = 0;
                 }
             }
    + prev_key = CurrentKey;
    + CurrentKey = -1;
         }
     }
     
    @@ -671,7 +674,6 @@
     {
         CurrentKey = c;
         w3mFuncList[(int) GlobalKeymap[c]].func();
    - CurrentKey = -1;
         onA();
     }
     
    @@ -785,7 +787,7 @@
         }
     }
     
    -static char *currentURL(void);
    +static Str currentURL(void);
     
     void
     saveBufferInfo()
    @@ -795,7 +797,7 @@
             return;
         }
         else {
    - fprintf(fp, "%s\n", currentURL());
    + fprintf(fp, "%s\n", currentURL()->ptr);
             fclose(fp);
         }
     }
    @@ -3043,10 +3045,20 @@
     {
         Anchor *a;
         ParsedURL pu;
    - Str s;
    + static Str s = NULL;
    + static int offset = 0;
     
         if (Currentbuf->firstLine == NULL)
             return;
    + if (CurrentKey == prev_key && s != NULL) {
    + if (s->length - offset >= COLS)
    + offset++;
    + else if (s->length <= offset) /* bug ? */
    + offset = 0;
    + goto disp;
    + } else {
    + offset = 0;
    + }
         a = retrieveCurrentAnchor(Currentbuf);
         if (a == NULL) {
             a = retrieveCurrentImg(Currentbuf);
    @@ -3061,27 +3073,36 @@
         parseURL2(a->url, &pu, baseURL(Currentbuf));
         s = parsedURL2Str(&pu);
       disp:
    - disp_message_nomouse(s->ptr, TRUE);
    + disp_message_nomouse(&s->ptr[offset], TRUE);
     }
     
     /* show current URL */
    -static char *
    +static Str
     currentURL(void)
     {
    - Str s;
    -
         if (Currentbuf->bufferprop & BP_INTERNAL)
    - return "";
    - s = parsedURL2Str(&Currentbuf->currentURL);
    - return s->ptr;
    + return Strnew_size(0);
    + return parsedURL2Str(&Currentbuf->currentURL);
     }
     
     void
     curURL(void)
     {
    + static Str s = NULL;
    + static int offset = 0;
    +
         if (Currentbuf->bufferprop & BP_INTERNAL)
             return;
    - disp_message_nomouse(currentURL(), TRUE);
    + if (CurrentKey == prev_key && s != NULL) {
    + if (s->length - offset >= COLS)
    + offset++;
    + else if (s->length <= offset) /* bug ? */
    + offset = 0;
    + } else {
    + offset = 0;
    + s = currentURL();
    + }
    + disp_message_nomouse(&s->ptr[offset], TRUE);
     }
     /* view HTML source */
     



    This archive was generated by hypermail 2b29 : Fri Dec 22 2000 - 02:52:38 CST