5

我正试图在 spacemacs 中工作得更漂亮。

我有(prettier-js :location (recipe :url "https://raw.githubusercontent.com/prettier/prettier/master/editors/emacs/prettier-js.el" :fetcher url))这有点工作,但后来在消息中我看到

Contacting host: raw.githubusercontent.com:443
Wrote /Users/travis/.emacs.d/.cache/quelpa/build/prettier-js/prettier-js.el
File: /Users/travis/.emacs.d/.cache/quelpa/build/prettier-js/prettier-js.stamp
Error getting PACKAGE-DESC: (search-failed ;;; prettier-js.el ends here)
Cannot load prettier-js

我还不知道足够多的 emacs 知道 PACKAGE-DESC 做什么,或者我是否需要它来更漂亮地加载。

我正在尝试在私有层中执行此操作

文档说:

将此添加到您的初始化中

(require 'prettier-js)
(add-hook 'js-mode-hook
          (lambda ()
            (add-hook 'before-save-hook 'prettier-before-save)))

我想我应该有类似的东西:

(defun myJS/post-init-prettier-js ()
  "Initialize prettier-js"
  (use-package prettier-js)
  :defer t
  :init
  (progn
    (add-hook 'before-save-hook 'prettier-before-save)
    )
  )

在我的层

4

3 回答 3

8

prettier为了在Spacemacs中激活,我们需要执行几个步骤:


1.prettier在 Spacemacs 中安装集成:

  • <SPC> <SPC>(按两次空格键),这将触发HELM允许我们搜索 Emacs 命令。

  • 按下 后,<SPC> <SPC>输入HELM缓冲区并按下(Return/Enter 键)。package-install<RET>

  • HELM 包安装缓冲区中将出现一个包列表,输入prettier-js它并按<RET>


2.prettier在您的系统中安装:

  • 没有它自己,集成不会做任何事情prettier

  • 假设您已经安装nodenpm安装,请转到您的终端并输入:npm install -g prettier然后按 Enter。


3.(可选)设置保存时自动格式化:

  • .spacemacs按.打开您的配置文件<SPC> <f> <e> <d>

  • 找到dotspacemacs/user-config它的部分并在其中键入以下代码段:

    (defun dotspacemacs/user-config () (add-hook 'js2-mode-hook 'prettier-js-mode) (add-hook 'web-mode-hook 'prettier-js-mode) )

  • 按保存设置的更改<SPC> <f> <s>

  • 通过按重新加载保存的设置<SPC> <f> <e> <R>

于 2018-07-16T08:39:17.743 回答
6

从提交9d2a108开始,Spacemacs 带有一个层,增加了对 Prettier 的支持。如果您正在使用developSpacemacs 的分支,或者您将来正在阅读本文并且正在使用 0.300 版或更新的版本,您现在就可以使用它。

要使用它,只需prettier在 指定的层列表中添加一个层dotspacemacs-configuration-layers。此外,您应该启用 Prettier 作为您想要使用 Prettier 的语言的层的格式化程序。如何做到这一点记录在特定的层中。对于 JavaScript,您应该将以下内容添加到您的dotspacemacs/user-init.

(setq javascript-fmt-tool 'prettier)

通过上述配置,JavaScript 层将使用 Prettier 来格式化 JavaScript 文件。

于 2018-08-31T11:05:22.967 回答
4

prettier-js 包现在在 melpa 上进行安装,将 prettier-js 添加到你的 spacemacs 文件中的 dotspacemacs-additional-packages 中。

于 2017-03-29T14:27:46.387 回答