将emacs设置为cocos的默认编辑器,在cocos中点击脚本启动emacs后,emacs不会加载插件,
这要怎么解决啊改这个:auto-mode-alist.
感觉像是用的默认配置,emacs 并不是开箱即用的。
我切换使用emacs server勉强能使用,cocos会传入emacs两个buffer,开启server时
Dired的buffer会覆盖掉ts的buffer,按C-x # 按键才会返回到ts文件buffer 默认脚本管理器试着换成vim也会打开一个文件夹和一个ts文件. cocos应该是会将一个ts文件和一个文件夹的信息传到默认编辑器,可是要怎么在emacs处理接受到的信息啊,怎么分开处理Dired和ts文件信息啊
现在这个emacs没有加载配置,这个eamcs是将用户路径当作home路径了,而没有找Roaming中的路径. 至于auto-mode-alist我不知道要怎么改
我说个思路权且供你参考。写个bat或者bash脚本,在这个这个脚本里面忽略cocos传入的文件夹参数,并调用emacs打开ts文件;或者更改cocos传入参数的顺序,先调用emacs打开目录,再打开ts文件,这样emacs应该默认显示的就是ts文件了。
1 个赞
解决了
@echo off
set "file_path=%2"
rem 找到Assets目录的前一层目录
echo %file_path%
set file_name="cocos"
set HOME=%USERPROFILE%\AppData\Roaming
for %%a in ("%file_path:\=" "%") do (
if "%%a" == ""assets"" (
echo %%a "true" %file_name%
goto for_end
) else (
echo %%a "false" %file_name%
set file_name=%%a
)
set file_name=%%a
)
@REM pause
:for_end
echo %file_name% ---11
set server_name=%file_name%
set "server_name=%server_name:"=%"
echo %server_name% server_name
rem 检测 Emacs server 是否正在运行
call emacsclient --server-file %server_name% --eval "(+ 2 2)"
if %errorlevel% neq 0 (
rem 如果Emacs server未运行,则启动之
call emacs --daemon=%server_name%
)
echo %server_name% -n %line_num% %file_path%
rem 使用 emacsclient 打开文件
call emacsclient --server-file %server_name% -n %file_path%
echo %file_path%
echo %%2%
@REM pause
这是写的bat文件,设置为cocos启动程序echo不会打印,emacs倒是启动没问题,也不知是什么问题