systemdにバグ./home以下のファイルが全削除される可能性あり

systemdのバージョン256に /homeディレクトリ以下のファイルを削除してしまうバグがあったそうで,修正版の 256.1 がリリースされています.systemdのissuesによると,一時ファイルを一括削除する systemd-tmpfiles --purge コマンドが /home以下を不要ファ…

TeXでpng画像が表示されない場合の修正方法

TeX

TeXで png画像が表示されない場合の修正方法です 症状 \includegraphicsでpng画像を貼っても,画像が表示されない コンパイル時のログを確認すると,以下の警告が出ている dvipdfmx:warning: Unparsed material at end of special ignored. 修正方法 \docume…

gnuplotの配色をmatplotlib風にする方法

pythonで定番のmatplotlibの配色を gnuplot で使う方法です 配色の定義ファイル(color.pal)の作成 以下の内容でテキストファイルを作成します.私はファイル名は color.pal としました. set linetype 1 lc rgb '#1f77b4' set linetype 2 lc rgb '#ff7f0e'…

連番の画像ファイル(jpegなど)を一つのpdfファイルにまとめる方法

001.jpg,002jpg,…と連番になっている複数の画像ファイルを,まとめて一つのpdfファイルに変換する方法ですImageMagickを使うとコマンド一発で変換できます 例:ファイルが 001.jpg から 010.jpg まで10枚ある場合 $ convert '%03d.jpg[1-10]' output.pdf …

C++で変数を使わずに1+1=2を証明する(ペアノ算術による証明)

プログラミングは得意だけど数学は苦手. プログラミングはわかるけど数学はわからない.そういうときは数学の話をプログラミングの話に置換して考えてみましょう. お題:1+1=2の証明 例として 1+1=2 の証明を取り上げますja.wikipedia.orgここにある「ペア…

C言語をマスターしたい人はGCCのバージョン14を使いましょう

C言語(C++を含む)を習得したい人,ポインタを勉強したい人はgcc-14を使いましょう.難しいところは gcc-14 が丁寧に解説してくれます C言語の難しいところ 例を示します.C言語で記述された,たった6行のソースコードです int main() { int buf[10]; buf[…

Macのbluetoothの音質を上げる方法

macに bluetoothのヘッドフォンを接続したら,びっくりすぐらい音質が悪かったので,原因を調べました mac のbluetoothの音が悪い理由 3行でまとめると 1. そもそも bluetooth は音が悪い(OSは関係ない) 2. bluetoothで音データを飛ばす方法(codec)は複数…

gpgコマンドがフリーズする件

GnuPGのgpgコマンドがフリーズするので原因を調べました gpgコマンドのフリーズ ファイル hoge.txt.gpg を復号しようとして $ gpg --decrypt hoge.txt.gpg を実行するとgpgコマンドがフリーズします通常はパスフレーズの入力プロンプトが表示されるのですが…

TeXで分数を書くコマンド

TeXで分数を書くコマンドを,表で整理しました コマンド 出力 説明 コマンド定義 \frac{1}{4} TeX標準コマンド \dfrac{1}{4} amsmath パッケージ \def\dfrac#1#2{{\displaystyle\frac{#1}{#2}}} \tfrac{1}{4} amsmath パッケージ \def\dfrac#1#2{{\textstyle…

gnuplot で綺麗なヒストグラムを書く方法(2024年版)

gnuplotで綺麗なヒストグラムを書く方法です # ヒストグラムの設定 # min = 最小値 max = 最大値 width = binの幅 # # minからmaxまでの範囲を,N階級に分割したい場合は # width = (max - min)/N # とします bin(x) = width*(floor((x - min)/width)) + min…

Pythonの型ヒント・型指定の一覧

pythonの型ヒント・型指定の書式をまとめます余計な説明は省略して、書式だけ列挙します 変数に対する型ヒント name: str = "ABC" 関数に対する型ヒント 引数がint型、返り値がstr型 def func(x: int) -> str: return str(x) 複数の値を returnする場合 def …

Emacs上でリリースノート(GNU Emacs NEWS)を確認する方法

Emacs 29.3が,2024年3月24日にリリースされています.org-mode関連のセキュリティ対策を施したリリースです変更点の詳細は Emacs NEWS(Changelogに相当するもの)に書かれていますEmacs NEWSはemacs上で M-x view-emacs-news を実行すると読めますWeb上で…

Wi-FiパスワードをQRコードで共有する

WIFIのパスワードをQRコードで共有する方法ですQRコードを作って,SSIDとパスワードを埋め込むだけで良いのですが QRコード作成サイトを使う→パスワードが流出するので好ましくない スマホやPCのQRコード作成アプリを使う→面倒くさい ということで pythonの…

mac OSにtexlive2024 (BasicTeX)をインストールする方法

mac の TeX環境を texlive2024 (BasicTeX) に更新したので手順をまとめます.この記事は以下のエントリを macOS と Tex Live 2024 に合わせて更新・加筆したものです. https://pyopyopyo.hatenablog.com/entry/2022/04/06/211116 (TeX Live 2022の記事) htt…

Colors Available in Emacs; Emacsで指定できるカラーコード一覧(Version 3)

Click to copy the color name, hex code, and rgb values to the clipboard.クリックすると色名,色コード,RGB値が,クリップボードにコピーできます function ccp(elem, color, v) { var layout = document.createElement('table'); var tr = document.cr…

Emacsで指定できる色の一覧(その2)

Emacsで指定できる色の一覧です.クリックすると,値がクリップボードにコピーされます. function ccp(msg, v) { msg.innerHTML="Copied to the clipboard!"; msg.style.background="#fff"; msg.style.color="#000"; navigator.clipboard.writeText(v); set…

Emacsで指定できる色の一覧

Emacsで指定できる色の名前の一覧です label RGB RGB snow#FFFAFA(255,250,250)snowsnow ghost white#F8F8FF(248,248,255)ghost whiteghost white GhostWhite#F8F8FF(248,248,255)GhostWhiteGhostWhite white smoke#F5F5F5(245,245,245)white smokewhite smo…

Macbookでイヤフォン・ヘッドセットの音が悪い場合の改善方法

macbook(つまりmacOS)はbluetooth接続のイヤホンやヘッドセットの音質が悪くなる場合があります.例えば,Windowsとペアリングしたときは問題がないのに,同じデバイスをmacにペアリングすると音が悪くなりことがあります.以下この問題の解決方法をまとめ…

Linuxで外付けHDDを暗号化する(その1)

Linuxで外付けHDDやUSBを暗号化する方法をまとめます ツールのインストール $ sudo apt install cryptsetup デバイスのフォーマット デバイスを暗号化デバイスとして初期化します.初期化,つまりデータが全部消えるので注意 $ sudo /sbin/cryptsetup luksFo…

C言語やC++のマクロ内で pragma を使う方法

C99導入された _Pragma(...) を使うとマクロ内でも pragma が書けます. _Pragma は C++11 で C++でも使えるようになっています. #include <stdio.h> #define PARALLEL_FOR _Pragma("omp parallel for") int main() { PARALLEL_FOR for (int i=0; i<10; ++i) { print</stdio.h>…

rdesktopでwindows11に接続できない場合の解決方法

ubuntuなどのlinuxからWindowsを遠隔操作したい場合は「リモートデスクトップ接続」を使います rdesktop(古い方法) rdesktopというアプリを使いますインストール $ sudo apt install rdesktop リモートデスクトップ接続 rdesktop <windowsのホスト名> これで windows10やwindo</windowsのホスト名>…

emacsでgraphvizで作成した図をリアルタイムでpreviewする

graphviz(dot)の編集は emacs上で org-mode と org-flyimage-mode を連携させると良いです セットアップ Emacsで以下のパッケージを使います org-mode org-babel org-flyimage org-mode の設定 割愛します org-babel の設定 dot コマンドの実行を許可します …

C/C++で文字列を小文字に変換する

C言語またはC++で,文字列を小文字(lower case)に変換する方法です 移植性が高い方法 C99またはC++ならワンライナーで記述できます #include <ctype.h> char str[] = "ABCD"; for (char *p = str ; *p; ++p) *p = tolower(*p); ANSIのtolower関数を使っているので移</ctype.h>…

CUDA用のemacs設定とlspの導入方法

CUDAのプログラムを書くための emacs の設定です cuda-mode まずcuda-modeをインストールします設定はこれだけ (use-package cuda-mode :mode ("\\.cu\\'" "\\.cuh\\'") ) これでCUDA関連の予約語などがhighlight表示されます lsp 関連 clangd 経由でCUDAの…

LinuxにCUDAをインストールする方法(2024年版)

LinuxにCUDAをインストールする方法をまとめます.インストールだけでなく,動作確認として SDK,開発環境が動作すること 作成したプログラムが実行できること まで確認します インストール インストール手順 インストールはNVIDIAのページに書いてある手順…

TeXで論文雑誌やジャーナル名を短縮した略称に差し替える方法

TeX

TeXで文献リスト中の雑誌名やジャーナル名を略称に差し替える方法です 手順1:bibファイルを使う 文献リストには「正しい書き方」というものが存在します.TeXの場合は,書誌情報はbibファイルで管理して,自動処理で「正しい書き方」の文献リストを出力す…

TeXで本文に行番号をつける方法

TeX

TeXで本文に行番号をつける方法です 5行おきに行番号をつける.行は文章全体で数える. 文章の先頭行を1として行を数えたい場合は次のようにします \usepackage[right]{lineno} \runninglinenumbers \modulolinenumbers[5] 5行おきに行番号をつける.行は…

gmail にメールが届かない件とその解決方法

2月1日以降 gmail.com 宛のメールが届かない現象が起きています具体的には,gmail.comのメアドにメールを送っても,エラーのメールが返送されるだけで,相手に届きません.原因は2月からgmail.comが迷惑メール対策を強化したためです以下 gmail.comへメール…

TeXでソースコードを載せる方法

TeX

TeXで文章にプログラムのソースコードを掲載する場合は listings パッケージを使う方法がおすすめです.注意:類似した名前で listing パッケージも存在します.本エントリで紹介するのは末尾に"s"がつく, listings パッケージです 使い方 シンタックスハイ…

TeXで表中で改行する方法

TeX

TeXの表中で改行する方法をまとめます表中のセル内で改行する方法はたくさんあります セルの中で別の表を定義する \makecell を使う tabularx 環境を使う 数箇所だけ改行したい場合は,一番目の方法が便利です改行したいセルが多い場合は,三番目のtabularx …