.emacs.d

the most bloated Emacs config on this planet
git clone https://git.trogloxene.org/.emacs.d.git
Log | Files | Refs

init-segmentation.el (1601B)


      1 ;;; init-segmentation.el --- Chinese word segmentation -*- lexical-binding: t -*-
      2 
      3 ;;; Commentary:
      4 
      5 ;;; Code:
      6 
      7 ;; emacs-chinese-word-segmentation
      8 (use-package cns
      9   :straight nil
     10   :hook
     11   (after-init . require-cns)
     12   (after-init . global-cns-mode)
     13   :init
     14   (cond
     15    (*is-windows*
     16     (add-to-list 'load-path "h:/emacs/emacs-chinese-word-segmentation/")
     17     (setq cns-process-type 'shell)
     18     (setq cns-prog "h:/emacs/emacs-chinese-word-segmentation/cnws.exe")
     19     (setq cns-dict-directory "h:/emacs/emacs-chinese-word-segmentation/cppjieba/dict")
     20     (setq cns-process-shell-command
     21           (format "%s %s %s %s %s %s"
     22                   cns-prog
     23                   (concat (file-name-as-directory cns-dict-directory) "jieba.dict.utf8")
     24                   (concat (file-name-as-directory cns-dict-directory) "hmm_model.utf8")
     25                   (concat (file-name-as-directory cns-dict-directory) "user.dict.utf8")
     26                   (concat (file-name-as-directory cns-dict-directory) "idf.utf8")
     27                   (concat (file-name-as-directory cns-dict-directory) "stop_words.utf8"))))
     28 
     29    (t
     30     (add-to-list 'load-path "~/emacs-stuff/emacs-chinese-word-segmentation/")
     31     (setq cns-process-type 'shell)
     32     (setq cns-prog "~/emacs-stuff/emacs-chinese-word-segmentation/cnws")
     33     (setq cns-dict-directory "~/emacs-stuff/emacs-chinese-word-segmentation/cppjieba/dict/")))
     34 
     35   :config
     36   (defun require-cns ()
     37     (require 'cns nil t))
     38 
     39   (setq cns-recent-segmentation-limit 40)
     40   (define-key cns-mode-map (kbd "C-<backspace>") nil))
     41 
     42 (provide 'init-segmentation)
     43 ;;; init-segmentation.el ends here