SlideShare a Scribd company logo
1 of 90
Download to read offline
1
LibreOffice Productivity Suite
LibreOfce コミュニティに
不具合修正パッチを送ってみた
Tomofumi Yagi <yagitmknada[at]gmail.com>
2014- 5-31 第 1 回 徳島 LibreOffice 勉強会
2
LibreOffice Productivity Suite
自己紹介
とある地方自治体のシステム管理者
その前は、組み込み系開発者
その更に前は、地方の小さな会社のシステム管理
者兼技術系何でも屋さん業
純粋なユーザーとも言えず、かと言って開発者とい
うのも違う気がする中途半端な人
3
LibreOffice Productivity Suite
今日お話する内容
不具合修正パッチを送る動機について
パッチを送ってみた:準備編
パッチを送ってみた:送付編
自分でバグ修正パッチを送ってみてわかった事
4
LibreOffice Productivity Suite
今日お話しない内容
LibreOfce 内部のアーキテクチャ
開発環境の整え方
Git 等の開発ツールの高度な使い方
デバッグ技法
...
本日は、高度にテクニカルな話はありません。ごめんなさい
5
LibreOffice Productivity Suite
不具合修正パッチを送る動機について
とにかく LibreOfce のバグを直したい!! (1/4)
プライベートでも仕事でも LibreOfce を使っています
Writer 、 Impress が主
使っていて、稀にどうしても我慢ならないバグがある
最近だと「 Bug 73891 - UI color panel does not show the actual color 」
最後に選んだ色、今選択している文字の色が
パレット上で示されないバグ
とにかく LibreOfce のバグを直したい!! (2/4)
バグ報告をしても、なかなかバグが直らない時がある
世界中から山のようなバグ報告が寄せられているため、自分のバグ報告が埋
もれてしまうことがある ( ? )
コア開発者 (LibreOfce 開発の中心的開発者。仕事として LibreOfce の開発
をしているケースが多い ) は、コミュニティ全体にとって優先度が高い仕事か
ら行う
バグ修正も、クラッシュ、セキュリティ対策等の深刻なバグから対応する
LibreOffice は、深刻なバグの修正は凄く早いと思います
自分の報告したバグ修正の優先度は必ずしも高くない
リソースは凄く限られているので、深刻でないバグ修正は後回し
とにかく LibreOfce のバグを直したい!! (3/4)
世界中から寄せられるバグ報告の山について
MAB(Most Annoying Bugs) … 最も厄介なバグ
下は LibreOfce のバグ管理システムから抜粋。これは氷山の一角 ...
バグ管理システムから届くメール (libreofce-bugs@lists.freedesktop.org
メーリングリスト ) 、最近の 5 ヶ月弱で 2 万 8 千通以上 ...
LibreOffice 4.2 の MAB 192 個 ( まだ増えます )
とにかく LibreOfce のバグを直したい!! (4/4)
【結論】自分で見つけたバグは自分で直してみよう!
DIY の精神 ( ? ) でパッチを書いてみる
バグ報告に、自分が書いたパッチを添付する
パッチを提示してコア開発者の手間を省く代わりに、自分の直して欲しい
バグ修正の優先度を上げてもらう意図
自分が書いたパッチを LibreOfce コミュニティに送って master に取り込ん
で貰えれば更に嬉しい
門外漢がいきなりバグを直せるか? (1/2)
明らかに壁がある ( 自分の場合 )
世の中には LibreOfce( や OpenOfce.org) の開発にスッと入っていける人も
いるみたいだけど、自分の場合は残念ながらそうじゃなかった。
数百万行規模のソースコードの中で迷子に ...
巨大なマルチプラットフォームの開発プロジェクト
内部のアーキテクチャやデータ構造がわからない ( 土地勘がない上に地図が
ない状態 )
始めて触れる概念やツール
Git 、 Gerrit によるコードレビューや CI 、ユニットテスト、タイムベース
リリース、 etc...
門外漢がいきなりバグを直せるか? (2/2)
資料はあるけど ...
例えば Code Overview
無いよりはずっとずっといい
しかし、もう少しヒントが欲しい ...
Easy Hacks は? (1/2)
LibreOfce と言えば Easy Hacks
https://wiki.documentfoundation.org/Development/Easy_Hacks
Easy Hacks について
「新規貢献者の方々への敷居を低くするために, LibreOfce チームはイー
ジー・ハックのリストをまとめています. この目的は,最初のタスクを見つ
け出しやすくすることです.」
Easy Hacks は? (2/2)
自分の場合は Easy Hacks でも躓いた ...orz
Skill Level を目安に探してみたものの、即座に手を出せそうなものを見つけ
られなかった
たとえば
Bug 35862 -"Increase font" and "decrease font" could work even if the s
election contains...
なんかは面白そうだけど手が出ない ...
自分には色々と足りてないスキルや知識がありそうだが、残念ながら打開策
が見つからないし、聞くアテもない
どこかに突破口はないか?
まだ諦めたくない ...
LibreOfce のビルド&ビルドエラー解消で経験を
積む (1/3)
EasyHacks より Easy なタスク = ビルド
ビルド→ソースコードから LibreOfce の実行ファイルを作る
Easy Hacks の Getting Started の最初にある「 Build LibreOfce 」の部分
「 fnd something fun you want to fx 」の前にある ( ! )
開発に参加するための基本中の基本スキル
Easy Hacks の Getting Started
ココ
LibreOfce のビルド&ビルドエラー解消で経験を
積む (2/3)
ビルド環境を構築して、 LibreOfce をひたすらビルド
1 日〜数日おきに master をビルドする
ビルドエラーが出たら、ビルドを通すために自分でエラーを修正してみる
ビルドのどのフェーズでエラーが出たか?
どのモジュール、どのソースコードでエラーが出たか?
何が原因でエラーになっているのか?
どのコミットが原因でエラーが出たか?
どこを修正すればビルドを通す事ができるか?
他の人はどのように修正したか?コミットの内容を調べる
ビルドエラーの修正を繰り返すことで、 LibreOfce のビルドシステム、内部
構造、開発ツール類の知識を蓄積する
門外漢でも、だんだんと LibreOfce のソースコードが読めるようになる
LibreOfce のビルド&ビルドエラー解消で経験を
積む (3/3)
ビルドエラー解消のためのパッチを master に取り込んで貰う
コミュニティの様子を知る
パッチを送付するときに使うツールや作法に慣れる
コミュニティに貢献しつつ経験を積む
最終的に、自分が直したいバグが自分で直せるようになることが目標
17
LibreOffice Productivity Suite
パッチを送ってみた:準備編
まずパッチを送るための環境を整える
全体像
①LibreOfce をソースコードからビルドする環境を整える
②Gerrit が使えるように設定する
③ライセンス宣言を行う
①LibreOfce をソースコードからビルドする環境を
整える
資料
①Linux
「 Linux 環境で LibreOfce をビルドしてみようかね 」小笠原氏
http://www.slideshare.net/naruoga/libreofcelinux?from_search=12
②Mac
「 Mac OS X での LibreOfce ビルド報告 Ver.2 」 testnoda 氏
http://www.slideshare.net/testnoda/lib-o-buildmacosx20140210
③Windows
「 LibreOfce を Windows 上でビルドする」拙作
http://www.slideshare.net/tomofumiyagi/libreofce-buildytmkndshortver
②Gerrit が使えるように設定する (1/13)
Gerrit って?
LibreOfce の開発で使われるオープンソースのパッチレビューシステム
Web ベース
https://gerrit.libreoffice.org/
Git と連携 (Git は LibreOfce の開発で使われるバージョン管理システム )
Android(AOSP) 等の開発で使われている
コミット権限を持ってない開発者は、 Gerrit のレビューを通じてパッチを取
り込んで貰うか、本家開発メーリングリストにパッチを送って取り込んで貰う
必要がある
Gerrit を利用しましょう
②Gerrit が使えるように設定する (2/13)
Gerrit の画面 1
②Gerrit が使えるように設定する (3/13)
Gerrit の画面 2
②Gerrit が使えるように設定する (4/13)
TDF Wiki 「 Setting yourself up for gerrit 」に従って設定を
行う
https://wiki.documentfoundation.org/Development/gerrit/setup
「 ./logerrit setup 」を実行します
メッセージに従ってパスフレーズ等を入力します
;; Gerrit のセットアップスクリプトを実行します
$ ./logerrit setup
It appears that you have no ssh setup, running ssh-keygen to create that:
Hit enter to generate an ssh key - you will need to enter a pass-phrase
./logerrit: 87: read: arg count
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
;; メッセージに従ってパスフレーズ等を入力します
...
②Gerrit が使えるように設定する (5/13)
実行が終了したら、画面に表示された公開鍵をコピーしてお
きます
Gerrit の Web ページ上でコピペする必要があるため...
Please go to https://gerrit.libreoffice.org/ and:
- press the 'register' button in the top right corner
- after login set yourself a username (its recommended to use your IRC-nick)
- paste the key below into the 'Add SSH Public Key' box.
ssh-rsa ここに公開鍵の内容が表示されます ..............................................
.................................................................................
.................................................................................
Note that you need to register additional email addresses, if you want to
commit from them. Additional emails must be confirmed with repling to the
invitation mail it sends you.
Which user name did you choose? yagim
Automatically creating your ssh config
To see if your setup was successful, run './logerrit test' then.
$
②Gerrit が使えるように設定する (6/13)
https://gerrit.libreoffice.org/をブラウザで開
き、「 Register 」をクリックします
②Gerrit が使えるように設定する (7/13)
OpenID をサポートしたアカウント (Google Account 等 )
でサインインします ( 例として Yahoo!Japan ID を使用 )
「 yahoo.co.jp 」を入力し「 Sign in 」をクリック
補足 :Google Account の場合はこのリンクをク
リック
②Gerrit が使えるように設定する (8/13)
Yahoo!JAPAN ID とパスワードを入力し「ログイン」をク
リック
②Gerrit が使えるように設定する (9/13)
「同意する」をクリック
②Gerrit が使えるように設定する (10/13)
「 Full Name 」「 Preferred Email 」「 Username 」
を登録します
入力後「 Save Changes 」や「 Select Username 」を
クリックしておくこと
②Gerrit が使えるように設定する (11/13)
「 Add SSH Public Key 」欄に公開鍵をペーストし
「 Add 」をクリック
②Gerrit が使えるように設定する (12/13)
「 ./logerrit test 」を実行し設定をテストします
「 Your gerrit setup was successful! 」のメッセージが表示されたら正しく
設定できています
「 There seems to be trouble.
please have the output of: ssh -vvvv logerrit at hand when looking for
help. 」のメッセージが表示されたら何かがおかしい
~/.ssh 配下の設定ファイルのパーミッションがおかしいとエラーになるこ
とがある
アカウントの「 Profle 」ー「 Username 」が空欄になっているとエラーに
なることがある
;; 設定をテストします
$ ./logerrit test
…
②Gerrit が使えるように設定する (13/13)
Gerrit の設定ができたら、最後に git push origin した時にデ
フォルトで LibreOfce の Gerrit サーバーへ送るよう Git の設
定を追加します
;; push した時に LibreOffice の Gerrit サーバーへ送るよう設定します
$ git config remote.origin.pushurl ssh://logerrit/core
…
③ ライセンス宣言を行う
TDF Wiki 「 Developers and Contributors list 」に従ってラ
イセンス宣言を開発メーリングリストに送付する
https://wiki.documentfoundation.org/Development/Developers
Kohei さんによる日本語の説明 ( メールの後半部分)
http://listarchives.libreoffice.org/ja/discuss/msg02262.html
メールを送るだけ。紙にサインする必要とかはない。シンプル!
ライセンス宣言は、パッチを送る直前でよい ( と思う )
Developers and Contributors list への名前の追加は、良くわかっている人に
お願いした方が良いかも
Example Statement
All of my past & future contributions to LibreOffice may be
licensed under the MPLv2/LGPLv3+ dual license.
パッチを送ってみた:送付編
ビルドエラー修正パッチを master に取り込んで貰う
35
LibreOffice Productivity Suite
全体の流れ ( 私のやり方 )
①バグ報告を行う
②バグの原因を探す
③バグ修正のためのブランチを作成する
④バグ修正作業を行う
⑤ビルドの確認、動作の確認を行う
⑥パッチを Gerrit に送る
⑦master に修正が取り込まれたことを確認する
36
LibreOffice Productivity Suite
事前のお断り
説明の都合で、この後の例の中に master 以外のブランチ
(libreofce-4-2 など ) の修正を行っている部分があります
が、その時はブランチ名を適宜 master に読み替えてください
① バグ報告を行う
LibreOfce のバグは Bugzilla というシステムで管理されます
ビルドエラー修正の場合、バグ報告は省略可能と思います
誤字、脱字を直すようなもの
バグ修正のためにバグ報告をされる方はこの資料がお勧め
「 LibreOfce でバグを見つけたときの報告方法」小笠原氏
http://www.slideshare.net/naruoga/how-to-report-bugs-of-libreoffice-in-japanese-libre
office
② バグの原因を探す (1/7)
ソースコードやログを調査します
ビルドエラーの場合、原因が直ぐ分かることも多々あります
$/opt/lo/bin/make
...
F:/lo4mas/core/i18npool/qa/cppunit/test_breakiterator.cxx(798) : error
C2065: 'LAO' : 定義されていない識別子です。
[build CUT] sal_osl_setthreadname
F:/lo4mas/core/i18npool/qa/cppunit/test_breakiterator.cxx(798) : error
C2070: ''unknown-type'': sizeof オペランドが正しくありません。
...
make[1]: ***
[F:/lo4mas/core/workdir/CxxObject/i18npool/qa/cppunit/test_breakiterator.o]
Error 2
make[1]: *** Waiting for unfinished jobs....
Makefile:219: recipe for target 'build' failed
make: *** [build] Error 2
② バグの原因を探す (2/7)
LibreOfce のソースコードを調べたい時は
http://opengrok.libreofce.org/が凄く便利です
OpenGrok は JAVA で書かれたソースコード検索エンジン
② バグの原因を探す (3/7)
エラーの原因になっているソースコードを表示します
② バグの原因を探す (4/7)
この行でコンパイルエラー
② バグの原因を探す (5/7)
ソースコード変更の履歴を表示し、新旧のソースコードを比
較してみます
② バグの原因を探す (6/7)
コードが追加されています
② バグの原因を探す (7/7)
コメントに注目
Windows 日本語環境 & Visual Studio ではコンパイルエラーが出ます
③ バグ修正用のブランチを作成する
Git のコマンドを使ってブランチを作成します
$ ./g checkout -b fix-windows-build
Switched to a new branch 'fix-windows-build'
$ git branch
* fix-windows-build
Master
$
master 追跡ブランチ
( 普段はこちらで
 ビルドを行う )
バグ修正用 fix-windows-build
ブランチ
( ここでバグ修正を行う )
46
LibreOffice Productivity Suite
④ バグ修正作業を行う
テキストエディタでソースコードを編集する
コメント行を 1 行削除しただけ
⑤ ビルドの確認、動作の確認を行う (1/2)
ビルドエラー修正の場合、ビルドが通ることが動作確認にな
ります
;; モジュールをビルドしエラーが解消した確認します
$ /opt/lo/bin/make i18npool
…
;; 全体をビルドしエラーが解消したか確認します
$ /opt/lo/bin/make
…
;; make clean 後に全体をビルドしエラーが解消したか確認します
$ /opt/lo/bin/make clean && /opt/lo/bin/make
…
⑤ ビルドの確認、動作の確認を行う (2/2)
補足:モジュールについて
core 配下の各ディレクトリがモジュールに対応
⑥ パッチを Gerrit に送る (1/11)
まず、修正をコミットします
$ git add i18npool/qa/cppunit/test_breakiterator.cxx
…
$ git commit
⑥ パッチを Gerrit に送る (2/11)
コミットログの入力
⑥ パッチを Gerrit に送る (3/11)
Gerrit にパッチを push します
TDF Wiki に習ってコマンドを実行します
;; Gerrit にパッチを push します
$ git push origin fix-windows-build:refs/for/master
…
パッチを push
開発用 PC
LibreOffice の
Gerrit サーバー
( インターネット上 )
⑥ パッチを Gerrit に送る (4/11)
Gerrit に送られた
master に読み替えてください
⑥ パッチを Gerrit に送る (5/11)
レビュー、検証を待っている状態
⑥ パッチを Gerrit に送る (6/11)
レビューが始まった ( コメントが付く )
メールでも通知されます
⑥ パッチを Gerrit に送る (7/11)
Eike Rathke さんのコメント
Eike Rathke
Patch Set 1: This need some tweaks before it is merged
The comment breaks the build in what sense? Rather than loosing the comment
that actually is the clear text of the test data I'd prefer if there were some means
that convinced MSVC to not bail out on it.
Eike Rathke
Patch Set 1:
Maybe it helps to put the comment line in an #if 0 block?
「どうゆうこと?」というニュアンスなのだろうか orz...
⑥ パッチを Gerrit に送る (8/11)
Tor Lillqvist さんのコメント
Patch Set 1:
I don't think it's the localised or not version of MSVC that matters, but the system
codepage.
Apparently MSVC insists that C++ source code is a valid byte sequence in the system
codepage, and this UTF-8 comment is not in yours.
Or something like that...
I guess you don't want to change your system codepage...?
こちらの伝えたいことを書いてくれている
嬉しい!!
⑥ パッチを Gerrit に送る (9/11)
Tor Lillqvist さんに回答
Tomofumi Yagi
Patch Set 1:
It is a problem of the system code page. And I do not want to change
the system code page. Because many messages on Windows will not be localized.
Please refer, fdo#66395 - Compilation error in Windows with UTF-8 unfriendly codepage
fdo#66246 - compile failure for Chinese developers
fdo#68790 - Other: Build fails on Windows when system locale is "Japanese(Japan)"
先人の偉業を引用しつつ説明
( 長文を書かないための技 )
⑥ パッチを Gerrit に送る (10/11)
Eike Rathke さんに回答
Thank you for committing, and I'm sorry for the late reply.
#if 0 block around the comment causes an another build error(fatal error
C1004: Unexpected End Of File Found).
Build Error message is here.
F:/lo4mas/core/i18npool/qa/cppunit/test_breakiterator.cxx(725) : warning
C4819: ファイルは、現在のコード ページ (932) で表示できない文字を
含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で
保存してください。
F:/lo4mas/core/i18npool/qa/cppunit/test_breakiterator.cxx(961) : fatal error
C1004: 予期せぬ EOF が検出されました。
Tor さんへ回答しつつ、 Eike さんに回答するために必死でビルドしてました
( 二人とも、レスポンスが凄く早かった )
⑥ パッチを Gerrit に送る (11/11)
レビューと検証の終了 ( 承認された )
自分が送ったパッチが LibreOfce のソースコードに取り込まれます
master に読み替えてください
⑦master に修正が取り込まれたことを確認する
(1/3)
LibreOfce のリポジトリ( Freedesktop.org にある)を見て
みます
⑦master に修正が取り込まれたことを確認する
(2/3)
⑦master に修正が取り込まれたことを確認する
(3/3)
最新の master をビルドし問題が修正されたことを確認しま
す
ビルドエラー修正の場合、ビルドエラーが解消しビルドが完了する事を確認
します
master から後に分岐する安定版にも、この修正が入ります
;; ブランチを master に切り替えます
$ ./g checkout master
Switched to branch 'master'
;; ワークツリーを最新の状態に更新します
$ ./g pull
…
;; 念のためにログを確認します
$ git log
...
;; master をビルドします
$ /opt/lo/bin/make
自分でバグ修正パッチを送ってみてわかった事
そして皆さんに伝えたいこと
開発コミュニティの人達は親切すぎるくらい親切
だった (1/3)
Gerrit にパッチを送れば、ちゃんとレスポンスがある
カタコトの英語にも関わらず、ちゃんと読んでくれている
わかりやすく丁寧な説明を心掛けてはいます ( 自分なりに )...
私の場合、コミットログや Bugzilla のコメントを書くのに一番時間を使います
生産的なアドバイスが貰える
どうしてこうしないの、ここがおかしいよ、等々
Gerrit にパッチを送ったのに放置されたという経験は ( 私は ) ありません
開発コミュニティの人達は親切すぎるくらい親切
だった (2/3)
こんなサプライズも
Norbert Thiebaud さんの「パッチを送ってくれてありがとう」メール
すごく驚いた&感動した
開発コミュニティの人達は親切すぎるくらい親切
だった (3/3)
パッチを取り込んで貰える
パッチに不備があっても、レビューで指摘された通りに直せば取り込んでくれ
る
結構、大胆に取り込んで貰えるように思います
仮に問題が出ても、あっという間に誰かが直してしまう ( 速さは正義的な ...)
ビルドエラー修正、些細なバグ修正等の極小パッチしか送ったことがない
が、全てマージして貰えてて、今のところ拒否されたことはない
伝え聞く OpenOfce.org の頃の閉鎖的な開発体制について
パッチを取り込んで貰いにくいという噂があった
「LibreOfceの発足から3ヶ月」(Kohei のどうでもいい話 )
日本語環境での動作を改善するパッチが一部取り込まれてない事実
開発のために必要な情報は全て公開されている
(1/2)
wiki.documentfoundation.org/Development
https://wiki.documentfoundation.org/Development
ここに全部書いてある
ソースコードのリポジトリ
http://cgit.freedesktop.org/libreofce/
バグトラッキング
https://www.libreofce.org/bugzilla/
メーリングリスト ( アーカイブ )
http://www.libreofce.org/get-help/mailing-lists/
開発のために必要な情報は全て公開されている
(2/2)
ソースコード検索
http://opengrok.libreofce.org/
パッチレビュー
https://gerrit.libreofce.org/
誰でも開発の状況を参照できるし、誰でも開発に参加できる
日本のコミュニティの人達から教えて貰った
日本語でコミュニケーションできる日本語のメーリングリス
トがある
http://ja.libreofce.org/get-help/mailing-lists/
この中の discuss@ja.libreofce.org で開発に関する相談に乗って貰った
コードの分からない部分に関する相談
英語に関する相談
コーディングスタイルなど、パッチを送った際に引っかかりそうなところのアド
バイスをいただいた
チャレンジの姿勢を見せれば、 Kohei さんを筆頭に誰かが教えてくれた
コミュニティの方々に相当助けて貰っています ( 感謝 )
Kohei さんの存在は日本の LibreOfce コミュニティにとって非常に大きい
IRC の日本語チャンネルもある
実は、私は参加したことがないので様子がわかりません ( ごめんなさい ) 。
初心者は LibreOfce のビルド&ビルドエラー解消
から始めてみよう
大事だと思うのでもう一度 ...
LibreOfce のビルド&ビルドエラー解消から始めるメリット
開発に参加するための基本中の基本スキル
Easy Hacks より Easy なタスク
初心者でも、少しずつプロジェクトへの理解を深めていくことができる
コア開発者にとっては退屈で煩雑なタスクだが、初心者にとってはプロジェ
クトへの理解を深めるための大事なタスクだと思います
ソースコードを読もう
折角のオープンソース
ソースコードが読めれば、結構何とかなる
OpenGrok はとにかく便利です
http://opengrok.libreofce.org/
インターネットに繋がるなら環境なら使える
スマートフォン上でもソースコードが閲覧/検索可能
他の方のコミット内容を見よう! ( 自戒を込めて )
http://cgit.freedesktop.org/libreofce/core/
情報の宝庫。勉強になる
「 2013 年における LibreOfce の開発をログから振り返る」安部氏
http://fixedpoint.jp/2013/12/22/libreoffice-2013-retrospect.html
手を動かそう (1/2)
LibreOfce 上で日本語を使っていて発生する問題は、日本語
を使う人々が自ら解決する必要がある
例えば「縦書き」の問題
たとえコア開発者であっても、日本語を使わない人には、何が問題かすら
理解できないこともある
日本人のほとんどが RTL 言語 ( 右から左へ書く言語 ) における問題がわか
らないのと同じ
UI やヘルプの「翻訳」もそうですね
手を動かそう (2/2)
日本人の開発者は ( 現状 ) とても少ない
http://www.libreofce.org/about-us/credits/を見てみると ...
最近アクティブな方は、 Kohei さん、 Abe さん、 Kurosawa さん、
Mogi さんと Apache OpenOfce で頑張っておられる Uchino さん
くらい (?)
LibreOfice にパッチをマージされたことのある日本人は総勢 14 人程度
( 開発者総数が 748 人とすれば約 1.87%) と、とても少ない
これは寂しい、困った ...
ある意味、チャンス?
ちょっと頑張れば、先頭集団 ? に入って最前線の方々と一緒にやれる ( か
も )
これからチャレンジする人に教える私の失敗 (1/6)
Bug 77683 - UI: The color in the toolbar buttons doesn't
change when we use the Floating Font/Background/Highlig
ht Color Toolbar
の場合
1 回目のクリック 2 回目のクリック
こんなバグでした
これからチャレンジする人に教える私の失敗 (2/6)
修正したら、こんな指摘が ...
直前のこのコミット
そうなの?
これからチャレンジする人に教える私の失敗 (3/6)
結局、自分が修正した部分も含めて丸ごとリファクタリング
され、問題がごっそり解決した
お騒がせしました
これからチャレンジする人に教える私の失敗 (4/6)
Bug 37129 - Dotted and Dashed table borders are not dra
wn correctly
の場合
開発メーリングリストにて
おかしいよね。どうして?という鋭いツッコミ
ちょっと焦る ...
これからチャレンジする人に教える私の失敗 (5/6)
何故そういう修正をしたのか、頑張って説明しました
自分の書いたコードの説明するのはプログラマとしては当たり前
曲がりなりにもこの時は収束した
しかし、後々ボーダーライン関連は Kohei さんが ( この問題
も含めて ) 全面的に書き直すことに ...
ボーダーライン修正の詳細は、 Kohei さんのブログ記事を読んでみてくださ
い (The art of drawing border lines)
再度、お騒がせいたしました
これからチャレンジする人に教える私の失敗 (6/6)
こんなんで大丈夫か?と思いつつも懲りずに続けています
同じ失敗は繰り返さないように勉強しつつ ...
これまで見てきたあなた、自信が湧いてきたでしょう?
どうせやるなら楽しくやろう!!
私も不安なことは多いです
コア開発者に迷惑を掛けてないか?
カタコトの英語が通じているか?
知らず知らずに無礼なことをしてないか?
でも、取って食われる訳じゃないし、単に相手にされなくなるだけ
どうせやるなら楽しくやろう!!
楽しくなければ続かない ( 当然ですが ...)
プロにはプロの、アマチュアにはアマチュアのなりのやり方が多分ある
個人の OSS 開発 = 趣味の盆栽いじり論 ( 恩師の受け売り )
モチベーション再び
冒頭で敢えて言わなかったこと ...
質疑応答
もしお聞きになりたいことがありましたらどうぞ
All text and image content in this document is licensed under the Creative Commons Attribution-Share Alike 3.0 License
(unless otherwise specified). "LibreOffice" and "The Document Foundation" are registered trademarks. Their respective logos
and icons are subject to international copyright laws. The use of these therefore is subject to the trademark policy.
ご清聴ありがとうございました
83
LibreOffice Productivity Suite
参考文献 / Web ページ
LibreOffice: Hermenutical keys to a complex code-
baselibreoffice/core main, development code repository
Michael Meeks
https://people.gnome.org/~michael/data/2013-07-26-libreof
fice-code-structure.pdf
Welcome to the Review of the LibreOffice Conference 2013
http://conference.libreoffice.org/talks/2013/
Development/Code Overview
https://wiki.documentfoundation.org/Development/Code_
Overview
LibreOffice Easy Hacks
https://wiki.documentfoundation.org/Development/Easy_
Hacks
84
LibreOffice Productivity Suite
参考文献 / Web ページ
Linux 環境で LibreOffice をビルドしてみようかね by
Naruhiko Ogasawara
http://www.slideshare.net/naruoga/libreofficelinux?from_
search=12
Mac OS X での LibreOffice ビルド報告 Ver.2 ( 2014 年 2
月 10 日発表) by testnoda
http://www.slideshare.net/testnoda/lib-o-buildmacosx201
40210
LibreOffice を Windows 上でビルドする by Tomofumi Yagi
http://www.slideshare.net/tomofumiyagi/libreoffice-buildy
tmkndshortver
85
LibreOffice Productivity Suite
参考文献 / Web ページ
Gerrit Code Review LibreOffice
https://gerrit.libreoffice.org/
Setting yourself up for gerrit(TDF Wiki)
https://wiki.documentfoundation.org/Development/gerrit/s
etup
Developers and Contributors list(TDF Wiki)
https://wiki.documentfoundation.org/Development/Develo
pers
Kohei さんによるライセンス宣言の説明 ( 日本語 )
http://listarchives.libreoffice.org/ja/discuss/msg02262.html
How to report bugs of LibreOffice in Japanese / LibreOffice
の不具合を日本語で報告するには by Naruhiko Ogasawara
http://www.slideshare.net/naruoga/how-to-report-bugs-of-libr
eoffice-in-japanese-libreoffice
86
LibreOffice Productivity Suite
参考文献 / Web ページ
Gerrit Code Review LibreOffice
https://gerrit.libreoffice.org/
OpenGrok.libreoffice.org
http://opengrok.libreoffice.org/
Remove UTF-8 comment.(Gerrit Code Review Change
6847)
https://gerrit.libreoffice.org/#/c/6847/
LibreOffice main, development code repository
http://cgit.freedesktop.org/libreoffice/core/
87
LibreOffice Productivity Suite
参考文献 / Web ページ
「 LibreOffice の発足から 3 ヶ月」 (Kohei のどうでもいい
話
http://kohei-yoshida.blogspot.jp/2010/12/libreoffice3.html
Development(TDF Wiki)
https://wiki.documentfoundation.org/Development
Welcome to Bugzilla
https://www.libreoffice.org/bugzilla/
Mailing Lists
http://www.libreoffice.org/get-help/mailing-lists/
メーリングリスト ( 日本語 )
http://ja.libreoffice.org/get-help/mailing-lists/
88
LibreOffice Productivity Suite
参考文献 / Web ページ
fixedpoint.jp - 「 2013 年における LibreOffice の開発をロ
グから振り返る」
http://fixedpoint.jp/2013/12/22/libreoffice-2013-retrospect.
html
Credits
http://www.libreoffice.org/about-us/credits/
Bugous bug fix(Document Foundation Mail Archive)
http://nabble.documentfoundation.org/Bugous-bug-fix-td4
073889.html
「 THE ART OF DRAWING BORDER LINES 」 (Roundtrip
to Shanghai via Tokyo)
http://kohei.us/2014/01/17/the-art-of-drawing-border-lines/
89
LibreOffice Productivity Suite
参考文献 / Web ページ
Bug 73891 - UI color panel does not show the actual color
https://bugs.freedesktop.org/show_bug.cgi?id=73891
Bug 65675 - (mab4.2) LibreOffice 4.2 most annoying bugs
https://bugs.freedesktop.org/show_bug.cgi?id=65675
Bug 35862 - "Increase font" and "decrease font" could work
even if the selection contains...
https://bugs.freedesktop.org/show_bug.cgi?id=35862
Bug 37129 - Dotted and Dashed table borders are not
drawn correctly.
https://bugs.freedesktop.org/show_bug.cgi?id=37129
90
LibreOffice Productivity Suite
参考文献 / Web ページ
「 OpenOffice.org ソースコード探検」中本氏
http://bd.tank.jp/presentation/
「非公認 OpenOffice ハッカーズガイド - 1.1 」
https://code.google.com/p/ooo/source/browse/trunk/ooo-b
uild/www/hackers-guide-1.1-ja.html
「 LibreOffice の最新動向 - コミュニティとプロダクトの
面から」 by Naruhiko Ogasawara
http://www.slideshare.net/naruoga/osc2013-fk

More Related Content

What's hot

Ossで作成するチーム開発環境
Ossで作成するチーム開発環境Ossで作成するチーム開発環境
Ossで作成するチーム開発環境Tadahiro Ishisaka
 
最新のデスクトップアプリを使おう:Snap, Flatpak, AppImage
最新のデスクトップアプリを使おう:Snap, Flatpak, AppImage最新のデスクトップアプリを使おう:Snap, Flatpak, AppImage
最新のデスクトップアプリを使おう:Snap, Flatpak, AppImageNaruhiko Ogasawara
 
GitLabを骨までしゃぶりつくす@ゆるUniStudy#7
GitLabを骨までしゃぶりつくす@ゆるUniStudy#7GitLabを骨までしゃぶりつくす@ゆるUniStudy#7
GitLabを骨までしゃぶりつくす@ゆるUniStudy#7Wataru NOGUCHI
 
Sphinx customization for OGP support at SphinxCon JP 2018
Sphinx customization for OGP support at SphinxCon JP 2018Sphinx customization for OGP support at SphinxCon JP 2018
Sphinx customization for OGP support at SphinxCon JP 2018Takayuki Shimizukawa
 
LibreOffice, the free office productive suite and it's status of accessibilit...
LibreOffice, the free office productive suite and it's status of accessibilit...LibreOffice, the free office productive suite and it's status of accessibilit...
LibreOffice, the free office productive suite and it's status of accessibilit...Naruhiko Ogasawara
 
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」Yoshiki Shibukawa
 
Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料Nobuhiro Iwamatsu
 
Sphinx HTML Theme Hacks
Sphinx HTML Theme HacksSphinx HTML Theme Hacks
Sphinx HTML Theme HacksShoji KUMAGAI
 
Sphinxの使い方事例
Sphinxの使い方事例Sphinxの使い方事例
Sphinxの使い方事例Go Yamada
 
DockerでJupyter使おうぜ
DockerでJupyter使おうぜDockerでJupyter使おうぜ
DockerでJupyter使おうぜSatoshi Yazawa
 
20170527 inside .NET Core on Linux
20170527 inside .NET Core on Linux20170527 inside .NET Core on Linux
20170527 inside .NET Core on LinuxTakayoshi Tanaka
 
YoctoでLTSディストリを作るには
YoctoでLTSディストリを作るにはYoctoでLTSディストリを作るには
YoctoでLTSディストリを作るにはwata2ki
 
Moby Project (May 25, 2017, Tokyo)
Moby Project (May 25, 2017, Tokyo)Moby Project (May 25, 2017, Tokyo)
Moby Project (May 25, 2017, Tokyo)Akihiro Suda
 
Recent Information about LibreOffice
Recent Information about LibreOfficeRecent Information about LibreOffice
Recent Information about LibreOfficeMasataka Kondo
 
Introduce Toaster (Toasterのご紹介)
Introduce Toaster (Toasterのご紹介)Introduce Toaster (Toasterのご紹介)
Introduce Toaster (Toasterのご紹介)Hiroshi Sakate
 

What's hot (20)

Ossで作成するチーム開発環境
Ossで作成するチーム開発環境Ossで作成するチーム開発環境
Ossで作成するチーム開発環境
 
最新のデスクトップアプリを使おう:Snap, Flatpak, AppImage
最新のデスクトップアプリを使おう:Snap, Flatpak, AppImage最新のデスクトップアプリを使おう:Snap, Flatpak, AppImage
最新のデスクトップアプリを使おう:Snap, Flatpak, AppImage
 
GitLabを骨までしゃぶりつくす@ゆるUniStudy#7
GitLabを骨までしゃぶりつくす@ゆるUniStudy#7GitLabを骨までしゃぶりつくす@ゆるUniStudy#7
GitLabを骨までしゃぶりつくす@ゆるUniStudy#7
 
Sphinx customization for OGP support at SphinxCon JP 2018
Sphinx customization for OGP support at SphinxCon JP 2018Sphinx customization for OGP support at SphinxCon JP 2018
Sphinx customization for OGP support at SphinxCon JP 2018
 
LibreOffice, the free office productive suite and it's status of accessibilit...
LibreOffice, the free office productive suite and it's status of accessibilit...LibreOffice, the free office productive suite and it's status of accessibilit...
LibreOffice, the free office productive suite and it's status of accessibilit...
 
真Drone入門
真Drone入門真Drone入門
真Drone入門
 
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
 
Docker meetup tokyo_public_r001
Docker meetup tokyo_public_r001Docker meetup tokyo_public_r001
Docker meetup tokyo_public_r001
 
Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料
 
Sphinx HTML Theme Hacks
Sphinx HTML Theme HacksSphinx HTML Theme Hacks
Sphinx HTML Theme Hacks
 
Sphinxの使い方事例
Sphinxの使い方事例Sphinxの使い方事例
Sphinxの使い方事例
 
DockerでJupyter使おうぜ
DockerでJupyter使おうぜDockerでJupyter使おうぜ
DockerでJupyter使おうぜ
 
20170527 inside .NET Core on Linux
20170527 inside .NET Core on Linux20170527 inside .NET Core on Linux
20170527 inside .NET Core on Linux
 
Docker入門
Docker入門Docker入門
Docker入門
 
Moby Project
Moby ProjectMoby Project
Moby Project
 
YoctoでLTSディストリを作るには
YoctoでLTSディストリを作るにはYoctoでLTSディストリを作るには
YoctoでLTSディストリを作るには
 
今さら聞けない人のためのGitLabの始め方 Ubuntu編
今さら聞けない人のためのGitLabの始め方 Ubuntu編今さら聞けない人のためのGitLabの始め方 Ubuntu編
今さら聞けない人のためのGitLabの始め方 Ubuntu編
 
Moby Project (May 25, 2017, Tokyo)
Moby Project (May 25, 2017, Tokyo)Moby Project (May 25, 2017, Tokyo)
Moby Project (May 25, 2017, Tokyo)
 
Recent Information about LibreOffice
Recent Information about LibreOfficeRecent Information about LibreOffice
Recent Information about LibreOffice
 
Introduce Toaster (Toasterのご紹介)
Introduce Toaster (Toasterのご紹介)Introduce Toaster (Toasterのご紹介)
Introduce Toaster (Toasterのご紹介)
 

Similar to LibreOfficeコミュニティに不具合修正パッチを送ってみた

もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜Takashi Uemura
 
XPages開発におけるGit/GitHubの利用
XPages開発におけるGit/GitHubの利用XPages開発におけるGit/GitHubの利用
XPages開発におけるGit/GitHubの利用賢次 海老原
 
バージョン管理
バージョン管理バージョン管理
バージョン管理Misa Kondo
 
Mautic Meetup Tokyo #3 データベース不要CMS:Gravの紹介
Mautic Meetup Tokyo #3 データベース不要CMS:Gravの紹介Mautic Meetup Tokyo #3 データベース不要CMS:Gravの紹介
Mautic Meetup Tokyo #3 データベース不要CMS:Gravの紹介Kohei Nishikawa
 
20120324 git training
20120324 git training20120324 git training
20120324 git trainingTakeshi AKIMA
 
GitLab + Dokku で作る CI/CD 環境
GitLab + Dokku で作る CI/CD 環境GitLab + Dokku で作る CI/CD 環境
GitLab + Dokku で作る CI/CD 環境Kazuhiro Nishiyama
 
今さら聞けない人のためのGit超入門 GitLab 14対応版
今さら聞けない人のためのGit超入門 GitLab 14対応版今さら聞けない人のためのGit超入門 GitLab 14対応版
今さら聞けない人のためのGit超入門 GitLab 14対応版VirtualTech Japan Inc./Begi.net Inc.
 
Version Control System Tutorial バージョン管理システムチュートリアル
Version Control System Tutorial バージョン管理システムチュートリアルVersion Control System Tutorial バージョン管理システムチュートリアル
Version Control System Tutorial バージョン管理システムチュートリアルComputational Materials Science Initiative
 
Sinatraアプリをherokuにアップ
SinatraアプリをherokuにアップSinatraアプリをherokuにアップ
SinatraアプリをherokuにアップHiroshi Oyamada
 
Prometheus meetup tokyo#3 slide
Prometheus meetup tokyo#3 slidePrometheus meetup tokyo#3 slide
Prometheus meetup tokyo#3 slidecosmo0920
 
Twitterのデータを取得する準備
Twitterのデータを取得する準備Twitterのデータを取得する準備
Twitterのデータを取得する準備Takeshi Arabiki
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力ThinReports
 
Nutanix エンジニアのための Git 入門 :序
Nutanix エンジニアのための Git 入門 :序Nutanix エンジニアのための Git 入門 :序
Nutanix エンジニアのための Git 入門 :序Wataru Unno
 
WindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティスWindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティスRyo Sumasu
 
GitHub勉強会~事前準備~
GitHub勉強会~事前準備~GitHub勉強会~事前準備~
GitHub勉強会~事前準備~Shintaro Mizuno
 

Similar to LibreOfficeコミュニティに不具合修正パッチを送ってみた (20)

Gitの紹介
Gitの紹介Gitの紹介
Gitの紹介
 
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
 
XPages開発におけるGit/GitHubの利用
XPages開発におけるGit/GitHubの利用XPages開発におけるGit/GitHubの利用
XPages開発におけるGit/GitHubの利用
 
バージョン管理
バージョン管理バージョン管理
バージョン管理
 
Mautic Meetup Tokyo #3 データベース不要CMS:Gravの紹介
Mautic Meetup Tokyo #3 データベース不要CMS:Gravの紹介Mautic Meetup Tokyo #3 データベース不要CMS:Gravの紹介
Mautic Meetup Tokyo #3 データベース不要CMS:Gravの紹介
 
20120324 git training
20120324 git training20120324 git training
20120324 git training
 
GitLab + Dokku で作る CI/CD 環境
GitLab + Dokku で作る CI/CD 環境GitLab + Dokku で作る CI/CD 環境
GitLab + Dokku で作る CI/CD 環境
 
Git (運用編)
Git (運用編)Git (運用編)
Git (運用編)
 
Git (実践入門編)
Git (実践入門編)Git (実践入門編)
Git (実践入門編)
 
今さら聞けない人のためのGit超入門 GitLab 14対応版
今さら聞けない人のためのGit超入門 GitLab 14対応版今さら聞けない人のためのGit超入門 GitLab 14対応版
今さら聞けない人のためのGit超入門 GitLab 14対応版
 
今さら聞けない人のためのGit超入門 2019/11/21
今さら聞けない人のためのGit超入門 2019/11/21今さら聞けない人のためのGit超入門 2019/11/21
今さら聞けない人のためのGit超入門 2019/11/21
 
Version Control System Tutorial バージョン管理システムチュートリアル
Version Control System Tutorial バージョン管理システムチュートリアルVersion Control System Tutorial バージョン管理システムチュートリアル
Version Control System Tutorial バージョン管理システムチュートリアル
 
Sinatraアプリをherokuにアップ
SinatraアプリをherokuにアップSinatraアプリをherokuにアップ
Sinatraアプリをherokuにアップ
 
Prometheus meetup tokyo#3 slide
Prometheus meetup tokyo#3 slidePrometheus meetup tokyo#3 slide
Prometheus meetup tokyo#3 slide
 
Git for beginners
Git for beginnersGit for beginners
Git for beginners
 
Twitterのデータを取得する準備
Twitterのデータを取得する準備Twitterのデータを取得する準備
Twitterのデータを取得する準備
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
 
Nutanix エンジニアのための Git 入門 :序
Nutanix エンジニアのための Git 入門 :序Nutanix エンジニアのための Git 入門 :序
Nutanix エンジニアのための Git 入門 :序
 
WindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティスWindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティス
 
GitHub勉強会~事前準備~
GitHub勉強会~事前準備~GitHub勉強会~事前準備~
GitHub勉強会~事前準備~
 

Recently uploaded

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 

Recently uploaded (8)

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 

LibreOfficeコミュニティに不具合修正パッチを送ってみた