1

どうすればいいのかわからないので、ターミナル出力にテキストファイルの内容をどのように表示するのだろうと思っていました。「more [filename]」のように動作させたい ファイルは、html スクリプトと同じディレクトリにあります。

これが私の現在のコードです*: http://pastebin.com/iN4AXUs9

※ここに貼り付けるとフォーマットがおかしくなったので、pastebinを使いました。

ありがとう

4

1 に答える 1

0

試す:

var c = $.terminal.splitCommand(cmd);
if (c.name == "more") {
    $.get(c.args[0], function(file) {
        term.echo(file);
    });
}

ファイル全体を一度に表示します。 more コマンドに似たものが必要な場合は、ファイルをページに分割する必要があります。多分このようなもの:

     var export_data = term.export_view();
     $.get(c.args[0], function(file) {
        var i = 0;
        var lines = file.split('\n');
        term.clear().echo(lines.slice(i, i+term.rows()).join('\n'));
        term.push($.noop, {
            keydown: function(e) {
                if (e.which == 32) {
                    i++;
                    term.clear().echo(lines.slice(i, i+term.rows()).join('\n'));
                } else if (e.which == 27) {
                    term.pop().import_view(export_data);
                }
                return false;
            }
        });

     });

2 行以上表示する場合は、端末のサイズを変更する必要があります。

   var terminal = $('...').terminal(...);
   var $win = $(window);
   $win.resize(function() {
       var height = $win.height();
       terminal.innerHeight(height);
   }).resize();
   terminal.resize();
于 2015-05-13T07:22:54.510 に答える