大佬们 请问 company-dabbrev 如何补全带 ‘-’ 的内容?


#1

通常我使用 company-dabbrev 进行补全的时候不会进行带连字符号的内容的 补全,现在我想要使用 company-dabbrev 补全带有破折号和空格内容的补全, 例如:

buffer中有内容为 'oh-yes' 

我想要补全 oh 为 oh-yes:

oh<--- active `company-complete'       
  +-----------------+                  
  | candidate-1     |                  
  |-----------------|                  
  | candidate-2     |                  
  |-----------------| <------ candidates  list
  | candidate-3     |   
  |-----------------|   
  |    ......       |
  |-----------------|
  |                 |
  +-----------------+

但是补全侯选列表中没有带有破折号的内容,请问大佬们,可有相关变量设置可 以解决这个问题?


#2

设置 company-dabbrev-char-regexp 即可。

我的设置是 \\sw\\(-\\w\\)* , 可能正则不规范, :smile:


#3

我是(modify-syntax-entry ?- "w" web-mode-syntax-table),设为"w" "word"的char会被company补全。这样只会对某个mode设置,不影响全局。当前的syntax-table可以describe-syntax


#4

新技能get 感谢, 之前一直没学习syntax-table, 被你一行代码搞懂 :blush: