URI: 
       tbetter expansions - plan9port - [fork] Plan 9 from user space
  HTML git clone git://src.adamsgaard.dk/plan9port
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
   DIR commit b1e32ef3661879a140728c4ee32b382d7c71679f
   DIR parent 8057b1ce3fa3babe186407aa2ee9fafe2ce6d836
  HTML Author: rsc <devnull@localhost>
       Date:   Mon, 21 Mar 2005 05:13:45 +0000
       
       better expansions
       
       Diffstat:
         M src/cmd/netfiles/main.c             |      14 ++++++++++++--
       
       1 file changed, 12 insertions(+), 2 deletions(-)
       ---
   DIR diff --git a/src/cmd/netfiles/main.c b/src/cmd/netfiles/main.c
       t@@ -157,16 +157,26 @@ wintop(Win *w)
                winctl(w, "show");
        }
        
       +int
       +isdot(Win *w, uint xq0, uint xq1)
       +{
       +        uint q0, q1;
       +
       +        winctl(w, "addr=dot");
       +        q0 = winreadaddr(w, &q1);
       +        return xq0==q0 && xq1==q1;
       +}
       +
        /*
         * Expand the click further than acme usually does -- all non-white space is okay.
         */
        char*
        expandarg(Win *w, Event *e)
        {
       -        if(e->c2 == 'l')
       +        if(e->c2 == 'l')        /* in tag - no choice but to accept acme's expansion */
                        return estrdup(e->text);
                dprint("expand %d %d %d %d\n", e->oq0, e->oq1, e->q0, e->q1);
       -        if(e->oq0 == e->oq1 && e->q0 != e->q1)
       +        if(e->oq0 == e->oq1 && e->q0 != e->q1 && !isdot(w, e->q0, e->q1))
                        winaddr(w, "#%ud+#1-/[^ \t\\n]*/,#%ud-#1+/[^ \t\\n]*/", e->q0, e->q1);
                else
                        winaddr(w, "#%ud,#%ud", e->q0, e->q1);