Home | yama's blog
title: “Obsidianに関して”
layout: post
tag: tips
—
Obsidianの同期方法には以下のようなものがある
- Obsidian sync
- クラウドサービス(iCloud, Dropbox…)
- Git
ここではMacBookでもiPhoneでも無課金で使えるiCloudによるものを採用する.ただし,gitでも管理しておきたいと思った.
調べてみるとすでに解決策があった.
ここでは上の記事を抜粋する.
リポジトリを作成し,フォルダ内の.gitフォルダへのパス
gitdir: /Users/<USER_NAME>/<PATH_TO_PROJECT>/.git
を記載したファイルを.gitというテキストファイルで保存する.
Obsidianのファイル(.obsidianや.gitignoreも)と上の.gitファイルを以下に保存
~/Library/Mobile Documents/iCloud~md~obsidian/Documents/<PROJECT_NAME>
これでiCloud上でもGitリポジトリとして認識される.Git操作はローカルではなくはiCloudの方で行う.
なお複数のMacBookを使用しており,それらのユーザネームが異なる場合はパスを設定した(パスが見つかる)デバイスのみ使用できることに注意.
コミュニティプラグインのGitを入れるとボタンを押すだけでpushされるので便利.
鋭意作成中
様々な種類が存在するがここではLazyvimを採用する.
Install
Latex
nvimのスタート画面からxを押してlang.texでxを押すと有効化できる.
Config
option.lua
.config/nvim/lua/config以下にある
vim.g.tex_flavor = "latex"
vim.g.vimtex_view_method = "skim"
vim.g.vimtex_view_general_viewer = "skim"
vim.g.vimtex_view_skim_sync = 1
vim.g.vimtex_view_skim_activate = 1
vim.opt.wrap = true -- set wrap
vim.g.tex_flavor = "latex" -- 空のtexファイルを作成した時でもvimtexが認識されるように``
Skim→Nvimにカーソル移動しない問題はこの記事より,以下のようにしておく(根本的な解決にはなってないよう)
スクリプト
mkdir -p ~/.local/bin
cat > ~/.local/bin/skim-inverse-search.sh << 'EOF'
#!/bin/bash
/opt/homebrew/bin/nvim --headless -c "VimtexInverseSearch $1 '$2'"
osascript -e 'tell application "WezTerm" to activate'
EOF
chmod +x ~/.local/bin/skim-inverse-search.sh
を作成し,Skimの設定を以下のようにする
- Preset: custom
- command: /Users/<ユーザー名>/.local/bin/skim-inverse-search.shユーザー名>
- argument: %line ‘%file’
Usage
コンパイルをする場合は<LocalLeader>ll
プレビューを開く時は<LocalLeader>lv
のデフォルトは" \ "
sioyekではF4でsyntexモードのON/OFFを切り替えられ,ON時は右クリックで該当するtexの位置に遷移する.
# Vimの操作
## カーソル移動
[この](https://qiita.com/tpywao/items/bd119f0075e40d47c88b)サイトを見る
ウィンドウ間の移動はCtrl+w 移動キー
[この](https://www.tohoho-web.com/vim/window.html)サイトが詳しい
他のキーバインドに関しては[ここ](https://qiita.com/kosments/items/70d8b1331ff08baa9f13)を見る.
Last updated:
© 2025 Kazuaki OHYAMA
毎回(IPやオプション付きの長い)sshコマンドを打たずにサーバに接続できる方法.ほとんど参考資料通り.
.ssh/configの作成
ファイルがない場合は作成し,ディレクトリのパーミッションを変更.
mkdir ~/.ssh
chmod 700 .ssh
touch ~/.ssh/config
.ssh/configに記載
Host hogeServer
HostName hoge.com
User hogerou
IdentityFile ~/.ssh/sample/id
Port 22
TCPKeepAlive yes
IdentitiesOnly yes
Host github.com
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/id_ed25519
User git
| キーワード |
内容 |
| Host |
ホスト名 |
| HostName |
ホストのアドレスまたはIPアドレス |
| User |
ログインユーザ名 |
| IdentityFile |
ログインするための秘密鍵のパス |
| Port |
ポート番号(デフォルトは22) |
| TCPKeepAlive |
接続状態を継続するか |
| IdentitiesOnly |
IdentityFileが必要か |
| ServerAliveInterval |
一定期間サーバからデータがこない時にタイムアウトする秒数 |
何に対応するためだったか忘れたが,私の場合はgithubの設定もある.
サーバーに接続するする時は,
ssh hogeServer
のようにホスト名を指定すればよい
References
.ssh/configファイルでSSH接続を管理する
Last updated:
© 2025 Kazuaki OHYAMA
目的
複数の文献を1つの箇所で引用する時に[1-2]のようにしたい(multiple citationと検索するとよさそう).
問題
上の目的を達成するため,citeパッケージを使うという記事が多いが,私の環境では参考文献の数字の部分が”?”になってしまった.
解決策
スタイルを指定するのではなく,以下のように参考文献のスタイル (bibstyle)と引用のスタイル (citestyle)を別々に指定する.
\usepackage[bibstyle=ieee,
citestyle=numeric-comp,
maxnames=99,maxnames=2,
url=true,doi=true,
hyperref=true,
bibencoding=utf8,
backend=biber
]{biblatex}
参考:biblatex のオプションの解説
※元々Qiitaに掲載していたもの.
Last updated:
テンプレート
研究室や自分で作成したオリジナルのテンプレートをPower Pointで扱いやすくする.
- pptxファイルでテンプレートの作成・編集(この時,規定のテキストボックスや図形も設定しておくとよい)
- 1.のpptxファイルをテンプレートとして保存し,potxファイルで保存
- 2のpotxファイルを’/Users/{your-username}/Library/Group Containers/UBF8T346G9.Office/User Content/Templates’に置いておけばPower Pointの初期画面の新規作成のところにPersonalとして表示される
pptxファイルを共有すれば共有された側が後で編集することができる.
iguanaTex
gitHubから自分の環境にあったものをインストールして,パスの設定を確認すればよい.
Last updated:
© 2025 Kazuaki OHYAMA
ターミナル
表示
Last updated:
© 2025 Kazuaki OHYAMA
iPadとの連携
Macを外付けディスプレイに接続していて,iPadの画面をそこに表示したい場合.現状だと以下の方法しかなさそう
- iPadをMacと接続
- Quick Time Playerから新規画面録画をし,入力ソースとしてiPadを選択
ここ参照
Finder
表示
- パスバー:今いる場所を表示
- ステータスバー:カレントディレクトリのファイル数や容量を表示
- デフォルトで,隠しファイル・フォルダを表示
defaults write com.apple.finder AppleShowAllFiles TRUE
killall Finder
キーボード
日本語でも¥ではなくバックスラッシュを入力するには,キーボードの設定で日本語でアルファベット(英字)入力をONにし,英数キーボードを消せばよい.
参考
Last updated:
© 2025 Kazuaki OHYAMA
基本的にこれからLatexを始める場合はLuaLatexを使うのが良いと思う.
Macの場合はbrewでMacTexをbrewでGUIアプリなしでインストールし:
brew cask install mactex-no-gui
sudo tlmgr update --self --all
sudo tlmgr paper a4
TexShopやLateXiTといったGUIアプリは必要に応じて後から別にインストールする.
ユーザディレクトリの直下に.latexmkrcというファイルを作り以下のようにする:
#!/usr/bin/env perl
# latex commands
$latex = 'uplatex -synctex=1 -halt-on-error -interaction=nonstopmode -file-line-error %O %S';
$latex_silent = 'uplatex -synctex=1 -halt-on-error -interaction=batchmode -file-line-error %O %S';
$lualatex = 'lualatex %O -shell-escape -synctex=1 -interaction=nonstopmode -file-line-error %S';
$xelatex = 'xelatex %O -no-pdf -synctex=1 -shell-escape -interaction=nonstopmode %S';
$bibtex = 'python3 mixej.py %B; upbibtex %O %B; python3 mixej.py %B';
$bibtex = 'upbibtex %O %B';
$biber = 'biber %O --bblencoding=utf8 -u -U --output_safechars %O %S';
$dvipdf = 'dvipdfmx -V 5 %O -o %D %S -z 0 -I 0 -d 5';
$dvips = 'dvips %O -z -f %S | convbkmk -u > %D';
# $pdflatex = 'pdflatex %O -synctex=1 %S';
$makeindex = 'upmendex %O -o %D %S';
$max_repeat = 6;
$ps2pdf = 'ps2pdf %O %S %D';
# index
$makeindex = 'mendex %O -o %D %S';
#pdf mode
$pdf_mode = 4;# 0: none, 1: pdflatex, 2: dvips to ps2pdf, 3: dvipdfmx, 4: lualatex
# Prevent latexmk from removing PDF after typeset.
# This enables Skim to chase the update in PDF automatically.
# preview
$pvc_view_file_via_temporary = 0;
if ($^O eq 'linux') {
$dvi_previewer = "xdg-open %S";
$pdf_previewer = "xdg-open %S";
} elsif ($^O eq 'darwin') {
$dvi_previewer = "open %S";
$pdf_previewer = "open %S";
} else {
$dvi_previewer = "start %S";
$pdf_previewer = "start %S";
}
# Use Skim as a previewer on Mac OS X
$pdf_previewer = "open -ga /Applications/Skim.app";
@generated_exts = (@generated_exts, 'synctex.gz');
上の例ではpdfビューアーとしてskimを利用しているためbrew等でインストールが必要
なお,vscodeのみで編集する場合はインストールの必要はない.
シェルを再起動して,例えばsample.texをコンパイルする場合は,
パッケージを新しく追加したなどで更新が必要な場合は以下のコマンドを実行する:
コマンドを探したい時
unicode-mathが提供しているもの:
unicode-mathではないパッケージで提供されているもの:
Last updated:
pushが遅い時
それぞれ,
- リポジトリ内の不要なファイルを削除し,残りのファイルを整理
- リポジトリの整合性をチェック
他にもsshのバッファサイズなどを変える方法もある.
メールアドレスを非公開に
commitなどで使用されるメールアドレスをここで確認できる<ID+username@user.noreply.github.com>に変更すればよい:
git config --global user.email ID+username@users.noreply.github.com
クラウドにgitのバックアップを取る
ここではBoxの例を示す.この記事を参考にした.
まずBox側でリポジトリ名.gitというフォルダを作る[^1].その後,
git init --bare --shared --initial-branch=main
とする.最初のオプションは共有リポジトリ作業用ディレクトリ(.gitフォルダを作成しない)という意味で,
2つ目のオプションはcloneだけでなくpushなども行えるように権限を付与するもの.
また,branch名をmainに指定しないとmasterで作成されてしまい,ローカルのbranchも変更されてしまったので明示的に指定している.
次にプロジェクト側で,
git remote set-url --add "/Users/<USER_NAME>/Library/CloudStorage/Box-Box/<PATH_TO_PROJECT_FOLDER>"
とする.--addを入れないと元の設定が上書きされてしまう.
push先は
で確認することができる.
なお
git remote add box "/Users/<USER_NAME>/Library/CloudStorage/Box-Box/<PATH_TO_PROJECT_FOLDER>"
としてから
git remote set-url --add origin <second_repository>
以上で,git pushしただけでBoxにも変更が反映されるようになる(はず).
複数のリポジトリに同時にpushする方法はこの記事を参考にした.
Last updated:
© 2025 Kazuaki OHYAMA
東京のどこかの大学生
contrastというテーマを使って作成
- こんな感じにSchrödinger方程式もきれいに書ける:
\[i\hbar\frac{\partial}{\partial t} \Psi(\mathbf{r},t) = \left [ \frac{-\hbar^2}{2\mu}\nabla^2 + V(\mathbf{r},t)\right ] \Psi(\mathbf{r},t)\]