中午安装了新出的win-emacs 27.1, 打算长期服用win版本。因为wsl运行doom-emacs好龟速,没法用。
上手用了一下,令人欣喜的是eshell这个在Linux上比较鸡肋的shell,在win上可能会有严重依赖。
以前没有在win上用过emacs, 隐隐约约感觉前面是一条很长的路。
请教各位,win版emacs哪些功能有,哪些功能没有,都有哪些坑?
若要实现与linux上基本相当的功能需要做哪些工作?
中午安装了新出的win-emacs 27.1, 打算长期服用win版本。因为wsl运行doom-emacs好龟速,没法用。
上手用了一下,令人欣喜的是eshell这个在Linux上比较鸡肋的shell,在win上可能会有严重依赖。
以前没有在win上用过emacs, 隐隐约约感觉前面是一条很长的路。
请教各位,win版emacs哪些功能有,哪些功能没有,都有哪些坑?
若要实现与linux上基本相当的功能需要做哪些工作?
我一直在Windows下使用Emacs,感觉挺好。主要有以下几点要折腾:
编码问题放在第一位真有先见。
把系统改成bata utf-8之前和修改重启之后,这几个字符都显示不出来。
3:15 是时间,后面跟着的是 PM,在后面收 system load average for past 1 minute.
C-x C-c管不了Emacs,报错提示:
These default coding systems were tried to encode text
in the buffer ‘ *temp file*’:
(prefer-utf-8 (45 . 4194262) (46 . 4194268) (47 . 4194248) (48 . 4194301))
(utf-8 (45 . 4194262) (46 . 4194268) (47 . 4194248) (48 . 4194301))
However, each of them encountered characters it couldn’t encode:
prefer-utf-8 cannot encode these:
utf-8 cannot encode these:
Click on a character (or switch to this window by ‘C-x o’
and select the characters by RET) to jump to the place it appears,
where ‘C-u C-x =’ will give information about it.
Select one of the safe coding systems listed below,
or cancel the writing with C-g and edit the buffer
to remove or modify the problematic characters,
or specify any other coding system (and risk losing
the problematic characters).
raw-text no-conversion
另外,除了chocho, msys2, 在用scoop好像也挺不错。
我是直接设置时间,星期,等都为英文格式,懒得折腾编码。曾经折腾过很久,效果不理想。高手的话,可以折腾一下 scoop没用过,听说还可以。
daemon不一定需要的,启动问题可以通过lazyload,autoload等技术解决。我试过daemon,结果是它加载的内容好像不全,有些内容和正常加载不一致。可能是我姿势不对。
我全用cygwin的,包括emacs-w32,grep,ag,texlive,git等一系列
cygwin下速度如何,我先前在msys2下试过,不能忍受的慢,换到WSL2下了
速度还能接受。magit调git稍微有些慢。不过不在cygwin里用也是很慢。有条件还是首先Linux,其次Mac。
不知道什么原因,重新安装了wsl-ubuntu之后,启动速度突然变得超快。 在windows中启动:11.963s (emacs 27.1)
在wsl中启动 1.771秒二者是同一份配置文件。 这样的话,路就好走了。
请问这个好用吗? 毕竟beta版,网上查了下兼容问题不少呢
自己好用,但和别人协作不好用。但为了Emacs,只能开着。开了这个后,你电脑上编辑的一些文件拷贝到其他同事的电脑上可能会出现乱码。因为他们大都没开这个选项,没法通过UTF-8解码中文。
路径的问题,由于windows上“c:/Windows/system32"在最前面,导致有些命令用不了比如 find,
PS C:\Users\gaowei> scoop which find
C:\Windows\system32\find.exe
无论用find还是用find.exe全部调用的是windows的命令,如果直接在emacs中用grep-find命令会报错:
find . -type f -exec grep -nH -e diary "{}" ";"
Access denied - .
File not found - -TYPE
File not found - F
File not found - -EXEC
File not found - GREP
File not found - -NH
File not found - -E
File not found - DIARY
File not found - ;
迂回的解决方案是安装busybox,用grep-find的时候加前缀:
Grep started at Thu Aug 27 13:24:07
busybox find . -type f -exec grep -nH -e diary "{}" ";"
./01.Screen.org:113:On a display that supports a mouse, you can use the mouse to choose a command from the menu bar. An arrow on the right edge of a menu item means it leads to a subsidiary menu, or submenu. A '...' at the end of a menu item means that the command will prompt you for further input before it actually does anything.
我是emacs内自定义了PATH变量,定义时就把c:/Windows/system32
放最后面,应该就可以了
(setenv
"PATH"
"d:/text/emacs/bin;d:/swap/git/cmd;d:/server/php7;d:/server/node;d:/server/python;D:/server/msys/usr/bin;c:/windows/;c:/windows/system32/;")
我今日也下载了emacs27,好像跟26.3差别不大啊,可能我只是用的包比较少。不过lsp-mode,是快了不少是真的。
谢谢,仿照你的设置,也把PATH修改了, wsl-emacs和windows用的一份配置。
(if (eq system-type 'windows-nt)
(setenv
"PATH"
"C:/ProgramData/scoop/shims;C:/Users/gaowei/scoop/shims;C:/Users/gaowei/.emacs.d/bin;C:/Users/gaowei/AlphaApps;C:/Windows/system32;C:/Windows;C:/Windows/System32/Wbem;C:/Windows/System32/WindowsPowerShell/v1.0;C:/Windows/System32/OpenSSH/;C:/Users/gaowei/AppData/Local/Microsoft/WindowsApps")
nil)
windows 上用emacs 说多了都是泪,现在啥都懒得折腾,可能年纪大了折腾不动了。 编码问题?显示乱码我就在外面开个powershell
echo ${echo $HOME}