Allow more complex delimiters for word selections. - st - Simple Terminal
       
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 8e968739c3cfc4e9f7088a9ea360bc4f37e9ad9f
 (DIR) parent 0c2b513d01697aea20bb4a2a144b55e72c625e86
 (HTM) Author: Christoph Lohmann <20h@r-36.net>
       Date:   Sat,  4 May 2013 19:04:20 +0200
       
       Allow more complex delimiters for word selections.
       
       Thanks Alexander Rezinsky <alexrez@gmail.com>!
       
       Diffstat:
         config.def.h                        |       9 ++++++++-
         st.c                                |       4 +++-
       
       2 files changed, 11 insertions(+), 2 deletions(-)
       ---
 (DIR) diff --git a/config.def.h b/config.def.h
       @@ -9,7 +9,14 @@ static char font[] = "Liberation Mono:pixelsize=12:antialias=false:autohint=fals
        static int borderpx = 2;
        static char shell[] = "/bin/sh";
        
       -/* timeouts (in milliseconds) */
       +/*
       + * word delimiter string
       + *
       + * More advanced example: " `'\"()[]{}"
       + */
       +static char worddelimiters[] = " ";
       +
       +/* selection timeouts (in milliseconds) */
        static unsigned int doubleclicktimeout = 300;
        static unsigned int tripleclicktimeout = 600;
        
 (DIR) diff --git a/st.c b/st.c
       @@ -707,8 +707,10 @@ selsnap(int mode, int *x, int *y, int direction) {
                                        }
                                }
        
       -                        if(term.line[*y][*x + direction].c[0] == ' ')
       +                        if(strchr(worddelimiters,
       +                                        term.line[*y][*x + direction].c[0])) {
                                        break;
       +                        }
        
                                *x += direction;
                        }