Source Code Viewer PHP
概要
・PHP + GeSHi で書かれた、ソースコードビューワー CGI を作りました。
・Linuxサーバー上の各種プロジェクトのソースコードを言語ごとにシンタックスハイライトの色分けで表示することが出来ます。
・一応検索も可能です。
設置方法:
・まず、Apache2 + PHP8 が稼働している Linuxサーバー環境があるものとします。
・例示として、このPHPプログラムを
/var/www/html/pub/viewer/
に展開してください。
・次に、閲覧させたい各種プロジェクトのルートディレクトリを設定します。
例示として、
/var/www/html/pub/Src/
ディレクトリを作成して、その下に
<プロジェクト名>/<プロジェクトのファイル(ディレクトリ含む)>
を配置します。
<プロジェクト名> のディレクトリは、シンボリックリンクでも大丈夫です。
・設置したら、適当なブラウザでアクセスします。
使い方:
・例示として、
http://サイトURL/pub/viwer/v.php にアクセスします。
- 画面上に、以下のような表示が出ます。
===========================================
□一覧 /プロジェクト名/サブディレクトリ/ファイル名/ [ 検索窓 ]
===========================================
その下に、プロジェクト一覧が出ますので、クリックして辿ってください。
□一覧 ボタンの使い方
- □ ・・・ プロジェクト一覧に戻ります。
- 一覧 ・・・ プロジェクト内のファイル一覧に戻ります。
- /プロジェクト名/サブディレクトリ/ファイル名/ ・・・ どれかをクリックするとそのディレクトリに移動します。
その他の機能
・pandoc がLinuxにインストールされている場合は、
拡張子 .md のファイルのビューワーとしてpandoc が使われます。
・ソースコード表示時の行番号にはすべてアンカーが付いていますので、
Pukiwiki等に行番号のリンク先を貼ることによって、ポインタとして使用できます。
・githubに同じソースが存在していて、リンクが欲しい場合は、config.php の
$git_url にgithubへのリンクURLを記述すると、そこへ参照するためのボタン
が現れるようになっていますが、おそらく多少の調整等が必要かもしれません。
単なるソースコードビューワーって、何がうれしいの?
・どのソースの何行目、というポインタがURLになるので、ブックマークやWiki等に貼りやすい。(メモ代わりになる)
・エディタで開く場合と違って、間違ってソースを触ってしまう心配がない
・エディタの場合、プログラムを閉じてしまうと大抵はどのソースを弄っていたのかの情報を忘れてしまうけれど、Webブラウザだと頑張れば保持したままに出来るし、エディタと併用しながらソースを追いかける用途には適している気がする・・・気がするだけだけどね。
・携帯端末からも閲覧できる。
(と言うか、Android用のSourceCodeViewerというアプリを最初使っていたのですが、携帯端末にソースを転送するのが面倒くさいのと、やっぱり使い勝手が悪いので、サーバーサイドに移行しました。)
・GitHubでもいいんじゃないか???
・---> GitHubだと、publicソースを全部見れるのはいいけれど、機能が多すぎて微妙にブラウジングには適さない(かも)個人の主観です。
ライセンス:
GeSHi に全面的に依存しているので、 GeSHi のライセンスに準じます。
(このリポジトリは GeSHi を含んでいます)
なお、PHP8に対応するために、GeSHiのソースに僅か数行の修正を加えさせていただきました