谢谢,之前不知道 package-initialize 这个函数。
哈哈,每次配置崩了,就要瞬回一次蛮荒时代,简直没法想自己是怎么调教成功这个小怪兽的
今天也是, doom 因为网络的原因差点没重装好,才体会到有点基本配置做家底真很nice,至少能倒退回青铜和铁器时代。
设置好Emacs最高频的应用bookmarks这个中央控制台和全局地图,同时也要配置好查看每个街区的局部地图工具 dired。
dire默认开启状态,展示文件的全部信息:
这对文件的打开,查找,重命名带来不便,因此按键 ( 调用 dired-hide-details-mode 将详情关掉。
;; Set dired
(add-hook 'dired-mode-hook #'dired-hide-details-mode)
设置好bookmarks和dired,全局的工作告一段落。
顺带手给ZeroEmacs创建快捷启动 alias
# zeroemacs from terminal
alias zemacs="emacs -nw -Q -l ~/.zeroemacs/config.el"
# zeroemacs from GUI
alias zeroemacs="emacs -Q -l ~/.zeroemacs/config.el"
在加载每个文件的时候错误处理一下,
在编辑evil模块相关文件前开个emacs-server
,
或者维护一份vim配置,问题还是挺小的(逃
dired似乎不太好定制,我好久以前发过一贴问 如何定制dired显示的内容 最后也没搞定,我只看 |名称|修改日期|大小| 这三个,并且文件名要显示在第一列,文件名显示在所有文件信息的最后面才看到,这个总感觉不符合直觉(除了dired外,我常用的其它各种文件管理器,任务管理器都是以文件名称为第一列), 现在用org-mode自已整了一个 org-mode超链接文件的打开方式 org-file-apps - #2,来自 wsug
我是自己从零调教的,所以瞬回上古真心往事不堪回首,真是在Emas上浪费太多时间了啊
+1,我通常用daemon+emacsclient,正常app启动仅仅用来调试,不然真是瞬间连开个文件困难(我还Emacs里映射交换了Cmd和Ctrl,崩了真是手指完全打架)
厉害,刚接触的时候从零开始太难了。很早就听说过spaceemacs,但是spaceemacs对键盘毫无逻辑的魔改,屡次劝退了想要学习使用的热情;Spaceemacs用户平常很少用其工作,他们日常用jetbrain和vscode,只是人前炫技的时候用,所以当时对emacs的感觉就是花里胡哨。
之后机缘巧合用了prelude开始上路,直到用了doom切到高速路。
从零开始配置emacs能坚持到现在,真牛人,普通人早就劝退了。
好多人是从知道spaceemacs开始知道了emacs。但是当打开spaceemacs的时候,打开emacs-manual只有两眼一抹黑,键位完全不对应,驴唇马嘴。只能转而去读spaceemacs的手册。
于是,包括我在内的很多人,在没有弄清楚spaceemacs只是emacs的一个畸形配置之前,就怀抱着怎么会有a-emacs,b-eamcs,c-emacs这么多乱七八糟的emacs的疑惑离开了。
doom 的键位还是蛮合理的, 但编辑时时不时卡顿。 所以自定义一份还是必要的。 满足基本需求。
将 doom 配置成了 原生 emacs 的键位,没用evil的键位,加了这一行。
;;Key Configuration for Doom as Vanilla Emacs
(setq evil-default-state 'emacs)
认真学过vim,也啃过 practical vim; 但是,在insert-mode下自定义了一堆快捷键。
之后,别人告诉我,你适合用emacs。
哈哈,那时候还没有sublime,更别说atom、vscode了,(spacemacs、doom都是很后面的事了,这俩好像是由于emacs竞争者变多,为了重新吸引emacs新用户而诞生的,确实挺不错)。那时IDE胜行,想要个好的可扩展的编辑器,也就vim/emacs二选一,不然就只能忍受notepad++, ultraedit这类(还只能windows)。
真实,我曾经把vim生生用成了只有insert-mode,然后有vim达人不忍直视了,说你可快别用了,上emacs吧。现在vim只维持一个mini配置+powerbar,改改config文件用(不配置才能用上真vim )
要不要考虑下最新的猫态编辑(逃
很香,讲解视频的逻辑也清晰,从您这边也了解尝试了下dvp键盘布局,有收获,谢谢!!
我也是先用的vim,发现无论怎样用都用不起来,n次半途而废,直到发现emacs,然后就是那里不爽改那里,没感觉自己是从零配置emacs,而是从零开始改起,当有一个地方(痛点)经过自己魔改后用得爽了,那应该就算入门了。 每个人的这个地方估计都不一样吧, 我的是快捷键
这应该是从零配置emacs少有的优点,方便魔改,如果使用成熟配置spacemacs、doom,应该不太好改
啊这 虽然spacemacs近两年在本论坛和reddit式微但也不至于被你说成这样
https://github.com/hlissner/doom-emacs/blob/develop/modules/config/default/+evil-bindings.el
抱歉啊哭泣🤣,刚接触emacs的时候运气不好,遇人不淑,因此有偏见。
配置好全局导航图bookmark与局域地图dired,ZeroEmacs进入工作模式,开始配置 agenda。
一、Agenda 界面
agenda界面设置3个小时的区域间隔:
;;agenda-time-grid
(setq org-agenda-time-grid (quote ((daily today require-timed)
(300
600
900
1200
1500
1800
2100
2400)
"......"
"-----------------------------------------------------"
)))
同时设置 org-agenda的目录:
(setq org-agenda-files '("~/Documents/OrgMode/ORG/diary-by-months/" ;; 2020-01-10
10:45:25
"~/Documents/OrgMode/ORG/Master/" ;;2019-06-18 13:37:12
))
二、 org-capture 模板
org-capture的模板,当前简化至,只留下 Note 和 Plan。
;; org-agenda
;;最后只保留Note和Plan两部分。
(defun my-org-goto-last-note-headline ()
"Move point to the last headline in file matching \"* Notes\"."
(end-of-buffer)
(re-search-backward "\\* Note"))
(defun my-org-goto-last-plan-headline ()
"Move point to the last he adline in file matching \"* Plans\"."
(end-of-buffer)
(re-search-backward "\\* Plan"))
(setq org-capture-templates
'(("n" "Note" entry
(file+function "~/Documents/OrgMode/ORG/Master/todo.today.org"
my-org-goto-last-note-headline)
"* %i%? \n%T")
("p" "Plan" entry
(file+function "~/Documents/OrgMode/ORG/Master/todo.today.org"
my-org-goto-last-plan-headline)
"* TODO %i%?")
))
三、定义新的一天
每天由于 M-x newday 开启新的一天,将会自动创建:
;; newday
(defun newday ()
(interactive)
(progn
(find-file "~/Documents/OrgMode/Org/Master/todo.today.org")
(goto-char (point-max))
(insert "*" ?\s (format-time-string "%Y-%m-%d %A") ?\n
"** Plan\n"
"** HandsOn\n"
"** Notes\n"
"** Review\n"
)))
;;today
(defun today ()
(interactive)
(progn
(find-file "~/Documents/OrgMode/Org/Master/todo.today.org")
(goto-char (point-max))
(re-search-backward "\\* Plan")))
四、today.org
today.org 文件中只保留一周的记录,startup设置content展开全部heading。
满一周后做好week-review总结后,转移到 diary-by-months.org
中去。
五、工作流速览
- M-x newday 开始新的一天
- org-capture 写入note与任务
- 从agenda-view中往非当前执行的任务添加笔记
- 作日总结和周总结,today文件只保留一周的内容。