Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
8
Help us understand the problem. What is going on with this article?
@fireflower0

lemの設定についてメモ書き

More than 3 years have passed since last update.

はじめに

CommonLispで作られたエディタのlemの設定について、調べたことをメモ書きしていきます。
lemは以下から取得できます。

.lemrcファイル

ホームディレクトリに「.lemrc」というファイルを作成し、先頭に以下のコードを記載します。

.lemrc
(in-package :lem-user)

キーバインド

キーバインドを登録する場合は以下のように記載。

.lemrc
(define-key *global-keymap* "押下するキー" '実行される機能)

例) Undo機能のキーバインド

.lemrc
(define-key *global-keymap* "C-x u" 'undo)

シンタックスハイライト

既にあるテーマを使う場合は以下のように記載。

.lemrc
(load-theme "テーマ名")

例) 「emacs-dark」を使うには以下のコードを追記。

.lemrc
(load-theme "emacs-dark")

自分でテーマを作成する場合は以下のように記載。

.lemrc
(define-color-theme "テーマ名" ("親テーマ名")
  (foreground "色値")                                           ; 前景色
  (background "色値")                                           ; 背景色
  (cursor :foreground "色値" :background "色値")                 ; カーソル色
  (minibuffer-prompt-attribute :foreground "色値" :bold-p t)    ; ミニバッファ色(太字)
  (syntax-string-attribute     :foreground "色値" :bold-p t)    ; 文字列色(太字)
  (syntax-comment-attribute    :foreground "色値")              ; コメント色
  (syntax-keyword-attribute    :foreground "色値" :bold-p t)    ; キーワード色(太字)
  (syntax-constant-attribute   :foreground "色値")              ; 定数色
  (syntax-function-name-attribute :foreground "色値" :bold-p t) ; 関数色(太字)
  (syntax-variable-attribute   :foreground "色値"))             ; 変数色

;; テーマをロード
(load-theme "テーマ名")

例) かなり適当に作成。

.lemrc
(define-color-theme "my-theme" ("emacs-dark")
  (foreground "#FFFFFF")                                        ; 前景色
  (background "#000000")                                        ; 背景色
  (cursor :foreground "#222222" :background "#dddddd")          ; カーソル色
  (minibuffer-prompt-attribute :foreground "red" :bold-p t)     ; ミニバッファ色(太字)
  (syntax-string-attribute     :foreground "green" :bold-p t)   ; 文字列色(太字)
  (syntax-comment-attribute    :foreground "blue")              ; コメント色
  (syntax-keyword-attribute    :foreground "orange" :bold-p t)  ; キーワード色
  (syntax-constant-attribute   :foreground "cyan")              ; 定数色
  (syntax-function-name-attribute :foreground "blue" :bold-p t) ; 関数色
  (syntax-variable-attribute   :foreground "red"))              ; 変数色

;; テーマをロード
(load-theme "my-theme")

こんな感じになりました。

Screenshot from 2018-01-27 22-21-17.png

この他にも設定が多々あります。
色々探して試してみるのも面白いかもしれません。

行番号表示

行番号を表示する場合は以下のコードを追記します。

.lemrc
(setf (variable-value 'lem.line-numbers:line-numbers :global) t)

最後に

とりあえず、自分がわかっている範囲で適当に記載していきました。
間違ってたり、他にもこんなことできるよ、とかあったら教えてくれると嬉しいです。

8
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
8
Help us understand the problem. What is going on with this article?