diff options
| author | Paul Steckler | 2017-03-08 10:49:09 -0500 |
|---|---|---|
| committer | Paul Steckler | 2017-03-08 10:49:09 -0500 |
| commit | 6c703907b192bc903ca9897e17424e58e2003692 (patch) | |
| tree | aa42d5b9a292e09a31d36bf44a867dbd48b979fb /lib | |
| parent | 915ad2578489919e169fdcf4fe76a4f070268073 (diff) | |
| parent | 06fd76163b857a056ac44e7437efa17656f06e5b (diff) | |
Merge commit '06fd76163b857a056ac44e7437efa17656f06e5b'
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/unicode-tokens.el | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/lib/unicode-tokens.el b/lib/unicode-tokens.el index b52d035a..ba3d036a 100644 --- a/lib/unicode-tokens.el +++ b/lib/unicode-tokens.el @@ -427,16 +427,19 @@ This function also initialises the important tables for the mode." ;; hairy logic based on Coq-style vs Isabelle-style configs (if (string= "" (format unicode-tokens-token-format "")) ;; no special token format, parse separate words/symbols - (let* ((optoks - (remove* "^\\(?:\\sw\\|\\s_\\)+$" - toks :test 'string-match)) - (idtoks - (set-difference toks optoks)) + (let* ((tokextra (remove* "^\\(?:\\sw\\|\\s_\\)+$" toks :test 'string-match)) + (toksymbwrd (set-difference toks tokextra)) + ;; indentifier that are not pure words + (toksymb (remove* "^\\(?:\\sw\\)+$" toksymbwrd :test 'string-match)) + ;; pure words + (tokwrd (set-difference toksymbwrd toksymb)) (idorop (concat "\\(\\_<" - (regexp-opt idtoks) - "\\_>\\|\\(?:\\B" - (regexp-opt optoks) + (regexp-opt toksymb) + "\\_>\\|\\(?:\\<" + (regexp-opt tokwrd) + "\\>\\)\\|\\(?:\\B" + (regexp-opt tokextra) "\\B\\)\\)"))) (if unicode-tokens-token-variant-format-regexp (format unicode-tokens-token-variant-format-regexp |
