高見知英の技術ログ

技術関係のログをQiitaから移行してきました。プログラミングのほか、使っているアプリの細かい仕様についてなど書いていきます。

Lazarusってなんぞや

このブログはLazarus(FreePascal)アドベントカレンダー1日目の記事です。

qiita.com

さて、今回は以前もちょこっと話題にしたLazarusという環境について2,3書いてみようと思い、勢いでこのカレンダーを立ち上げました(DelphiアドベントカレンダーはあるけどDelphi言語を使うわけではないからDelphiのほうではないですしね…)

Lazarusとは

Lazarusとは、現在Embarcaderoが販売しているDelphiという開発環境で扱う、Delphiという言語の元になった言語*1Pascalのもう一つの潮流、FreePascal用の開発環境です。

昔のDelphiに割とよく似た構成をしており、Delphiを過去使ったことがある人はまあ迷うことなく使えるでしょう。

f:id:TakamiChie:20211129084007p:plain
Lazarusスクリーンショット

言語としてもだいぶDelphiと似通っており、とりあえずこれまたDelphiを使ったことがある人ならばそこまで悩むことなく使えると思います。

Delphi6とかそのへんとおなじ水準です。割と古い記法が使えます。無名関数もジェネリクス(配列などの型指定)もできないし、GCもありません。ただまあ、LCL(DelphiVCLみたいなもの)がまともに使えるのでまあまあ使える といった感じ。

YouはどうしてLazarusを?

なんでまたLazarusなんてマイナーな環境を使ったか というと、だいたい以下のような理由で

  • PCで常駐型のアプリケーションを作ろうと思ったため(PythonでもGUIは作れるがさすがにそれだと起動に時間がかかりすぎる)
  • C#などだとVisual Studioありきになってしまうが、SSD容量の問題でVisual Studioが入らないのと、以前Visual Studioを使ったときにアップデート地獄*2に悩まされたことからあまり使いたくない
  • かといって本家DelphiのCommunity Editionは初期のビルド対象が今更Win32で、さすがにそれはないだろと思ったこと(とはいえLazarusが64ビット対応しているかというとそういうわけではないかも)
  • 昔ながらのDelphiっぽい環境で開発を行ないたい気分も少しあった

ということで、とりあえずこれを使ってアプリを作ってみよう と思い立ったわけです。

Lazarusのインストール

とりあえずLazarusをインストールするには、Lazarusのサイトより使っているOSのパッケージをダウンロード

www.lazarus-ide.org

Chocolateyをお使いの場合choco install -y lazarusでもいけます。最近wingetでもインストールできるらしい。

Lazarus環境の日本語化

UI部分の一部しか日本語化できないため、別に日本語化と言えるほどカッコいいものではありませんが、Lazarusの環境は設定より日本語化できます。

  • メインメニュー>Tools>Options
  • 設定の検索で「Language」と入力
  • Environment>Generalを選択
  • 右ペインのLanguageコンボボックスからjaを選択
  • 「次に表示されるオブジェクト」から日本語化されるようなので、Files>RestartでIDEを再起動

f:id:TakamiChie:20211129093135p:plain
Lazarusの日本語設定

作ったものはこんな感じ

とりあえず作ったものはこんな感じです。

github.com

いけそうなときは0000Studioで開発作業を配信していますので、覗いていただけると幸いです。

*1:たしかBorlandが開発していた当初、「これはObjectPascalではなくDelphi言語だ」みたいなことを書いている記事があった気がするのでそう書く

*2:起動する度にIDEのなんらかのアップデートにより作業が止まる