2024-03-19 15:23:58 +09:00
|
|
|
;; init.el - part of dotfiles
|
|
|
|
;; https://git.kinoshita-lab.org/kazbo/dotfiles
|
|
|
|
|
2024-03-19 15:48:11 +09:00
|
|
|
;; !!!!!
|
|
|
|
;; IMPORTANT
|
|
|
|
;; use "M-x use-package packagename" instead of "M-x package-install" as well as possible
|
|
|
|
;; !!!!!
|
|
|
|
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
;; META Setup(setup package system, use-package, straight)
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
;; configure package
|
|
|
|
(require 'package)
|
|
|
|
(eval-and-compile
|
|
|
|
(when (or load-file-name byte-compile-current-file)
|
|
|
|
(setq user-emacs-directory
|
|
|
|
(expand-file-name
|
|
|
|
(file-name-directory (or load-file-name byte-compile-current-file))))))
|
|
|
|
(setq package-enable-at-startup nil)
|
|
|
|
|
|
|
|
(eval-and-compile
|
|
|
|
(customize-set-variable
|
|
|
|
'package-archives '(("org" . "https://orgmode.org/elpa/")
|
|
|
|
("melpa" . "https://melpa.org/packages/")
|
|
|
|
("gnu" . "https://elpa.gnu.org/packages/")))
|
|
|
|
(setq url-http-attempt-keepalives nil)
|
|
|
|
(package-initialize))
|
|
|
|
|
|
|
|
;; install use-package if not
|
|
|
|
(dolist (package '(use-package))
|
|
|
|
(unless (package-installed-p package)
|
|
|
|
(package-install package)))
|
|
|
|
|
2024-03-19 15:23:58 +09:00
|
|
|
;; setup strait
|
|
|
|
;; cf. https://github.com/radian-software/straight.el
|
|
|
|
(defvar bootstrap-version)
|
|
|
|
(let ((bootstrap-file
|
|
|
|
(expand-file-name
|
|
|
|
"straight/repos/straight.el/bootstrap.el"
|
|
|
|
(or (bound-and-true-p straight-base-dir)
|
|
|
|
user-emacs-directory)))
|
|
|
|
(bootstrap-version 7))
|
|
|
|
(unless (file-exists-p bootstrap-file)
|
|
|
|
(with-current-buffer
|
|
|
|
(url-retrieve-synchronously
|
|
|
|
"https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el"
|
|
|
|
'silent 'inhibit-cookies)
|
|
|
|
(goto-char (point-max))
|
|
|
|
(eval-print-last-sexp)))
|
|
|
|
(load bootstrap-file nil 'nomessage))
|
|
|
|
|
2024-03-19 15:48:11 +09:00
|
|
|
;; integrate use-package/strait
|
2024-03-19 15:23:58 +09:00
|
|
|
(straight-use-package 'use-package)
|
|
|
|
(setq straight-use-package-by-default t)
|
2024-03-19 15:48:11 +09:00
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
;; Actual Setup
|
|
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
|
|
(use-package bind-key
|
|
|
|
:ensure t)
|
|
|
|
;; tmp settings for edit
|
|
|
|
(set-language-environment "Japanese")
|
|
|
|
(prefer-coding-system 'utf-8)
|
|
|
|
(setq system-time-locale "C")
|
|
|
|
(setq inhibit-startup-message t) ;; remove beautiful opening screen
|
|
|
|
(setq initial-scratch-message "") ;; scratchの初期メッセージ消去
|
|
|
|
(global-display-line-numbers-mode)
|
|
|
|
;; タイトルバーにファイルのフルパス表示
|
|
|
|
(setq frame-title-format
|
|
|
|
(format "%%f - Emacs@%s" (system-name)))
|
|
|
|
|
|
|
|
(setq gc-cons-threshold (* 10 gc-cons-threshold))
|
|
|
|
(setq message-log-max 10000)
|
|
|
|
(setq enable-recursive-minibuffers t)
|
|
|
|
(setq use-dialog-box 0)
|
|
|
|
(defalias 'message-box 'message)
|
|
|
|
(setq history-length 1000)
|
|
|
|
(setq echo-keystrokes 0.1)
|
|
|
|
(setq large-file-warning-threshold (* 25 1024 1024))
|
|
|
|
(defadvice abort-recursive-edit (before minibuffer-save activate)
|
|
|
|
(when (eq (selected-window) (active-minibuffer-window))
|
|
|
|
(add-to-history minibuffer-history-variable (minibuffer-contents))))
|
|
|
|
(defalias 'yes-or-no-p 'y-or-n-p)
|
|
|
|
|
|
|
|
;; 1行ずつスクロール
|
|
|
|
(setq scroll-conservatively 35
|
|
|
|
scroll-margin 0
|
|
|
|
scroll-step 5)
|
|
|
|
|
|
|
|
(setq scroll-conservatively 1)
|
|
|
|
(setq scroll-margin 10)
|
|
|
|
(setq scroll-preserve-screen-position t)
|
|
|
|
(setq next-screen-context-lines 5)
|
|
|
|
;; マウスホイールによるスクロール時の行数
|
|
|
|
;; Shift 少なめ、 Ctrl 多めに移動
|
|
|
|
(setq mouse-wheel-scroll-amount
|
|
|
|
'(5 ; 通常 (デフォルト 5)
|
|
|
|
((shift) . 1) ; Shift (デフォルト 1)
|
|
|
|
((control) . 40) ; Ctrl (デフォルト nil = 無効)
|
|
|
|
))
|
|
|
|
;; スクロールバーいらない
|
|
|
|
(scroll-bar-mode -1)
|
|
|
|
;; mode bar の設定
|
|
|
|
(line-number-mode)
|
|
|
|
(column-number-mode)
|
|
|
|
(transient-mark-mode 1)
|
|
|
|
(blink-cursor-mode 0) ;;; カーソルの点滅を止める
|
|
|
|
(tool-bar-mode 0) ;;; toolbarいらない
|
|
|
|
(setq-default tab-width 4 indent-tabs-mode nil) ;; tab = 4 spaces
|
2024-03-19 15:23:58 +09:00
|
|
|
|
2024-03-19 15:48:11 +09:00
|
|
|
(ffap-bindings) ;; ffap カーソル位置のファイルを開こうとする
|
|
|
|
(setq completion-ignore-case t) ;; file名の補完で大文字小文字を区別しない
|
|
|
|
(global-auto-revert-mode t) ;; バッファ自動再読み
|
|
|
|
(require 'bind-key)
|
|
|
|
(bind-key "C-t" 'other-window global-map)
|
|
|
|
(bind-key "C-h" 'delete-backward-char global-map)
|