|
Window 7
Windows 10
設定
Windows 11
|
Windows 10設定Windows 10 の設定に関するメモです. 目次環境設定デスクトップタスクバーの幅を狭くタスクバーの幅が広くて,間抜けに見える.そこで,その幅を修正する.
Keyhac の設定Windows と UNIX 系のショートカットキーはまったく異なっています.UNIX 系 OS をメインに使っているユーザーにとって,Windows は使いにくいものです.UNIX 系の OS は Emacs 風のショートカットになっている場合が多く.一部のユーザーは Windows のショートカットを Eamcs (or Unix) 風に変えたいでしょう.その希望は,「Keyhac」で叶えることができます.Widows で Keyhac を動作させると,さまざまな Windows アプリケーションで Emacs 風のショートカットキーが使えるようになります. インストールkeyhac のインストール方法は以下のとおりです.
アプリケーション設定が必要なアプリケーションを説明します. EMACS昔から,Emacs をエディターとして使っています.Ubuntu で使うことが多かったのですが,Windows でも使うことも増えました.そこで,Ubuntu と同じように使えるように設定します. インストールWindows 版の Emacs(もどき?) には,いくつかあります.大きな理由はありませんが,そのなかで NTEmacs を,私はつかっています.そのインストール方法示します.
設定emacs の設定は,ファイル「init.el」に記載します.私の例(init.el)を以下に示します. ;; ================================================================
;; いろいろな設定
;; ================================================================
(global-set-key [delete] 'delete-char)
(global-set-key [kp-delete] 'delete-char)
(global-font-lock-mode t) ;; 文字装飾(カラー強調)
(setq-default transient-mark-mode t) ;; リージョンのハイライト
(setq require-final-newline t) ;; 最後に改行を追加
;; stop at the end of the file, not just add lines
(setq next-line-add-newlines nil)
(when window-system
(mwheel-install) ;; enable wheelmouse support by default
;; use extended compound-text coding for X clipboard
(set-selection-coding-system 'compound-text-with-extensions)
)
(global-set-key [(ctrl z)] 'undo) ;; undo の設定
;; 起動時の画面を非表示にする
(setq inhibit-startup-message t)
;; load pathの追加
(setq load-path (append (list
(expand-file-name "C:/Program Files/Emacs/emacs-28.2/share/emacs/28.2/site-lisp")
)
load-path))
(setq load-path (append (list
(expand-file-name "C:/Users/yamamoto/AppData/Roaming/.emacs.d/site-lisp")
)
load-path))
(setq load-path (append (list
(expand-file-name "C:/Users/yamamoto/AppData/Roaming/.emacs.d/site-lisp/yatex")
)
load-path))
;; =====================================================================
;; WindowsキーをMetaキーにする
;; =====================================================================
(setq w32-pass-lwindow-to-system nil)
(setq w32-lwindow-modifier 'Meta)
(setq w32-pass-rwindow-to-system nil)
(setq w32-rwindow-modifier 'Meta)
;; ----------------------------------------------------------------
;; 日本語の設定
;; https://utsuboiwa.blogspot.com/2014/07/sunnyside-emacs.html
;; -----------------------------------------------------------------
(set-language-environment "Japanese")
(prefer-coding-system 'utf-8)
(set-default-coding-systems 'utf-8)
(set-terminal-coding-system 'utf-8)
(set-keyboard-coding-system 'utf-8)
(set-buffer-file-coding-system 'utf-8)
(setq default-buffer-file-coding-system 'utf-8)
(set-buffer-file-coding-system 'utf-8)
(set-clipboard-coding-system 'shift_jis)
;; ----------------------------------------------------------------
;; 全角の空白を分かり易く
;; http://www2.hyo-med.ac.jp/~tanimura/Ubuntu/UbuntuTrusty.html#sec17
;; -----------------------------------------------------------------
(require 'whitespace)
(cond (window-system
(setq whitespace-style ;; キャラクターの登録
'(face ;; face で可視化
;; spaces ;; 空白
;; newline ;; 改行
space-mark ;; 表示のマッピング
newline-mark ;; 改行のマッピング
))
(setq whitespace-space-regexp "\\( +\\|\u3000+\\)")
(setq whitespace-display-mappings
'(
(space-mark ?\u3000 [?\u25a1]) ;; 全角空白 に
))
(global-whitespace-mode 1)
(set-face-attribute 'whitespace-space nil
:background "white"
:foreground "gray80"
:underline t)
))
;; ================================================================
;; モードの設定
;; ================================================================
(setq auto-mode-alist
(append
'(
("\\.h$" . c++-mode)
("\\.txt$" . text-mode)
("\\.tex$" . yatex-mode)
("\\.sty$" . yatex-mode)
("\\.html$" . web-mode)
("\\.htm$" . web-mode)
("\\.php$" . web-mode)
) auto-mode-alist
)
)
;==========================================================
; web-modeの設定
; 参考: http://yanmoo.blogspot.jp/2013/06/html5web-mode.html
;;==========================================================
(require 'web-mode)
(defun web-mode-hook ()
"Hooks for Web mode."
;; 変更日時の自動修正
(setq time-stamp-line-limit -200)
(if (not (memq 'time-stamp write-file-hooks))
(setq write-file-hooks
(cons 'time-stamp write-file-hooks)))
(setq time-stamp-format " %3a %3b %02d %02H:%02M:%02S %:y %Z")
(setq time-stamp-start "Last modified:")
(setq time-stamp-end "$")
;; web-modeの設定
(setq web-mode-pre-elements nil) ;; content inside <code>,<pre>,<textarea> is not indented any more
(setq web-mode-markup-indent-offset 2) ;; html indent
(setq web-mode-css-indent-offset 2) ;; css indent
(setq web-mode-code-indent-offset 2) ;; script indent(js,php,etc..)
(setq web-mode-comment-style 2)
)
(add-hook 'web-mode-hook 'web-mode-hook)
;; 色の設定
(custom-set-faces
'(web-mode-doctype-face
((t (:foreground "#82AE46")))) ; doctype
'(web-mode-html-tag-face
((t (:foreground "#E6B422" :weight bold)))) ; 要素名
'(web-mode-html-attr-name-face
((t (:foreground "#CCFF00")))) ; 属性名など
'(web-mode-html-attr-value-face
((t (:foreground "#87ceeb")))) ; 属性値
'(web-mode-comment-face
((t (:foreground "#FF7F50")))) ; コメント
'(web-mode-server-comment-face
((t (:foreground "#FF7F50")))) ; コメント
'(web-mode-css-rule-face
((t (:foreground "#A0D8EF")))) ; cssのタグ
'(web-mode-css-pseudo-class-face
((t (:foreground "#FF7F00")))) ; css 疑似クラス
'(web-mode-css-at-rule-face
((t (:foreground "#FF7F00")))) ; cssのタグ
)
;================================================================
; color設定
;================================================================
(setq default-frame-alist
(append
(list
'(mouse-color . "red");
'(foreground-color . "bisque1") ;; 文字の色
'(background-color . "dark slate gray") ; 背景の色
'(width . 100) ;; ウインドウの幅
'(height . 40) ;; ウインドウの高さ
'(top . 0) ;; ウインドウ上端の位置
'(left . 5) ;; ウインドウ左端の位置
'(vertical-scroll-bars . t) ;; スクロールバーを出す
)
default-frame-alist)
)
;; =====================================================================
;; カーソルの種類
;; =====================================================================
(setq default-frame-alist
(append '(
(cursor-color . "GreenYellow") ;; 色
(cursor-type . (bar . 2)) ;; 形
)
default-frame-alist)
)
;=====================================================================
; modeline に行数と桁数を表示
;=====================================================================
(line-number-mode t)
(column-number-mode t)
;; =================================================================
;; 全てのバックアップファイルを/tmp以下に保存する。
;; http://satosan.jp/CustomizeEmacs.html
;; =================================================================
(defun make-backup-file-name (filename)
(expand-file-name
(concat "/tmp/" (file-name-nondirectory filename) "~")
(file-name-directory filename)))
;; =====================================================================
;; 辞書の設定
;; =====================================================================
(setq ispell-dictionary "US-xlg")
;=====================================================================
; #filename というバックアップファイルを作らない
;=====================================================================
(setq make-backup-files nil)
;=====================================================================
; ツールバーの設定
;=====================================================================
(tool-bar-mode -1) ;M-x tool-bar-mode で表示非表示を切り替え
;; =====================================================================
;; カーソルの位置から行頭まで削除する
;; http://d.hatena.ne.jp/ama-ch/20090114/1231918903
;; =====================================================================
(defun backward-kill-line (arg)
"Kill chars backward until encountering the end of a line."
(interactive "p")
(kill-line 0))
;; C-S-k に設定
(global-set-key (kbd "C-S-k") 'backward-kill-line)
;; =====================================================================
;; YaTeX-mode
;; =====================================================================
(setq auto-mode-alist (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist))
(autoload 'yatex-mode "yatex" "Yet Another LaTeX mode" t)
(setq load-path (cons "C:/Users/yamamoto/AppData/Roaming/.emacs.d/yatex" load-path)) ;; ytex のパス
(setq tex-command "platex")
(setq bibtex-command "C:/texlive/2023/bin/windows/pbibtex") ; BibTeX コマンド
;=====================================================================
; edit-server の設定
;=====================================================================
(require 'edit-server)
(edit-server-start)
;====================================================================
; MELPA リポジトリからプラグインをダウンロード
; https://blog.515hikaru.net/entry/2015/11/10/000000
;;; Package.el config
;====================================================================
(require 'package)
(add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t)
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))
(package-initialize)
元々,Linux の emacs で使っていたファイルを書き直したもので,かなりデタラメです. Happy Hacking Keyboard の設定私は,Happy Hacking Keyboard (HHKB) の Professional 2 (Type-S, 英語) を使っています.そのままの設定でほとんど問題ないですが,Emacs を使うとき,◇ (ダイアモンドマーク) が Meta キーとしては動作しないことが不満でした. 英語キーボード設定英語キーボードは,容易に設定可能です.具体的な手順は,以下のとおりです.
以上で設定は完了です.ダイアログを消し PC を再起動すれば,英語キーボードのレイアウトが反映されます. Emacs 用にメタキーの設定HHKB の Emacs の ◇ (ダイアモンドマーク) が Meta キーに設定します.やりたいことは,HHKB のダイアモンドマークを windows キーに設定し,Emacs の時のみ,この windows キーを Meta キーにします.ただ,これがそう簡単でなことがわかりました.ネットを検索すると,windows キーを Meta キーに設定するためには,init.el では不可能とのことです.windows キーは低レベルで動作するために,Emacs では如何ともしがたいようです.AutoHotKey を使うと何とかなるかも. そこで,次善の策として HHKB のディップスイッチの設定で,ダイアモンドマークを Meta キーの代わりに使うことにします.具体的には,以下の通りの設定を行いました.
このように設定することにより,キーボードのは Windows キー,は Alt キーとして動作します.Windows の Emacs では Meta キーは Alt なので,を押すことで Meta として動作します.Windows キーを使うためには,を押すことになります. その他の設定
ページ作成情報参考資料更新履歴
|