カテゴリー別アーカイブ: Linux

Gedit Buttom Panel Close Plugin

Wayland 環境で Gedit を使うと Ctrl+F9 が動かない。
下方パネルの表示を切り替えするキーだが微妙に不便。

Gedit でスクリプトを debug – L’Isola di Niente
で主に使う、出すのは勝手に出るので問題ない
だけど非表示にするためだけにマウスに手をのばす必要がある。
キー一発で非表示にすること”だけ”できればいいんだけどなぁ。

だったら自分で非表示にするだけのプラグインを作ればよくね?
キーを何にするか、Esc が妥当だと思うけど単キーでは動かない。
gnome-terminal の終了同様な Ctrl+D は一行削除だ。
とりあえず Ctrl+Esc にしてみた、これはお好みで。

[Plugin]
Loader=python3
Module=bottom_panel_close
IAge=3
Name=Close a Bottom Panel
Name[ja]=ボトムパネルを閉じる
Description=Close a Bottom Panel
Description[ja]=ボトムパネルを閉じる
Authors=sasakima-nao <sasakimanao@gmail.com>
Copyright=Copyright © 2018 sasakima-nao <sasakimanao@gmail.com>
Website=http://palepoli.skr.jp/

buttom_panel_close.plugin

#!/usr/bin/env python3

#    Gedit bottom_panel_close plugin version 3.30.0
#    Copyright © 2011-2018 sasakima-nao <sasakimanao@gmail.com>

import gi
gi.require_version("Gtk", "3.0")
gi.require_version("Gedit", "3.0")
gi.require_version("Peas", "1.0")

from gi.repository import GObject, Gedit, Gtk, Gio

class BottomPanelCloseAppActivatable(GObject.Object, Gedit.AppActivatable):
    """
        Set GMenu and Accelerator
    """
    app = GObject.Property(type=Gedit.App)
 
    def __init__(self):
        GObject.Object.__init__(self)
 
    def do_activate(self):
        self.app.set_accels_for_action("win.bottomclose", ["<Control>Escape"])
        self.menu_ext = self.extend_menu("tools-section")
        item = Gio.MenuItem.new("Close Bottom Panel",  "win.bottomclose")
        self.menu_ext.append_menu_item(item)
 
    def do_deactivate(self):
        self.app.remove_accelerator("win.bottomclose", None)

class BottomPanelClosePlugin(GObject.Object, Gedit.WindowActivatable):
    __gtype_name__ = "BottomPanelClosePlugin"
    window = GObject.Property(type=Gedit.Window)
    def __init__(self):
        GObject.Object.__init__(self)

    def do_activate(self):
        self.action = Gio.SimpleAction.new("bottomclose", None)
        self.action.connect('activate', self.on_bottom_panel_close_activate)
        self.window.add_action(self.action)

    def do_deactivate(self):
        self.window.remove_action("bottomclose")

    def on_bottom_panel_close_activate(self, action, param):
        panel = self.window.get_bottom_panel()
        panel.props.visible = False

buttom_panel_close.py

Ctrl+Esc で閉じることができるようになった。
これでちょっぴりプログラミングが捗る。

Gedit 3.30 Auto Scroll is Bad!

Gedit 3.30 の仕様変更にまいった。

とりあえずカーソル位置からスクロールしてタブを切り換える。
そのタブをアクティブにするとカーソル位置まで勝手にスクロールしてしまう。
他のソースを参考にしながらコードを書いている時に超イライラする。

同じく Ctrl+Z で Undo するとその前の編集箇所に勝手にカーソル移動とスクロール。
これはありがたく思えるけど実際に使うと超迷惑。

それでいて gsettings のどこにも無効にする設定が見つからない。
ソースの参考は別ウインドウにする逃げ道があるけど Undo が困る。

タブを枠外にドラッグで別ウインドウにする時のアニメーションが無くなった。
相変わらず Wayland では Ctrl+F9 が使えない。

Xed にでも乗り換えようかな、と思ったらまったく同じ現象が。
どうやら GtkSourceView 自体の仕様変更のようだ、とっとと削除。
カーソル位置を見失なわないよう配慮したんだろうけど、困った。

、、、、、、、、、、

検索しまくったけど、海外すら誰もこれに気がついていないのか?
無効にする手段は見つからなかったけどこんな面白いのを見つけた。

GitHub – hardpixel/gedit-scroll-past: Gedit 3 plugin to allow scrolling past the end of file.

ファイルの終わりを過ぎてスクロールできるようにする Gedit プラグイン。
おぉ Visual Studio Code みたくできるんだ、作ってくれた人ありがとう!

、、、、、、、、、、

そんなこんなで自作アプリを更新、イライラしながら。

application.run([System.programInvocationName].concat(ARGV));

Y901x はこう書き替えただけで問題なく使えたのでとっとと出した。
gnome-mpv のサイズが完全固定できればこんなの作らなくてもいいのになぁ。

comipoli は何をやってもフルスクリーンがおかしい。
Y901x とまったく同じ処理に書き換えてさえおかしい、意味ワカラン。
早く動くようにしないとエロマンガが見られないジャン!

もう Clutter はあきらめて GtkDrawingArea に書き換えすることに。
macOS 版 comipoli のソースをコピペして cairo に書き換える。

このくらい同じなほうがお互いのメンテが楽でいいよね。
てゆーか滅茶苦茶軽くなったんだが、Clutter 遅かったのね。
作っていてよかった jxa 版。

Fedora 29 Install (SSD)

先日落とした Fedora 29 Workstation の iso を USB メモリに書き出し。
今回は Fedora Media Writer というのを使ったんだけど。
Fedora からなら普通に gnome-software で導入できる。

このアプリは直接 iso のダウンロードまでしてくれるのね。
わざわざ別に iso を落としちゃったよ、なので Custom image から普通に作る。

SSD を付け替え、Fedora 28 の SSD はバックアップ。
UEFI バイオスを USB 優先に変更してライブを起動。
即インストールを選択でいつものように、ってアレ?
インストール中に行っていたユーザー名やルートパスワード指定が無くなった。
それ以外は余程の無知でなければ解るので省略、問題は何事も起こらず完了。

終了して USB メモリを抜いて起動してバイオスを戻す。
初回起動、あぁココでユーザー名指定になったんだ、iPhone なんかと同じ。
そうでないと OS を入れた状態でマシンを配布できないからね。
しばらくアップグレードだったのでいつこうなったのかは知らない。

set | grep ibus しても GTK_IM_MODULE=ibus は出てこない。
でも日本語入力に問題は出ない、Fedora 28 は何だったの?

Ctrl+SHift+E で絵文字選択が出なくなった、不評だったのかな?
入力可能な場所でコンテキストメニューを出すと “Insert Emoji” は出る。

VL ゴシックのフォントがデフォルトでは入らなくなったようだ。
Note Sans Mono CJK JP Regular
を試しで Gedit のフォントに指定してみる、まあ好みで。

Gedit が 3.30 になっているけど違いは判らない。
筆者公開プラグインは普通に動いた、スニペットも今迄のをコピペで使える。

Nautilus のファイル検索がタイトルバーを再利用に変わっている。
パンくずリストが文字列のみに、ここから端末を開くことができるように。
そんな機能より Nautilus Script を左ボタンだけで使える機能が欲しいのに。

即 ~/.config/user-dirs.dirs を弄ってディレクトリ名を変えているのは無視して。
GUI で違いが別るのはコレくらいかな。

gnome-softwere のアドオン/コーデックにいくつか最初からチェックが入っている。
でも再生できるものはほとんど無い、特に H.264 の奴は役に立たない。
UnitedRPMs か RPM Fusion リポジトリをいつものように追加。
libav, License Issues, Non Free 追加で大抵のサムネイルはイケるはず。

Google Chrome はリポジトリを有効にして検索で goo と打てば出て来る。
知っていると思うけど Google にログインすれば元通り。

firewall-config は何故デフォルトでは入らなくなったのだ?
Fedora を選ぶような人なら必須なアプリでしょ。

dconf-editor も。
org.gnome.desktop.interface clock-show-date したらなんか変。

KeePassX が相変わらず検索で出てこない、mono のゴミはイラネ!
と思ったら KeePassXC という KeepassX のフォークが、Qt5 だしコレでいいや。
紹介している日本語サイトが皆 mac なのが面白い。
フリーソフトのインストールが大好きなサルブンツはどうしちゃったのw

gnome-mpv は dnf コマンドからしか導入できないままのようだ。
実はコイツには youtube-dl が付属していることは秘密だよ。

我が自作アプリは、というか。
Gjs の ARGV が UNICODE に変わっていた!

#!/usr/bin/gjs

// Create argv
let argv = [System.programInvocationName];
for (let s of ARGV) {
    /*if (s.includes("//")) {
        argv.push(s);
    } else {
        argv.push(decodeURIComponent(escape(s)));
    }*/
    argv.push(s);
};

今頃か。

あとフルスクリーンの動作が何か変だ、又色々試さなきゃ。
とりあえず自作アプリ以外は再構築完了。

Google Chrome 70 for Linux

Fedora で Google Chrome 70 にて Ctrl+Shift+Q を叩くと

ありゃりゃ終了できない、てか使えなくなったの?
元々 GNOME アプリのデフォルトである Ctrl+Q では終了できなかったのだけど。

ちなみに macOS デフォルトアプリは全部 command+Q です。
macOS 版 Google Chrome や Visual Studio Code でも同じ。
この完全な統一感があるから macOS ではマウスが不要なんだよね。
いいかげん Ctrl+Q にしてくれないか?

○ブンツと○○○ドウズ”だけ”はカスタマイズでいいよ!
アイツらマジでマウスしか使っていないからwwwww

Wayland (Fedora28) ibus

Fedora 28 にアップグレードで Gedit 等の日本語入力がおかしかった件が解決。
GTK_IM_MODULE=ibus が定義されていなかった。

日本語の設定 – Manjaro Linux

Fedora じゃないけど上記を見てあれ?って。
27 では定義されていたと思うんだけど。
.xprofile は必要無いようです。
てか Wayland がコレを参照していたとは思わなかったよ。

set | grep ibus
# if ("GTK_IM_MODULE=ibus" === undefined) {
#     ~/.bashrc_write("GTK_IM_MODULE=ibus")
# }

これで解るよね。

やっと Gedit に戻せる、VSCode の糞仕様にイライラしなくてすむぞ!
スニペットは行頭でしか使えないしショートカットで実行もできないし。
定型文を文字列間に流し込む手段が無いとか、ホント使えねぇ。

ついでに Mozc ってのを試したけど、これ何故人気があるの?
速攻 ibus-kkc に戻したよ、使い込んでいるという理由もあるけど。