From 9f5bc2aa96a988277a4f4587b5877eede6cf41b8 Mon Sep 17 00:00:00 2001
From: Hunter Goldstein <hunter.d.goldstein@gmail.com>
Date: Tue, 11 Jul 2017 18:01:18 -0400
Subject: [PATCH] Tilde now properly expands inside a normal word (#398)

* Tidle now properly expands inside a normal word

* contains -> intersects
---
 src/parser/shell_expand/words.rs | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/src/parser/shell_expand/words.rs b/src/parser/shell_expand/words.rs
index bc29a92b..cec56c38 100644
--- a/src/parser/shell_expand/words.rs
+++ b/src/parser/shell_expand/words.rs
@@ -1098,6 +1098,14 @@ impl<'a> Iterator for WordIterator<'a> {
                 b'*'|b'?' if !self.flags.contains(SQUOTE) => {
                     glob = true;
                 },
+                b'~' if !self.flags.intersects(SQUOTE | DQUOTE) => {
+                    let output = &self.data[start..self.read];
+                    if output != "" {
+                        return Some(WordToken::Normal(output, glob));
+                    } else {
+                        return self.next();
+                    }
+                }
                 _ => (),
             }
             self.read += 1;
-- 
GitLab