Scintilla icon Scintilla

既知の瑕疵と実行すべき事Bugs and To Do List

Scintilla にある瑕疵Scintilla Bugs

イタリック体でスタイルが終わっていると最後の文字が切り落とされることがあります。12 ポイントの Verdana でイタリック体を使うと、イタリック範囲の最後にある二重引用符 ( " ) が半分しか見えず、単引用符 ( ' ) は全く見えなくなります。完全な解決は困難です。Times New Roman のようなフォントを文字列に割り当てておくなどの方法で回避するのがよいでしょう。特定の環境でイタリック範囲の最後に多めの余白をとっておくという方法がありますが、他の環境ではうまくいきません。

(訳注: kluge って何?)

At the end of italics style runs characters can be chopped off. An example is using Verdana 12 point italics for strings makes an ending double quote half visible and an ending single quote invisible. This is hard to solve completely, may be better to avoid these situations by, for example, choosing a font like Times New Roman for strings. There is a specific kluge for the end of line which adds some room for italics but this does not work elsewhere.

いくつかのフォントで太字の上をドラッグするとゆらゆら揺れているように見えます。これは文字をまとめて描画するときとその一部だけを描画するときとで大きさが変わってしまうことがあるからです。

Dragging over bold text in some fonts will ripple because of the difference in size between drawing all of a string at once and drawing it in parts.

読み出し専用モードで文字入力や挿入・削除などの操作を行うとキャレット(だけ)が動きます。

In read-only mode the caret moves when you type or perform other actions that would insert or remove text if not in read-only mode..

テキストがウィンドウの端近くへドラッグされたときの自動スクロールが未実装です。

Automatic scrolling when text dragged near edge of window.

GTK+ 版にある瑕疵GTK+ Version Bugs

(訳注: 原文でもここに項目が記されていない。)

Scintilla で解決すべき事Scintilla To Do

折りたたみを実装していないプログラミング言語があります。また他の言語の折りたたみコードを継承している性能の低い折りたたみ機能しかない言語があります。

Folding for languages that don't have it yet and good folding for languages that inherited poor folding from another languages folding code.

単純なパターンに基づく文字装飾。

Simple pattern based styling.

現時点では高さの異なる行は各行の一番高い文字に合わされており、考え得る最も高い修飾に合わせているのではありません。

Different height lines based upon tallest text on the line rather than on the tallest style possible.

COBOL 上の ASP+ のように合成して使われる言語の文法解析を、解析器の結合で実装。

Composition of lexing for mixed languages (such as ASP+ over COBOL) by combining lexers.

GTK+ での印刷機能。Postscript か Gnome の利用によることになるでしょうか。

Printing support on GTK+. Maybe Postscript output or use Gnome?

HTML 要素の内容を折りたたむことなどに使うストリームの折りたたみ。

Stream folding which could be used to fold up the contents of HTML elements.

視界状態を持続して復帰させやすくする。現在の折りたたみをストリームか点に放り込むとか。(訳注: 意味がよくわかりません)

Persisting view state such as current folding into a stream or blob so it is easy to restore.

行を上下に移動するキーや選択された行の上下移動。

Move line up and move line down keys or move selected lines up / down.

他の背景色を上書きしない「透明な」キャレット行。

Transparent caret line that doesn't override other background colours.

行の強調や折りたたみ余白部の印刷。

Printing of highlight lines and folding margin.

GRASP のように編集部内に流れ図を実装。

Flow diagrams inside editor similar to GRASP.

Scintilla の VCL コンポーネントラッパの提供。これにより Delphi や Borland C++ Builder で利用可能になる。実装の一つが利用可能となっています。

A VCL component wrapper around Scintilla so it can be used with Delphi or Borland C++ Builder. There is some work on this available.

MacOS X 上の実装。

Port to MacOS X.

Haskell and Smalltalk など他言語用の解析器。Perl のサブセットの解析器を作ってより確実に Perl を理解できるようにする。Ruby と TCL の解析器の性能向上。

More lexers for other languages such as Haskell and Smalltalk. Make the subset Perl lexer understand more Perl. Improve the Ruby and TCL lexers.

水平スクロール範囲の自動計算。

Automatically calculated range for horizontal scrolling.

行末に仮想の空白を置いて、本来文字のないところへもキャレットを移動可能にする。矩形選択処理が簡単になるかもしれない。

Virtual space at the end of lines so the caret can be moved beyond the end of lines with the cursor keys. May also make rectangular operations easier to perform.

SciTE で解決すべき事SciTE To Do

プラグインを通して、正規表現にしっかり対応する。

Good regular expression support through a plugin.

選択範囲を変換するツールを使えるようにする。字下げとか並べ替えとか。

Allow tools to transform the selection, performing an operation like indentation or sorting.

全ての特性において、規定済みのものだけでなくファイル名に基づく選択ができるようにする。

Allow file name based selection on all properties rather than just a chosen few.

FTP サーバから開いたり保存したりできるようにする。

Opening from and saving to FTP servers.

ファイルを開いた時点で注釈を折りたたんでしまう機能と設定。

Setting to fold away comments upon opening.

ユーザ定義の折りたたみ範囲。

User defined fold ranges.

メッセージボックスを全く表示しない「おだまんなさい」モードの実装。

Silent mode that does not display any message boxes.

私が実装するつもりのない機能Features I am unlikely to do

私の好きでない、あるいは私が実装するに足る重要なもの、と考えていない機能は次の通りです。しかしながら、実装コードの提供は歓迎いたします。

These are features I don't like or don't think are important enough to work on. Implementations are welcome from others though.

終了時にメニューの変更を保存する機能。

Automatically saving modified menu shortcuts on exit.

Windows でのマウスによる視界移動。マウスホイールをクリックして、その後マウスの動きに応じて可視範囲が移動するもの。

Mouse wheel panning (press the mouse wheel and then move the mouse) on Windows.

行末文字や特定のエンコードを選択して保存できるような、保存ダイアログへのオプションの付加。

Adding options to the save dialog to save in a particular encoding or with a chosen line ending.

今後の方向性Directions

開発の中心は Scintilla で、これに最大の注力がなされます。SciTE は新しい機能を獲得していきますが、私の生活が楽になるときに限られます。SciTE を Visual Cafe のような全機能を有した巨大な統合開発環境に発展させるつもりはありません。私が現時点で実装しないと決めているのは、プロジェクト管理関連と設定のためのダイアログです。Windows 用の SciTE は Director インタフェイスを持っており、これによって SciTE の外部にあるプロジェクト管理アプリケーションとの通信ができます。

The main point of this development is Scintilla, and this is where most effort will go. SciTE will get new features, but only when they make my life easier - I am not intending to make it grow up to be a huge full-function IDE like Visual Cafe. The lines I've currently decided not to step over in SciTE are any sort of project facility and any configuration dialogs. SciTE for Windows now has a Director interface for communicating with a separate project manager application.

コードの寄付に興味を持たれている方でも、環境非依存のコードを作ろうとする必要はありません。あなたの環境用のコードを作って頂ければ私が他の環境用に再実装し、あるいは「何も起こらない」ことを保証するようにします。

If you are interested in contributing code, do not feel any need to make it cross platform. Just code it for your platform and I'll either reimplement for the other platform or ensure that there is no effect on the other platform.