0
1

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.

LibreOffice で Python のデバッグ環境を試す

Posted at

LibreOffice を Python で開発しようとしてきました。

「LibreOffice マクロを Ubuntu + Python で作る」
https://qiita.com/nanbuwks/items/77d5707b9a2507972676
「LibreOffice マクロ:Pythonでのプログラム例集」
https://qiita.com/nanbuwks/items/1f25e8839089eaefd6d4
「Python で LibreOffice 拡張をステップバイステップで作ってみる」
https://qiita.com/nanbuwks/items/53861bac26c521c4b549

LibreOffice のマクロなどの標準的な開発言語は BASIC。この場合、備え付けの IDE や デバッガなどもある。

しかしながら Python で開発しようとした場合、そういった環境は入っていない。

LibreOffice + Python で極楽?

Python だからお気楽に書けるのかな・・・・Python の開発状況はかなり昔から可能ぽいし、ぐぐれば出てくるよね・・・

実際は・・・

  • ドキュメントが不足していてサンプルプログラム頼り
  • だけれども過去のサンプルプログラムの多くは謎のエラーを吐いて止まってしまう
  • そんなときの出力メッセージは間に挟まっている LibreOffice レイヤから
  • メッセージは何の役にも立たない

という地獄みたいな状況になる。

なのでせめてデバッガが必要だなあ。今回はデバッガ環境を作ることにチャレンジ。

環境

環境

  • Ubuntu 22.04 LTS
  • LibreOffice Ubuntu package version: 1:7.3.7-0ubuntu0.22.04.3
  • libreoffice-script-provider-python パッケージインストール済み

APSOをインストール

Python のデバッグ環境は、LibreOffice 拡張で実現します。

APSO (Alternative Script Organizer for Python) 、Python 用の代替スクリプト オーガナイザー
だそうです。

APSO 環境は、Ubuntu などではlibreoffice-script-provider-pythonパッケージをインストールしていないといけないそうです。
今回は
「LibreOffice マクロを Ubuntu + Python で作る」https://qiita.com/nanbuwks/items/77d5707b9a2507972676
にてインストール済みでした。

APSO パッケージはこちらからダウンロード、
https://extensions.libreoffice.org/en/extensions/show/apso-alternative-script-organizer-for-python
image.png

「ツール」-「拡張機能マネージャ」でインストールし、LibreOffice を再起動します。
image.png

ASPOを使ってみる

再起動すると、
「ツール」-「マクロ」に-「Pythonスクリプトの管理」が現れます。
image.png

APSOウィンドウから、「デバッグ」を選ぶと、
image.png

Python ソースレベルデバッガが起動します。

image.png

0
1
0

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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?