カテゴリー: Emacs

  • YaTeXからSumatraPDFを起動

    (setq dvi2-command "rundll32 shell32,ShellExec_RunDLL SumatraPDF -reuse-instance")

    で起動しなくなったためメモ。

    1. (パスを切っていなくても)起動していた理由は恐らくSumatraPDFが HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths に登録されていたため
    2. rundll32は実行プロキシとして悪用されることもある。App Pathsにあるプログラムをパスなしで実行可能
    3. -reuse-instanceはSumatraPDFのオプション(公式ドキュメント)
    4. フルパスで指定し -reuse-instance をつければ十分である
    (setq dvi2-command "\"C:\\Program Files\\SumatraPDF\\SumatraPDF.exe\" -reuse-instance")
  • Doom Emacsを試す

    X410でキーボードが合っていなかったため
    https://x410.dev/cookbook/keyboard-layout/

    Doom Emacsは.emacsのディストリであると考えて良い。インストールの前提となる rg と fd をインストールしておく。

    sudo apt install ripgrep fd-find

    この後は公式ドキュメントの通り。

    nano .doom.d/init.el

    twitter をコメントアウト。OAuthのパスフレーズを保存してくれるようになっている。使い方はこちらを見てね。

  • YaTeXでタイプセットできない?

    キモは exec-path だった。
    パスが通っていない感じのエラーになる時は eshell に入って、PATH と確認すべし!区切りのセミコロン入っていますか?
    (setq exec-path (append exec-path ‘(“C:/Program Files/cmigemo”)))
    (setenv “PATH” (concat “C:/Program Files/cmigemo;” (getenv “PATH”)))

    広瀬さんありがとうございました!

  • Windowsでシンボリックリンク

    WSLで configure; make; make install したい場合、Windows の “Program Files”が障壁になる場合がある。そういう場合にシンボリックリンクで解決する。

    (さらに…)
  • Windows + Emacs + hunspell

    ; pacman -S mingw-w64-x86_64-hunspell
    ; pacman -S mingw-w64-x86_64-hunspell-en
    (add-to-list ‘exec-path “C:/msys64/mingw64/bin”)
    (setq ispell-program-name “hunspell”)
    (setenv “DICTIONARY” “en_US”)
    (setq ispell-really-hunspell t) ; hunspellの拡張を使う
    (require ‘ispell)

  • C/Migemoのインストール2016

    ローマ字でi-searchができるようになる。migemo.elはMELPAに登録されているので必要な作業はバックエンドのC/Migemoだけである。

    1. http://www.kaoriya.net/software/cmigemo/ からバイナリをダウンロードしパスの通った場所(下の例では C:/Program Files/cmigemo/)に展開
    2. MELPAからmigemo.elをダウンロード&インストール
    3. inits/windows-migemo.elを以下のように設定

      [code](require ‘migemo)
      (setq migemo-command "cmigemo")
      (setq migemo-options ‘("-q" "–emacs" "-i" "\a"))

      (setq migemo-dictionary (expand-file-name "C:/Program Files/cmigemo/dict/utf-8/migemo-dict"))

      (setq migemo-user-dictionary nil)
      (setq migemo-regex-dictionary nil)
      (setq migemo-coding-system ‘utf-8-unix)
      ;(setq migemo-use-pattern-alist t)
      ;(setq migemo-use-frequent-pattern-alist t)
      ;(setq migemo-pattern-alist-length 1000)
      (load-library "migemo")
      (migemo-init)

      [/code]

  • grammar.el で英文法チェック

    elそのものは2010年で開発が止まっているが、英語力を向上させたいのでまずはEmacsからはじめたを見かけインストールしてみた。Linux Mint 17.3 で確認。

    前提となるライブラリなどのインストール

    [code]
    sudo aptitude install liblink-grammar4-dev link-grammar
    [/code]

    grammar.el のダウンロード

    [code]
    svn co http://bcui-emacs.googlecode.com/svn/trunk/grammar
    [/code]

    grammar の make とインストール

    [code]
    cd grammar
    clang++ -O2 -llink-grammar -I/usr/include/link-grammar grammar.cc -o grammar
    sudo cp grammar /usr/local/bin/
    sudo cp grammar.el /usr/share/emacs/site-lisp/
    [/code]

    init.el などに以下を追加

    [code]
    ;; grammar checker
    (require ‘grammar)
    (setq grammar-program-name "/usr/local/bin/grammar")
    [/code]

    参考記事

  • Emacs24.5 新しいフレームでフォントが違うのを修正

    環境はEmacs 24.5, Windows10である。init frameをメイリオで設定しているのだが、C-x 5-2で新しいフレームを開くとこんな風になる…。

    frame-fonr-emacs24.5
    フレームごとにフォントが番う例

    そこで、MewやFiremacsで余りに有名な山本和彦さんの記事を参考に修正!山本さんありがとうございます。

    [code];; C-x 5 2 で新しいフレームを作ったときに同じフォントを使う
    (setq frame-inherited-parameters ‘(font tool-bar-lines))
    [/code]

  • Emacs 24.5 で「作業ディレクトリ」を指定すると

    過去の記事でまとめた通り、Windows8でEmacsを起動するショートカットに「%USERPROFILE%」を設定すると、find-file (C-x C-f でファイルを開く)でUNIXで言うところのホームディレクトリからスタートできた。4/11にリリースされたEmacs24.5では以下のようになり正常に起動できないことを3台のWindows8.1で確認。

    • 作業ディレクトリをデフォルトの、「C:\Program Files\emacs\bin」などrunemacs.exe があるディレクトリにする
    • find-file のデフォルトディレクトリは別途設定(参考)

      [code](setq command-line-default-directory "~/")[/code]

    Emacs24.5 init Error
    2016.6.6追記

    initを綺麗にしたらWindows10で起動できないという事象は発生しないことを確認。