İşte şirket tamamlama nasıl çalışır (Ben biraz daha basit bir açıklama belgeleme bulunabilir bulabilirsiniz company-backends
C-hvcompany-backends
RET.
Şirketinizin tamamlanmasını sağlamaya çalıştığı arka uçların (tamamlama motorları) bir listesine sahipsiniz. Şirket bu arka ucun her birini birbiri ardına dener ve herhangi bir adayı iade eden ilk tamamlama için kullanılır ve geri kalanların geri kalanı yoksayılır. Bu nedenle, varsayılan olarak bir seferde yalnızca bir arka uç kullanılır.
Sizin durumunuzda (emacs-lisp-modunda görünüyorsunuz) emacs-lisp arka ucu adayları tamamlanmak üzere geri döndürüyor ve bu yüzden company-dabbrev
şirket tarafından asla tamamlanma için kullanılmıyor ve asla foobarsentence
tamamlanmıyorsunuz. Bu nedenle, şirket arka uçlarını daha company-dabbrev
önce company-elisp
(veya company-capf
son zamanlarda emacsen) gelecek şekilde değiştirmek isteyebilirsiniz . Ama sanırım şu anki durumu tersine çevirmek istediğiniz şey bu değil ve emacs-lisp arka ucundan tamamlanmayacaksınız (bu durumda okumaya devam edin).
Şirket, grouped
arka uç olarak adlandırdığı şeyi kullanarak birden çok kaynaktan tamamlamaları birleştirmek için bir yol sağlar . Genellikle üyeleri company-backends
bireysel arka uçlardır, ancak aynı zamanda arka uçların bir listesi olabilir, bu durumda arka uçların tamamlanması, aynı şekilde dönmeleri prefix
veya tamamlanacak metinler olması koşuluyla birleştirilir ( company-backends
ayrıntılı açıklama için lütfen belgelerine bakın ).
Yani tamamlamaları birleştirmek istiyorsanız company-elisp
(son emacsen'de company-capf
kullanılır) ve company-dabbrev
bunu yapın
(add-to-list 'company-backends '(company-capf company-dabbrev))
Ayrıca, :with
anahtar kelimeyi kullanarak farklı arka uçları birleştirebilirsiniz
(add-to-list 'company-backends '(company-capf :with company-dabbrev))
Bu, :with
şirket olmadan (arka plan metni tamamlanacak) :with
belirlemek için yalnızca arka uçları kullanacağından örnek içermeyen arka uçlar listesinden farklıdır prefix
. Bu ima sonra backends gelen adaylar :with
, şirket tarafından göz ardı edilecektir bakılmaksızın arka uçları bir dönüş olsun prefix
, ya da hiç olmadığını önce backends hiçbiri :with
dönüş a prefix
.
Bunu yerel olarak emacs-lisp buffer'da ayarlamak isteyebilirsiniz (Bunu tercih ederim)