;;; init-segmentation.el --- Chinese word segmentation -*- lexical-binding: t -*- ;;; Commentary: ;;; Code: ;; emacs-chinese-word-segmentation (cond (*is-windows* (add-to-list 'load-path "h:/emacs/emacs-chinese-word-segmentation/") ;设置为进程调用方式 (setq cns-process-type 'shell) ;设置可执行文件路径 (setq cns-prog "h:/emacs/emacs-chinese-word-segmentation/cnws.exe") ;设置字典目录 (setq cns-dict-directory "h:/emacs/emacs-chinese-word-segmentation/cppjieba/dict") ;直接设置进程命令,绕过 Windows shell 检测 (setq cns-process-shell-command (format "%s %s %s %s %s %s" cns-prog (concat (file-name-as-directory cns-dict-directory) "jieba.dict.utf8") (concat (file-name-as-directory cns-dict-directory) "hmm_model.utf8") (concat (file-name-as-directory cns-dict-directory) "user.dict.utf8") (concat (file-name-as-directory cns-dict-directory) "idf.utf8") (concat (file-name-as-directory cns-dict-directory) "stop_words.utf8")))) (t (add-to-list 'load-path "~/emacs-stuff/emacs-chinese-word-segmentation/") (setq cns-process-type 'shell) (setq cns-prog "~/emacs-stuff/emacs-chinese-word-segmentation/cnws") (setq cns-dict-directory "~/emacs-stuff/emacs-chinese-word-segmentation/cppjieba/dict/"))) ;; 其他配置 (setq cns-recent-segmentation-limit 40) (require 'cns nil t) ;; 自动启动 (when (featurep 'cns) (add-hook 'after-init-hook 'global-cns-mode)) ;; 取消C-绑定 (with-eval-after-load 'cns (define-key cns-mode-map (kbd "C-") nil)) (provide 'init-segmentation) ;;; init-segmentation.el ends here