公開
lil-terminal から直接データベースを操作
SSH なしで MySQL/MariaDB、PostgreSQL、Redis、SQLite、MongoDB に接続できます。各エンジンは専用ドライバーを保ち、db は現在のセッションで選んだドライバーへの短い入口になります。
mysql、postgresql、redis、sqlite、mongodb はデータモデルが異なるため独立したままです。共通化するのは、接続、確認、検索、エクスポート、書き込み、ダンプ、復元など意味のある操作だけです。
認証情報は非表示のパスワード入力から渡され、操作は指定したデータベースアカウントの権限で実行されます。本番環境では権限を絞ったアカウントとバックアップが安全です。
外部サーバーなしで試すには db と sqlite をインストールし、/sandbox/ のサンプル店舗データベースを使えます。
install db sqlite
db sqlite | db -c \sandbox\db\shop.sqlite | db -t | db -n products 5
install mysql postgresql redis mongodb
公開
パスを繰り返さずに現在のファイルを操作
$ は最後に開いた、作成した、または書き込んだファイルを指します。ファイル名だけを入力した場合も、拡張子に合うインストール済みツールで開けます。
たとえば mf scratch.json の後は、code $、json $、del $ で同じファイルを続けて操作できます。形式専用モジュールは汎用エディターより優先され、ファイル名を入力しただけでモジュールが自動インストールされることはありません。
ini、json、xml、yml、toml、conf、properties は構造化ファイルを直接扱い、img は一般的な画像の確認、サイズ変更、変換を行います。必要なツールだけをインストールできます。
これらの短縮操作は Core の機能です。古い環境で認識されない場合は lil.php を現在の Core に置き換えてください。upgrade はモジュールを更新しますが Core ファイルは置き換えません。
mf scratch.json
code $
app.yml
json $ -f "pass" -k
json $ -w user.password : "Ed1g!fs:13od"
img \sandbox\images\photo.jpg
公開
入力前に現在のディレクトリを確認
コマンド欄が空のとき、現在の作業ディレクトリを控えめなヒントとして表示します。パスワード欄にも値を隠したままローカライズされたヒントを表示します。
ディレクトリ表示はターミナルのセッションに追従します。cd やコマンド列で作業ディレクトリが変わると、次の空のコマンド欄に新しいパスがすぐ表示されます。これは 入力案内 にすぎず、コマンドや履歴には入りません。
公開
@command:実行し、不足していればインストール
対話コマンドの先頭に @ を付けると、必要なモジュールがなければ lil-terminal が標準リポジトリからインストールし、そのまま元のコマンドを実行します。
コマンドがすでに使える場合はリポジトリへアクセスせず、すぐ実行されます。未導入のコマンドには通常の公開 Base パッケージを使い、@read や @download などの エイリアス は所有モジュールへ解決されます。
@command は対話操作専用です。.lil スクリプトでは依存関係を明示したままにし、自動処理の予測可能性を保ちます。
@mf notes.txt
@curl https://example.com -I
@read README.md
公開
> でコマンド結果をファイルへ保存
Core の 1 つの演算子で、結果を画面に残したまま同じテキストをファイルへ書き込めます。
dns google.com > save.log は標準で結果を save.log に追記します。-a は追記を明示し、-r はファイルを置き換えます。表やその他の構造化出力は、書き込み前に読みやすいテキストへ変換されます。
history -o で直前のテキスト結果を再表示できます。デスクトップでは Cmd/Ctrl+S で history.log に追記し、Cmd/Ctrl+Shift+S で同じコマンド機構を使ってファイルを置き換えます。
dns google.com > save.log
dns gmail.com > save.log
dns gmail.com > save.log -r
history -o > history.log -r
公開
インターフェース機能を任意パッケージとして管理
ホットキーやコードエディターなどのブラウザー機能を個別に導入・削除でき、Core と Minimum パッケージを小さく保てます。
include は lil、hotkeys、code など名前付きインターフェースパッケージを管理します。Base モジュールは必要なブラウザー資産を要求でき、Minimum モジュールは任意の UI コードを含みません。
各パッケージは個別に確認、更新、削除できます。任意のインターフェース機能を Core に常駐させる必要がなくなります。
include -lil -v 1.0 -s
include -hotkeys -v 1.0 -s
help hotkeys -off
include -code -v 1.0 -i
include -code -v 1.0 -u