Gedit 46 Syntax Highlighting

Fedora 40 の Gedit でハイライト定義の変更が無視される件。
以下に定義を入れれば摘要されるはずなんですけど。

~/.local/share/gtksourceview-4

GtkSourceView4 に何か変更があったのか?
そう思って単純なテストコードを書いてみた。

#!/usr/bin/env python3

import sys, gi
gi.require_version('Gtk', '3.0')
gi.require_version('GtkSource', '4')
from gi.repository import Gtk, GtkSource
 
TEXTVIEW_CSS = b'''
#MySourceView {
    font: 10pt Monospace;
}'''

PYTHON_CODE = '''#!/usr/bin/env python3

fst = 'fstring'
print(f'Test {fstr} Syntax Highlighi')'''
 
class Win(Gtk.ApplicationWindow):
    def __init__(self, a):
        Gtk.ApplicationWindow.__init__(self, application=a, title='SourceViewTest')
        # GtkTextView
        view = GtkSource.View(show_line_numbers=True, name='MySourceView')
        # CSS
        provider = Gtk.CssProvider()
        provider.load_from_data(TEXTVIEW_CSS)
        view.get_style_context().add_provider(provider, Gtk.STYLE_PROVIDER_PRIORITY_USER)
        # Python3 Highlighte
        lang_man = GtkSource.LanguageManager()
        lang = lang_man.guess_language(None, 'text/x-python3')
        view.props.buffer.set_language(lang)
        view.props.buffer.set_text(PYTHON_CODE)
        # GtkScrolledWindow
        sw = Gtk.ScrolledWindow(child=view)
        self.add(sw)
        self.resize(400, 100)
        self.show_all()

app = Gtk.Application()
app.connect('activate', lambda a: Win(a).present())
app.run(sys.argv)

01

普通に摘要されとるじゃん。
Gedit 派生の奴も試してみよう。

って Pluma は調べてみると Gedit2 派生かよ。
プラグイン作りに Python2 や PyGtk も必要だよな、ありえん。
Xed なら Gedit3 ベースだな、ツールバーを消せばなんとか。

02

やっぱり Gedit だけ摘要されない、マジで何でだよ。
他を試すのも面倒だし、しばらく Xed に乗り換えするかな。

と思ったけどコードスニペットと外部ツールが無いやんけ。
Atom や Sublime Text は別の手段があったけど Xed には無さそう。
単語補完というプラグインがあるけど、違うそうじゃない。
自作プラグインは Gedit 3.10 以前のを小変更で使えるかもだが。
新規タブが Ctrl+N に変更されているのはなんで?

Xed って Old Gedit のふりをした vscode になりたいの?
まあナンチャッテプログラマーにはこういうのがウケるんだろうけど。

だめだ Gedit をなんとかしなきゃ。
とにかく Gedit は他アプリとは別の場所を見ているってことだよな。
もしかしてと思って /usr/share の中を探してみる。

03

あった、こんな所に。
Gedit 46 は GTK3 ライブラリでなくフォークした奴を使っているのか。

libgedit-gtksourceview 300 Reference Manual: libgedit-gtksourceview 300 Reference Manual

それだから libgedit-46.so のサイズが 583MB もあるわけだ。
静的リンクにしたほうが Mac や Windows に移植しやすいよね。
もう面倒だ、直接このディレクトリに python3.lang をコピーしちゃえ!

04

それだとエラーで python3.lang がロードできないようです。

def.lang: Update Unicode identifier regexes (!149) ? マージリクエスト ? GNOME / gtksourceview ? GitLab

Gedit が使う GtkSourceView にはこの定義が無いってことですね。
正式な GtkSourceView-4 にはメンテで追加されているという皮肉。
原因は解ったけどコレでは対策手段が無い、お手上げです。

あと関係ないけど Nautilus のリネームで日本語が打てないね。
経験上 GNOME 45 の間はこのままかと、リネームアプリでも作るか。

なんじゃもんじゃ

今日は花公園へ行ってみたけどあんまりピンとこないな。
近場のベニマシコポイントにも行ったけどなんもおらんかった。

poppy

てなわけで、ポピーのジェットストリームアタック。
寄れる超広角を生かしてこんなんやってみました。

nanjamonja

ヒトツバタゴ別名なんじゃもんじゃ、ってなんでだよ。
下隅のパースがエグい、やっぱり超広角は歪むよな。

hoojiro

逆光のホオジロ、冬鳥がいなくなると自然にコイツが残る。
この季節は日陰と逆光との戦いだ。

tonbi

逆光のトンビ、野鳥は以上。
この時期の木曽川はどこに行ってもホーホケキョが聞こえる。

しかし思う、単焦点を使っている人なんて滅多にみない。
花を撮っている人を見るとみんな標準の大三元ズーム。
レンズ沼なんて本当にあるのか、売り煽りしているだけ?

ネモフィラ

今日はカメラの再セッティングをやって公園へ。
オオルリが豪快に囀りしていましたが姿は見えず。

yamagara

ヤマガラ、お願いです日向に出てください。
ISO 3200 で、これが AI ノイズリダクションです。

mejiro

メジロ、だから日向に出てくださいよ。
アブラムシを食ってエコな害虫駆除をしています。

hoojiro

ホオジロ、そうそう日向なら ISO 200 でイケるんだよ。
しかしココでってか木曽川以外でホオジロは初めて見たな。

nemofira

そういえばこの公園にはネモフィラがあったなって。
今年は野鳥以外も撮りまくるはずだったのに。
明日は木曽川の花公園にでも行ってみようか。

キビタキの場所で夕方まで粘ってみたけど出てこない。
ボーイスカウトのイベントをやっていたし隠れたかな。
サンショウクイも現れず昨日のリベンジは失敗に終わった。
昨年に続いて今年も夏鳥には運がない。

マイクロフォーサーズの高 ISO

休日出勤も終わり今日から四連休、夏鳥をガンガン撮るぞい。
サンショウクイとキビタキが撮れた、ただ ISO 感度がガツンと。
まあ OM Workspace には AI ノイズリダクションがあるし。
と思っていたんですけど。

先日 OM-1 のファームアップをしたら何故か初期化されまして。
設定は以前のように戻したと思っていたんですけど。
保存が RAW ではなく JPEG ファインになっていた。
RAW でないと AI ノイズリダクションが掛けられないんです。

やっちまったもんはしかたがない、開き直ってやろう。
マイクロフォーサーズの高 ISO がどんだけ酷いかの紹介だ!

yamagara

ヤマガラ、これは ISO 800 で何も問題ないです。
ちなみの全部遠かったのでトリミングしています。

sansyoukui

サンショウクイ、これは ISO 8000 になった。
AI ノイズリダクションさえ使えればなんとか、ならないかも。

kibitaki

キビタキ、まさかの ISO 20000 でした。
塗り絵です、もはや AI ノイズリダクションなんて無意味です。

OM-1 でもやっぱり ISO 6400 が限界です、設定した。
いやこれでも G99 や E-M5 よりマシになったんですよ。
ISO 上限 800 にして被写体ブレさせまくっていたし。
フルサイズにしたところで余裕が少し増えるだけなんだよな。

明日はリベンジ、いや他の設定も見直ししなきゃ。
てか夏鳥さん、もっと明るい場所に出てきて。

Fedora 40 インストール

世間は三連休です、筆者は今日だけですけど。
ちなみに小牧山ではキビタキが囀っていたよ、えぇ声は聞こえました。
ということで送ればせながら Fedora 40 へアップグレードです。

今回はクリーンインストールしたいので休日まで遅らせました。
インストール方法はいつもどおりなので省略。

Fedora Elecom | Paepoi Blog

上記で買った無線 LAN は調子が悪くて有線に戻しています。
ルーターの再起動しまくり現象は止まったし、基地局側が理由だったみたい。
40 に最初からファームがあったら又使おうかと考えたけど未対応のままだった。

ps1

端末は gnome-terminal のままじゃん、プロンプトに色が付いているけど。
PS1 変数がなんじゃこりゃになっているけどまあこのままでいいや。
あ、hostnamectl にて既にホスト名を変更した後です。

画像ビューアは本当に Loupe に変わっているのね。
今気がついたけど矢印キーでの画像切り替えは Nautilus と順番が違うヤン。
拡大でやはりアンチエイリアスが掛からないし、ダメだ EoG を入れよう。

chrome

google-chrome のインストールが失敗するんですけど。
Flathub 版ならイケたのでこっちをしばらく使う。
ログインすれば元通りなのは普通インストールと同じだった。

Fedora Tips | MPV をスクリプトで拡張 – Paepoi

MPV は Skylake 時代な内容が古いままだったので書き換え。
Fedora 38 から ffmpeg が面倒なことになっているんだよな。
他の Tips は全部以前のままだった、書き足すことがないのも寂しい。

gnome-text-editor がちっとも進化しないので Gedit を。
なんだけど色分けは普通に進化しているのね。

gedit

GtkSouceView 4 の開発が止まったからしかたがないんだけど。
PHP8 のヒアドキュメントインデントにも Gedit は未対応なのか。

Gedit: fstring Highlighting | Paepoi Blog

PHP もコレをやればいいと思ったんだけーがさぁ。
Python3 のやつも摘要されなくなっているんですが。
なんですか、Gedit はもう使うなってことですか?

最後の手段である Sublime Text をとうとう導入か。
って Linux 版って日本語入力ができないんですね。
手段はあるけど通常のインプットメソッド切り替えじゃないのね。
メニューバーや古い UI も気になるし、macOS 版を知っているととくに。
今回は見送って Gedit を騙し騙し使うことに。

ということで。
39 の時とほとんど変わらない Fedora 40 になりました。
そんなことより今日はキビタキが撮りたかった。