基于 Company 编写了一个带中文注释的英文补全助手

spacemacs

#21

我一看你用下划线, 就发现这个方法很猥琐, 哈哈哈


#22

数字是否可以显示在右边margin区域? 跟emacs行号显示的位置一样, 不过在右边


#23

这词典用了一下, 还挺流畅啊, 没想到, 本以为会卡顿


#24

直接塞内存里面那么大一个字典, 能不流畅吗? :sunglasses:


#25

右边不行, 你没有看到上面这么多朋友都在折腾对齐吗? :ghost:


#26

margin是个特殊的区域, 应该是单独对齐的. 刚找到了一个在右边显示行号的例子:


#27

长达5万行的词典变量 :+1:,直接造成我的emacs打开文件卡死 :smile:

要不要把词典单独放一个文件?这样方便大家贡献代码


#28

Maybe this version more beautiful …

(defun en-words-annotation (s)
  (let* ((str1 (get-text-property 0 :initials s))
         (str2 (replace-regexp-in-string "\\cc" "" str1))
         (w0 (length s))
         (w1 (length str1))
         (w2 (length str2))
         (n0 (max 0 (- 15 w0)))
         (n1 (max 0 (- 15 (- w1 w2)))))
    (format "%s" (concat (make-string n0 ?\ )
                         str1
                         (make-string n1 ?\.)))))

#29

@tumashu 66666

已经合并了: https://github.com/manateelazycat/lazycat-emacs/commit/5df6772a37fa163ead9c4c36fe8fe7c771418184


#30

谁叫你用 windows ? 啦啦啦啦 :smiling_imp:


#31

@tumashu Cool man!!!


#32

补个 compmomi 试试


#33

:joy: 我用 linux 上的 spacemacs 打开一样卡死,所以只能切换成 fundamental-mode


#34

最完美的办法, 就是知道 company 显示的 candidate 的单词和翻译, 然后计算这些单词和翻译的最长长度.

现在写死长度的方法, 会导致太长太难看, 太短又会遇到意外的情况.

欢迎贡献补丁. :stuck_out_tongue_closed_eyes:


#35

你早上的补丁在我的机器上不行.

现在有新的补丁了?


#36

还是那一个

(setq debug-on-error t) 之后会有什么错误呢?


#37

没有错误, 就是打了你的补丁, 都还是不对齐的.


#38

你的补丁打完是这种感觉.


#39

其实 @tumashu 最后的补丁已经足够好了.

当左边超过 15 个字符时, 会临时往右边挤一下翻译的空间, 但是仍然保持整体是填充对齐的.


#40

说明要求 中英文字符寬度 2:1