Seperti yang sudah ditunjukkan Jesse, yang Anda inginkan di sini adalah company-files
backend. Ada beberapa cara berbeda untuk menggunakannya:
Ikat kunci untuk menelepon company-files
secara langsung.
Gunakan perintah company-begin-backend
. Ini meminta Anda untuk menggunakan backend, kemudian menawarkan kandidat penyelesaian.
Gunakan company-other-backend
untuk memutar daftar backend (lihat item berikutnya). Ini dapat digunakan untuk memicu penyelesaian atau dapat digunakan setelah mode perusahaan telah dipicu untuk beralih ke satu set kandidat penyelesaian yang berbeda. Anda mungkin ingin menetapkan kunci yang mengikat di peta perusahaan, mis(define-key company-active-map (kbd "C-e") #'company-other-backend)
Konfigurasikan variabel company-backends
. Mode Perusahaan melintasi daftar ini untuk menemukan backend yang menerima awalan saat ini (yaitu teks sebelum titik). Sangat mungkin untuk memiliki backend dalam daftar yang menerima awalan saat ini tetapi tidak menawarkan kandidat penyelesaian, di mana mode perusahaan titik tidak akan menyelesaikan apa pun secara otomatis. Anda dapat menyesuaikan daftar untuk memesan backend dengan cara yang memenuhi kebutuhan Anda.
Beberapa contoh modifikasi company-backends
:
Jika Anda hanya ingin melengkapi nama file, Anda dapat menjadikannya sebagai satu-satunya backend:
(setq company-backends '(company-files))
Itu tampaknya tidak mungkin, jadi Anda lebih baik meletakkan backend yang paling sering digunakan terlebih dahulu dan kemudian menggunakan salah satu opsi yang disebutkan sebelumnya untuk beralih backend atau memanggil satu dengan nama ketika Anda membutuhkan sesuatu yang lain.
Anda juga dapat mengonfigurasi backend 'grup' yang membuat kumpulan kandidat penyelesaian yang digabungkan. Coba ini, misalnya:
(setq company-backends '((company-capf company-dabbrev-code company-files)))
Ini menentukan backend tunggal yang menggabungkan kandidat dari tiga backend lainnya. Ini akan memberi Anda hasil dari penyelesaian-pada-titik, dabbrev, dan sistem file.
Anda dapat menggunakan kait mode untuk menentukan serangkaian backend yang berbeda untuk berbagai mode utama. Sebagai contoh:
(add-hook 'org-mode-hook
(lambda ()
(setq-local company-backends '((company-files company-dabbrev)))))
(add-hook 'emacs-lisp-mode-hook
(lambda ()
(setq-local company-backends '((company-capf company-dabbrev-code)))))