Emacs Part 51
■ このスレッドは過去ログ倉庫に格納されています
>>267 ありがとうございます electric-indent-mode 自体初めて知りましたが、これをマイナス1にしても auctex では auto-fill-mode になります toggle-truncate-lines と新機能の (setq auto-hscroll-mode 'current-line) の組み合わせいいね joveだかmicro emacsであったの思い出した >>268 このサイトの内容が参考にならないかな? Emacs の auto-fill-mode の挙動を抑える http://biwakonbu.com/?p=581 >el-get でインストールした skk-mode のデフォルト設定が悪さをしていました。 >>270 ありがとうございます。 skk は使用しているのですが、ここで言われていることはやっています。 また、英語ドキュメントでも同じように auto-fill-mode が動きます。 >>271 とにかく auto-fill-mode を off にしたいのなら user-config に (spacemacs/toggle-auto-fill-mode-off) を追記ではどうかな? SPC t F で on/off の切り替えができるみたい NTEmacsでorg-modeで画像のインライン表示の設定をしたんだけど、画面がちらつく。どうしたらいいかな? >>274 そうしたいのはやまやま何ですが、MS-ACCESSが業務の根幹でして、そのドキュメントやらを作成したり、VBEの代替を目標にNTEmacsを導入した経緯がありまして… >>272 ありがとうございます。 現状はそれで対応しています。 ただ、なぜこうなっているのか全く分からないので質問させていただきました。 こちらの方でもう少し調査し、なにか分かったら報告いたします。 >>276 Spacemacs ではデフォルトで (spacemacs/toggle-auto-fill-mode-on) になっているだけなんじゃない? gnupackに入ってるemacsってcygwinのやつ? >>278 Windows 環境で動作するのではなく擬似 Linux 環境で動作するかどうかという質問なら確か Windows 環境でそのまま動作するんじゃなかったっけ? >>278 すまん嘘言った(´・ω・`) https://ja.osdn.net/projects/gnupack/ emacs と cygwin を導入できるって書いてあったから cygwin のやつなんじゃないかな? >>278 スレ違いのような気もするが、12.00からCygwin版になった。遅いよ。 mingw版がNTEmacsということになるのかな。 パフォーマンスの問題はあるけど、アプリ一般の動作としてはcygwinの方が良かったりするよね。 org-modeのTODOでclock-inを使用しないで,clock-outだけ使いたい場合はそのような機能はありますか? 終了日時の記録のみ欲しくて経過時間は不要という場合はどうしたいいのでしょうか? >>285 org-clockを使わないで素のorg-modeを使うんじゃダメ? >>285 TODO -> DONE で終了時刻付くよ >>286 それでいいですね。しかしながら >>287 さんのおっしゃるとおりTODO -> DONEで記録が自動的に出来るならそれがベストですね。 で、試してみましたが、終了時刻が付与されませんね。なにか設定が必要なのでしょうか 知恵を貸してほしい。 next-logical-line で next-line のようにカーソルの位置を維持するには どうしたらいいだろう? next-logical-line は 空行に一度行くと、そのまま行頭を移動するようになる。 よろしくお願いします。 そりゃ空行は行頭しかないんだから,そこに移動したら行頭になる。 空行に移動したときにスペース連打して位置をキープさせたいってこと? next-lineだと開始したポジションを維持するよね。 それをlogicalの方でも実現したい。 temporary-goal-column という変数が関係しているようだ。継続調査中。 next-logical-line が桁位置を保持しないのはなんだかバグっぽい気がするけど、どうなんだろう とりあえず lisp/simple.el の line-move-1 の6353行目 https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/simple.el?id=e1646e1e2864#n6353 (if (not (memq last-command '(next-line previous-line))) ここを (if (not (memq last-command '(next-line previous-line next-logical-line previous-logical-line))) に変えてみるとそれっぽくはなる こんなのも見つけた こっちはより一層バグっぽい感じ abcdef abcdef 1行目の、たとえば c の上にカーソルを置いて M-x next-logical-line すると 2行目の c に移動する そこで C-p で1行目の c に戻り、もう一度 M-x next-logical-line すると 今度は2行目の先頭に移動する Emacs 24では再現しない また M-x … ではなく、global-set-key でキーに割り当てた next-logical-line でも再現しない この現象は (setq line-move-visual nil) した状態なら、M-x next-line でも再現する multiple-cursorsがnext-logical-lineを使っていてカーソルがずれるのをなんとか しようとしている。以前は以下の設定でうまく動いていたような気がするんだが、 現在使っているemacs26.1ではカーソルがずれる時がある。やはりバージョンが 関係しているんですかね。 https://www49.atwiki.jp/ntemacs/pages/40.html >>296 FreeBSD11.2の26.1だとそれ再現しないっぽいんだが。 emacsを久しぶりに立ち上げたらinit.elにエラーがある。 と出て、emacs --debug-initで立ち上げろと出たのでそうしたら いろいろ表示されたのですが、これからどうやってdebugしたらいいのか アドバイスください >>298 何でだろう… ああわかった、多分 M-x next-logical-line の入力方法が違うからだ 私は二回目の M-x プロンプトでの入力に、上矢印キー(履歴)を使っていました 履歴を使わずコマンド名を直接タイプしたり あるいは M-p (previous-history-element) で履歴を呼び出して使った場合は、再現しません 上矢印キー (previous-line-or-history-element) で履歴を使うと再現します >>300 つまり previous-line-or-history-element に何かあるのかな と思ったけど previous-line-or-history-element が絡んでいなくても 変な位置に移動する別の手順を発見(Emacs 26.1) emacs -Q で起動 *scratch* バッファが表示される。バッファ内容は: ;; This buffer is for text that is not saved, and for Lisp evaluation. ;; To create a file, visit it with C-x C-f and enter text in its buffer. M-x column-number-mode RET (※これは位置の説明を明確にする為で症状再現とは関係ない) M-< (バッファ先頭へ移動) M-f (最初の単語 "This" 直後の空白の上へ移動。行,桁表示は 1,7) M-x n-l-l RET (二行目の b の上に移動) C-p (一行目の b の上に移動) M-x C-p (ミニバッファに "Beginning of buffer" と表示される) M-p (ミニバッファの表示が M-x next-logical-line となる) RET (二行目の最初の単語 "To" 末尾、"o" の上に移動する。行,桁表示は 2,4。 ここで期待した結果は 2,7、"create" の "r" の上) >>299 いろいろ表示されたのを見て頑張ってくださいとしかw ウチラはあんたの Emacs のバッファを見ることできないんだよ >>302 ホントそれ。 バックトレース見ればどの関数でエラー起きたかの 特定くらいは初心者でも自力でできそうな気がするので、 とりあえずそこをコメントアウトしとけば? >>299 久しぶりに emacs を立ち上げるくらい使っていないのならどうせ init.el だって大したことないと思うから ~/.emacs.d 以下全部削除すればいいんじゃない? >>301 開始位置に関係なく移動先はミニバッファの入力欄先頭位置と同じ桁になってる。 ミニバッファの入力が元のバッファの入力と同列に扱われてるね。 バグというべきかは悩む挙動… >>290 結局、interactiveに前後の論理行に移動するときに桁位置を保持したいだけなら、 next-lineでline-move-visualをnilにするだけ? ただ、next-logical-lineの挙動は必ずしも一致しないけど、 この関数を使う機会があるのかな? >>307 multiple-cursors内で使っているのです とりあえず、logical-line問題はこれで解決できるかなぁ。 (defun ad-next-logical-line (orig-fun &rest args) (if (eq last-command 'next-logical-line) (let ((last-command 'next-line)) (apply orig-fun args)) (apply orig-fun args))) (advice-add 'next-logical-line :around #'ad-next-logical-line) (defun ad-previous-logical-line (orig-fun &rest args) (if (eq last-command 'previous-logical-line) (let ((last-command 'previous-line)) (apply orig-fun args)) (apply orig-fun args))) (advice-add 'previous-logical-line :around #'ad-previous-logical-line) でも、multiple-cursors問題はさらに別なところにあることが分かった。 temporary-goal-columnが保管される仕組みがあるみたい。 mc/cursor-specific-vars変数に定義されている。 結局、multiple-cursorsは以下で直った。wikiの設定に1行目を追加しただけで した。ただ、どのような影響があるのかは分かりません..。 (delq 'temporary-goal-column mc/cursor-specific-vars) (defun mc/last-command-check () (memq last-command '(mc/mark-next-like-this mc/unmark-next-like-this mc/skip-to-next-like-this))) ;; 縦移動時にカーソル位置が維持されないのを対策する (advice-add 'mc/mark-next-like-this :around (lambda (orig-fun &rest args) (if (mc/last-command-check) (let ((last-command 'next-line)) (apply orig-fun args)) (apply orig-fun args)))) wikiに反映しました。cua-modeのように動きます。mc/cursor-specific-varsの影響は 確認できていませんが、良ければお使いください。 https://www49.atwiki.jp/ntemacs/pages/40.html electric parentheses って皆やってる? やった方が良いって思う自分と邪魔だから要らないって思う自分がせめぎ合ってるんだが 逆に使わない意味がわからない。 ddskk で設定してる emacs --debug-initでemacsを立ち上げると次のようになりました。 エラーが出るのでデバッグモードで立ち上げました。 (show-paren-match-face nil のところなのですが、最初は'#500のように書いていたのをnilにしました。 それでも下のエラーがでるのですが、どのようにすればいいか できれば教えていただけないでしょうか? Debugger entered--Lisp error: (error "Invalid face" show-paren-match-face) internal-set-lisp-face-attribute(show-paren-match-face :background unspecified 0) set-face-attribute(show-paren-match-face nil :background unspecified) set-face-background(show-paren-match-face nil) eval-buffer(#<buffer *load*> nil "/ホームディレクトリ/.emacs.d/init.el" nil t) ; Reading at buffer position 6390 load-with-code-conversion("/ホームディレクトリ/.emacs.d/init.el" "/ホームディレクトリ/.emacs.d/init.el" t t) load("/ホームディレクトリ/.emacs.d/init" t t) #f(compiled-function () #<bytecode 0x4009eced>)() command-line() normal-top-level() 解決しました。 show-paren-match-face nilを (set-face-attribute 'show-paren-match nil :background 'unspecified :underline "turquoise") にしました。 https://typeinf-memo.blogspot.com/2016/06/emacsshow-paren-match-faceremoved.html >>317 それを >>299 の時点で晒せやw ほんとどのような質問をしたら解答を得られやすいかとかまったく考えない人が増えたよね… >>319 質問していいですか?と尋ねたときに イイトモー といってもらえたら載せてたよ。謙譲したんだ >>320 ホント馬鹿だな…エラーの「内容」がわからないとそのエラーを解決することが不可能なことすら理解できないとは… それとお前のどこがへりくだってんだよw へりくだることは、エラーの解決を目標にする人間が他人に協力してもらうための情報提示を惜しむことじゃねえよ(´・ω・`) 口頭なら「質問していいですか」と聞く意味もあるけど、 不特定多数が見る掲示板ではroundtrip一回分無駄に時間を費やすだけで無意味。 出せる情報は始めから全部出して、いきなり質問すべき。 質問の書き方は以下を参照。 ttp://www.hyuki.com/writing/techask.html >>322 こういうのを読ませても理解できないバカなんだから スルーが一番 回答してくれる人達は 質問の仕方も理解してるんだよな… 質問内容を整理している間に自己解決してそうだけども >>323 おまえみたいなきもい奴にはviがお似合い >>324 横レスですまんが君には秀丸がお似合いだな 当たり前の内容が理解できないんだからわかりやすいシステムを使えばよろしい >>321 >>322 ありがとう。今度からはそうします。 秀丸か。秀丸でtex使うといいよと言ってた人、最近お亡くなりになった 【中庸はNG、右か左】 世界教師マ@トレーヤ「新時代を切開くため70億人を2つのグループに分ける」 http://rosie.5ch.net/test/read.cgi/liveplus/1534987219/l50 PCとスマホのモニターを覗いている傍観者のみなさん、腹を決めてください。 emacs で動作する peco コマンドを考えてみた。(epeco) https://github.com/smzht/wsl-utils/blob/master/epeco これはこれで便利なんだけど、入力データをすべて取り込んでからしか動作しない。 本家の peco はデータ入力途中でも絞り込みを開始できる。 この動きを epeco で実現できればさらに便利になるんだけど、なにか良いアドバイスが あれば教えてほしい。 epeco 中では helm を使っているだけど、なんとなく入力するデータを作成するコマンドを helm 側でコントロールできていないと、実現できないような気がしている。でも、epeco に 入っているデータはパイプで流れてくるものだからそれは実現できない。 shell-mode のように comint と絡めればできると思うけど、シェルスクリプトで動作 できるようにコマンドで完結させたい。 helm-recentf はキーワードを半角空白で区切って入力するとどんどん絞り込んでくれるけどそんな感じにしたいってことなのかな? それは今のバージョンでも実現できている。やりたいのは、epeco にパイプでつなげる コマンドが終了する前に helm が起動して絞り込みをできるようにしたい。 helm-build-async-source 辺りを使えばできそうなきもするんだけど、helm の知識が 足りなくてうまく行っていない。なんとなく、パイプで流れてくるストリームを非同期 で処理するのはできないのかなぁと思ったりしている。 関係ないけど昔、YaTeXのサイトに秀丸用にポートしてた人の追悼文か何か 載ってなかったっけ。 >>330 とりあえずテストコード書いてみた。 https://gist.github.com/smzht/9fdb573297bb11937a96fc94d81e001f query文字列を入れるとコマンドが再実行されることと絞り込みが効かなところ から調べてみる。 非同期バージョンの原型できた。 https://gist.github.com/smzht/0e4886b8857fe028d24388b8c70462e3 以下でテストできる。 while :; do date; sleep 1; done | epeco-test-2 さらに直したいところ。 ・migemoが不安定(現在は使わないようにしている) ・epecoが終了しても入力元のコマンドが終了していなとコマンド全体が終わらない (割り込みで終える必要がある) もう少し。 コマンド化しました。 https://github.com/smzht/wsl-utils/blob/master/epeco helm ユーザの方は良ければご利用ください。migemo は継続調査とします。 以上、おじゃましました。 Macでbrew cask install emacs-macを使用しています OSは、最新版で、APFSです dired及びwdiredで濁点や半濁点が入ったファイルを使うことができないのですが、 皆さんはどうでしょうか? 設定ファイルは、次の通り指定しています。 (require 'ucs-normalize) (prefer-coding-system 'utf-8) (setq file-name-coding-system 'utf-8-hfs) (setq locale-coding-system 'utf-8-hfs) >>342 Linux版のEmacs-25.3ではwdired-modeで問題なし Ext4で環境は全然違うから参考にならないかもしれないけど 関係ありそうな設定は以下 (require 'wdired) (set-default-coding-systems 'utf-8) (set-keyboard-coding-system 'utf-8) (set-terminal-coding-system 'utf-8) (set-buffer-file-coding-system 'utf-8) (prefer-coding-system 'utf-8) (define-key dired-mode-map "r" 'wdired-change-to-wdired-mode) (setq dired-recursive-copies 'always) (setq dired-recursive-deletes 'always) 下の4行は関係なさそうだけど >>342 >濁点や半濁点が入ったファイルを使うことができない UTF-8-MACで検索 org-modeのcode blockの言語にVisual Basicを設定したいんだけど,どうしたらいいかな? spacemacs って yasnippet は auto-completion layer でオンにできるが、肝心のスニペットってどこにあるの? .emacs.d/layers/+completion/auto-completion/local/snippets には emacs-lisp-mode しかないが、デフォルトではこんだけしかスニペットないの? 画像インライン表示とかバッファ単位での文字サイズ変更とか、GUIでしかできないこともあるけどみんなGUI使ってる? こういう機能偶に使いたいしelscreenとeshellとか使えば大体代替できるからscreen/tmux CUIから移行しようと思ったけど 複数プロジェクト同時にいじりたい時にctagsとかgtagsのタグテーブル切り替えだけ面倒で あんまりやりたくないけど複数ウィンドウ開くしかないかなーと思ってる >>348 普通に使ってる。その人の用途による部分もあるかもね。 Emacsからシェルのコマンド叩いたりもするけど、ターミナルは別に立ち上げてる。 >>346 dotspacemacs-addtional-packages に yasnippet と yasnippet-snippets を追加したら latex-mode や emace-lisp-mode で yas-describe-tables したら色々表示されたで・ω・ Debian GNU/Linuxで自分でコンパイルしたemacs-26.{1,2} を使っていますが、 GoogleのNoto fontを入れると、句読点の高さが行の真ん中まであがり、おかしいなとおもったら どうも中国語のフォントが表示されているみたいなのです。 Google Noto フォントを外すと問題なくなるのですが、そこそこきれいなフォントなので 残念です。2台のPCで同様な症状がおこりました。 Noto フォントを使っていて問題ない方の /etc の下と ~/.config/fontconfig/fonts.conf のカスタマイズをどうしているか教えていただけませんか? ちなみに手元のPCで調べてみたら次のようなことになってました。 Noto font ある場合:(face-font 'default nil ?。)の戻す値。 これでみるとnoto font のときには iso のなんちゃらをみている。 "-GOOG-Noto Serif CJK TC-normal-normal-normal-*-24-*-*-*-*-0-iso10646-1" Noto フォントをシステムから外すと、 ricty フォントを入れてる場合だが、次のフォントを見る。 "-PfEd-Ricty Diminished Discord-normal-normal-normal-*-24-*-*-*-*-0-iso10646-1" さらにricty フォント入れる前には、 "-IPA -IPAPMincho-normal-normal-normal-*-24-*-*-*-*-0-iso10646-1" を見ていたようです。 なんか言語とフォント関係のおまじないを入れないといけないのだと思いますが、それが 何かが分かりませんでした。 >>350 yasnippet は completion layer で入ってるから、yasnippet-snippet だけ入れたら色々できるようになった やっぱりデフォルトでは入ってなかったっぽいな >>347 の事情かもしれない tab じゃなくて C-バックスラッシュでスニペットが展開されることもいかにもどうでも良さそうな割当だ >>351 > "-GOOG-Noto Serif CJK TC-normal-normal-normal-*-24-*-*-*-*-0-iso10646-1" ちょっと試してみましたが、上のようにNoto ... CJK _TC_が選択されているとそうなるようです。 フォント設定で正しくNoto ... CJK _JP_を選択していれば良さそうですが。 "-adobe-Noto Sans CJK JP-normal-normal-normal-*-16-*-*-*-*-0-iso10646-1" >> 353 > ちょっと試してみましたが、上のようにNoto ... CJK _TC_が選択されているとそうなるようです。 > フォント設定で正しくNoto ... CJK _JP_を選択していれば良さそうですが。 > "-adobe-Noto Sans CJK JP-normal-normal-normal-*-16-*-*-*-*-0-iso10646-1" なるほど貴重なヒントありがとうございます。フォントいれるときに選択優先度が なんかおかしくなっているのか、あるいはフォント入れた後でなにか再度言語設定とか しないといけないのか。Debian GNU/Linux のtesting repository を種々の事情で使っているので フォントパッケージの設定のバグかもしれません。 もう少し自分で調べてみます。 >>354 Emacs側でフォントの設定を何もしていないということでしょうか? emacs -Qで起動して*scratch*バッファで次の式を評価(行末でCtrl+j)するだけで 正しく設定されませんか? (set-frame-font "Noto Sans CJK JP-12") 句読点の位置がおかしくなる問題が解決しました。 背景:手元の状況を説明すると、ずいぶん昔にNoto フォントを入れたときには問題なかったような気がするのです。 そのときには~/.emacsの変更も特にしてなかったような気がするのですが、自信がありません。 そのあと、Debian GNU/Linux そのもののバージョンアップ、Emacs のバージョンアップを するうちにここ1年半くらいのどこかで句読点がずれたような気がするのですが、 正確な時期とトリガーになったきっかけを覚えてないのです。 今回おかしくなったのを直そうとどこぞのブログで見かけた次の行を~/.emacs にいれたのですが、これは 駄目でした。最後にfc-list の抜粋みせますが、よく見ると手元のDebian GNU/Linux では名前がマッチしてない。 apt-get install fonts-notoでnoto フォントいれてます。だから有効ではなかったと。 ;;; Noto font が句点を中国文字の場所で表示するのを防ぐ。 ;;; ;;; これだけでは駄目。結局フォントを削除する必要あり。 ;;; => なぜかというと: だって名前マッチしてないんだもん。 ;;;(set-fontset-font "fontset-default" 'japanese-jisx0208 '("Noto Sans CJK JP Medium" . "iso10646-1")) ;;; (試したときにはコメントではなく手、有効なelisp の文でした。) で、今は次のようにしてNoto Serif CJK JP にマッチしています。 ;;; works. Serif を使う。細い字体。 (set-fontset-font "fontset-default" 'japanese-jisx0208 '("Noto Serif CJK JP" . "iso10646-1")) ;;; works. Sans を使う Regular入れても入れなくても太い? ;;; (set-fontset-font "fontset-default" 'japanese-jisx0208 '("Noto Sans CJK JP Regular" . "iso10646-1")) これでとりあえず句読点の位置は日本語の想定する場所になりました。 (face-font 'default nil ?。) は "-GOOG-Noto Serif CJK JP-normal-normal-normal-*-24-*-*-*-*-0-iso10646-1" を返しています。 長いので、fc-listの一部リストは次の投稿にします。 Debian GNU/Linuxで apt-get install fonts-noto でNoto fontを入れたあと. CJK関係のNoto フォントは以下の通り。 fc-list | grep -i "noto " | grep -i cjk 出力は長いのでこちらに投稿しました: https://pastebin.com/yV19HCBA 御覧のようにMediumというような名前のものはないので、正しくマッチする名前を 設定することでとりあえずJPフォントが選ばれるようになりました。 例: (set-fontset-font "fontset-default" 'japanese-jisx0208 '("Noto Serif CJK JP" . "iso10646-1")) なんで昔一時期何も設定しなくても、一見うまく表示されていた(ような気がしたのです)のは不思議。 .../NotoSansCJK-Regular.ttc: Noto Sans CJK SC,Noto Sans CJK SC Regular:style=Regular .../NotoSansCJK-Regular.ttc: Noto Sans CJK TC,Noto Sans CJK TC Regular:style=Regular .../NotoSansCJK-Regular.ttc: Noto Sans Mono CJK TC,Noto Sans Mono CJK TC Regular:style=Regular .../NotoSansCJK-Regular.ttc: Noto Sans Mono CJK SC,Noto Sans Mono CJK SC Regular:style=Regular .../NotoSansCJK-Bold.ttc: Noto Sans CJK KR,Noto Sans CJK KR Bold:style=Bold,Regular >> 357 > なんで昔一時期何も設定しなくても、一見うまく表示されていた(ような気がしたのです)のは不思議。 > .../NotoSansCJK-Regular.ttc: Noto Sans CJK SC,Noto Sans CJK SC Regular:style=Regular > ... 略 最後の行はコピー&ペーストのミスでした。 _| ̄|○ ガクッ >> 355 > emacs -Qで起動して*scratch*バッファで次の式を評価(行末でCtrl+j)するだけで 正しく設定されませんか? > > (set-frame-font "Noto Sans CJK JP-12") なんと、これでもうまくいくことを確認しました。(サイズが想定していたものと少し違うのですが。) ですが、これではっきりしたことがあります。 emacs -Q はinit file (site-specificなものも含め)、とXのリソースの処理をしないのですが、 これで起動した直後にすでに句読点の位置は正しくなっていました。 そのときに (face-font 'default nil ?。) は次をもどしました。(先日と違うPCなんで非常に恐縮なんですが、 今別の場所で使っているDebian GNU/Linuxです。)。 "-PfEd-HanaMinA-normal-normal-normal-*-15-*-*-*-d-0-iso10646-1" そのあとで、次を実行すると、いきなり全体のフレームが縦に伸びて長くなります。多分フォントサイズと 選ばれたフォントの行間スペーシングが大きいのではないかとおもいました。 (set-frame-font "Noto Sans CJK JP-12") この状態で(face-font 'default nil ?。) をすると、 "-GOOG-Noto Sans CJK JP-normal-normal-normal-*-16-*-*-*-*-0-iso10646-1" となりました。 -Qが X リソースを処理しないというところが味噌のような気がします。 私は、Emacsが起動するときに24ピクセルサイズのフォントを使うようにフォントセットを X リソースを作って、それを起動の際に exec $HOME/repos/emacs-26.1/src/emacs --font fontset-24 $* という形で指定したたのです。、今 ちなみに emacs -q でinit file 処理しないけども、X resourcesを処理するモードで起動してみた結果を次に投稿します。 (ちなみにemacs -Q --font fontset-24 はXresource を処理してないので --font の処理でエラーになります。emacs -Q だとだいじょうぶでした。) 今 emacs -q --font fontset-24 で起動してみます(init file は処理しない が、X resourcesは処理する。fontset-24 はリソースで定義している。) まず私の.Xdefaults .Xresources をXの環境にマージしてない状態での挙動を報告 します。これをマージしている普段の状況でどうなるかは更に次に投稿します。 ちゃんとスプラッシュスクリーンで24ドットのフォントが選ばれているようです。 ここで日本語ファイル(unicode)を訪れると句読点の位置は正しいのです(!)。 (face-font 'default nil ?。) をすると "-jis-fixed-medium-r-normal--24-230-75-75-c-240-jisx0208.1983-0" が得られます。 その状況で (set-frame-font "Noto Sans CJK JP-12")を実行すると、フォントサイズが変わり(幅が狭くなる、高さは意外にもあまり変わらない。) そして(face-font 'default nil ?。) は次のフォントを返してます。 "-GOOG-Noto Sans CJK JP-normal-normal-normal-*-16-*-*-*-*-0-iso10646-1" これから判断するに、私のXresourceの設定(.Xdefaults, .Xresource に入っている + ~/.emacsで起動中に行っている・ないしは行っていなかったこと)が大昔 のNOTOフォントの時にはうまく動作し(そもそもそのときにはNoto フォント ファイルをgoogleから落として自分で設定したかも)、それ以来 (a) apt-get install fonts-noto でフォント入れるようにした。 (b) Debian GNU/Linuxのバージョンアップをおこなった。 (c) emacs-25.x,-26.yに切り替えたときに それまでの設定(あるいは未設定)でたまたまうま くいってたものが壊れたということなのでしょうかね。 だんだん問題点の所在があきらかになりつつあり、かなりすっきりしてきまし た。いろいろ参考になります。ありがとうございました。 上記は私の.Xdefaults .Xresources をXの環境にマージしてません。私のリソー スをマージしている普段の状況でどうなるかは更に次に投稿します。 うーむ。間違えました。しまった上のはすでに自分で定義したXリソースがX環境にマージされていた状態での動作かな。 念のためにブートしなおして、Xを起動した状態でやってみると、 emacs -i --font fontset-24 はfontset-24 が定義されてないので、エラー。 emacs -i で起動すると、小さい14?(12?)のフォントで起動。 ここで日本語UNICODEファイルの句読点の位置はただしい。 (face-font 'default nil ?。) は ”-PfEd-HanaMinA-normal-normal-normal-*-15-*-*-*-d-0-iso10646-1 ”を戻す。 ここで(set-frame-font "Noto Sans CJK JP-12") を実行すると、ウィンドウが縦長になり、 句読点の位置は正しく、(face-font 'default nil ?。)は予想通り "-GOOG-Noto Sans CJK JP-normal-normal-normal-*-16-*-*-*-*-0-iso10646-1" を戻す。 念のために、このままXを再起動して、私の.Xdefault, .Xresourcesをマージしてみます。 混乱してきたので、再度今夜落ち着いて挑戦してみます。 Noto フォントの人はだらだら書かないで結果だけ書いてくれりゃいいよ 参考なるかしらんけど張っとく (setq-default font-family-default "Noto Sans Mono CJK JP") (setq-default font-height 110) (setq-default font-weight 'bold) (setq-default line-spacing 0) (set-face-attribute 'default nil :font font-family-default :height font-height :weight font-weight) あと、下記でいじる M-x list-faces-display コントロールコード含んだファイルを開くと、コントロールコードは^@とか表示されるけど こういうファイルをバッファで表示されてるままテキストに変換するにはどうすればいい? 例えば文字コードが0だけ含まれているファイルは^@と表示されるけど、これを文字コード94(^)64(@)なテキストファイルにする感じ そういうのがあったような気がするけど忘れた 自己解決したから書いておく (text-char-description 0)とかすると"^@"と返ってくるからこれを使えば行ける しかしEmacsに不可能は無いな 普通の人間が考えてるような事は既に用意されている 他のエディタじゃこうはいかんだろう、知らんけど eww でググる時の文字化け対策って、どうするのが正解? 現状は自分で form 要素用意してるけど。 https://github.com/chuntaro/NTEmacs64 NTEmacsのIMEパッチ済みをwindwos10ニインストールしたのにIMEが使えない、、、 どうしたらいいんでしょうか? ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる