今天在写一个头文件的时候想要插入当前文件的文件名,因为我用的是Spacemacs
的
配置,没有现成的插入文件名的快捷方式(或者我不知道?),于是就想自己写一个。
代码如下:
1 | (defun my-insert-file-name () |
然后在dotspacemacs/user-config
函数里绑定快捷键
1 | (spacemacs/set-leader-keys (kbd "in") 'my-insert-file-name) |
后来觉得不如直接做成一个匿名函数更直观,函数的定义和使用也能放在一起,不会
出现找不到函数定义的情况,于是删除原my-insert-file-name
函数,直接用匿名函
数代替:
1 | (spacemacs/set-leader-keys (kbd "in") |
这里为了清楚分也几行写,文件中是放在一行上的。
以前虽然了解过一些 Emacs Lisp,但是从来没有真正写过一个函数,这个函数虽然简
单,但是能用。有也这个小小的成功,下次也许就能做更大的改动了呢。
References
Emacs in place filename / path insertion
此外还参考了Spacemacs
里的spacemacs/show-and-copy-buffer-filename
函数。