4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

windowsのGithubDesktopでsjisを表示させようとしてハマったので紹介します

Last updated at Posted at 2023-01-28

はじめに

VBAのマクロをGithubで管理しようとGitHub Desktopをインストールしたのですが、WEB上では正しく表示されるのですが、GitHub Desktopでは全角文字が文字化けしてしまいました。
それを解消する方法です。

手順2まではググれば出てきたのですが、そこまでの設定だと右側の差分を表示するエリアがクルクル回るカーソルが出たままで、ソースが表示されないという状態になりました。

いろいろ調べてPathが原因だと判明したので、同じように悩んでいる方のために情報を共有します。

手順

1 .gitattributes ファイルを作成

リポジトリのフォルダに
.gitattributes ファイルを作成し、以下の内容を記載する

.gitattributes
*.bas diff=sjis
*.cls diff=sjis
*.frm diff=sjis

左側は変換対象とするファイル名(ワイルドカード可)
sjisの部分は任意の名称

2 .gitconfig ファイルに記載を追加

C:\Users\{ユーザ名}\.gitconfig
ファイルに、以下のエントリを追加する
特定のリポジトリのみ適用する場合は
レポジトリ配下の非表示フォルダの.gitフォルダにあるconfigファイルを対象にする

.gitconfig
[diff "sjis"]
	textconv = iconv -f sjis -t utf-8

"sjis"の部分は.gitattributes ファイルで決めた名称
意味:差分を表示するときに、「iconv -f sjis -t utf-8」のコマンドを実行しなさいということ
iconv はLINUXの文字コード変換コマンド

3 iconvコマンドにPathを通す

手順2まででうまくいかない場合
コマンドプロンプトを立ち上げて以下のコマンドを実行

ls | iconv -f sjis -t utf-8

※ ls は windowsの dir に相当するコマンド
エラーになった場合、iconv.exeのあるフォルダにPathを通す
私の環境では以下の通り
C:\Program Files\Git\usr\bin\iconv.exe

Pathを通す方法

コントロールパネルを立ち上げる
右上の検索窓に「環境変数」と打ち込む
image.png
「環境変数を編集」をクリックし表示された画面に従いPathを追加する
image.png

再度コマンドプロンプトで以下のコマンドを実行し、iconvコマンドが有効になったことを確認

ls | iconv -f sjis -t utf-8
4
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?