mirror of
https://codeberg.org/TicklishHoneyBee/CLIte.git
synced 2026-03-11 09:04:37 +00:00
add a whole lot of missing newline characters, and fix file download a bit
This commit is contained in:
parent
b6d539ec7f
commit
8dad3466d0
2 changed files with 41 additions and 33 deletions
|
|
@ -5,7 +5,7 @@ clite.commands.load('help',function(args,env,io) {
|
|||
var stdio = io.include('stdio');
|
||||
if (args.length > 1) {
|
||||
// TODO: implement command help lookup
|
||||
stdio.printf('help with arguments is a work in progress');
|
||||
stdio.printf('help with arguments is a work in progress\n');
|
||||
}
|
||||
stdio.printf(`
|
||||
Welcome to CLIte (pronounced like 'site' with an added L).
|
||||
|
|
@ -127,7 +127,7 @@ Options:
|
|||
|
||||
dirs.forEach(function(dir,index) {
|
||||
if (dirs.length > 1)
|
||||
stdio.printf(dir+':');
|
||||
stdio.printf('%s:\n',dir);
|
||||
var fd = stdio.open(dir,stdio.flags.O_RDONLY|stdio.flags.O_SYNC);
|
||||
if (!fd) {
|
||||
stdio.fprintf(io.stderr,'cannot open directory: %s\n',dir);
|
||||
|
|
@ -206,7 +206,7 @@ Options:
|
|||
remote = false;
|
||||
break;
|
||||
default:
|
||||
stdio.write(io.stderr,'unknown argument: -'+args[i][j]);
|
||||
stdio.fprintf(io.stderr,'unknown argument: -%c\n',args[i][j]);
|
||||
}
|
||||
}
|
||||
}else{
|
||||
|
|
@ -237,9 +237,9 @@ Options:
|
|||
|| st.type == stdio.types.FT_IMAGE
|
||||
) {
|
||||
if (st) {
|
||||
stdio.write(io.stderr,'not a normal file: '+st.name);
|
||||
stdio.fprintf(io.stderr,'not a normal file: %s\n',st.name);
|
||||
}else{
|
||||
stdio.write(io.stderr,'not a normal file');
|
||||
stdio.write(io.stderr,'not a normal file\n');
|
||||
}
|
||||
}else{
|
||||
var d = stdio.readAll(fd);
|
||||
|
|
@ -247,10 +247,11 @@ Options:
|
|||
if (download) {
|
||||
var ld = stdio.open('/dev/local',stdio.flags.O_WRONLY);
|
||||
if (ld) {
|
||||
stdio.write(ld,{name:st.name,data:d});
|
||||
var t = st.name+String.fromCharCode(2)+d;
|
||||
stdio.write(ld,t);
|
||||
stdio.close(ld);
|
||||
}else{
|
||||
stdio.write(io.stderr,'can not write to local device');
|
||||
stdio.write(io.stderr,'can not write to local device\n');
|
||||
}
|
||||
}else{
|
||||
stdio.printf(d);
|
||||
|
|
@ -274,7 +275,7 @@ Options:
|
|||
|| st.type == stdio.types.FT_UNKOWN
|
||||
|| st.type == stdio.types.FT_IMAGE
|
||||
) {
|
||||
stdio.write(io.stderr,'not a normal file: '+file);
|
||||
stdio.fprintf(io.stderr,'not a normal file: %s\n',file);
|
||||
pending--;
|
||||
return;
|
||||
}
|
||||
|
|
@ -284,7 +285,7 @@ Options:
|
|||
}
|
||||
var fd = stdio.open(file,stdio.flags.O_RDONLY,fcb);
|
||||
if (!fd) {
|
||||
stdio.write(io.stderr,'cannot open file: '+file);
|
||||
stdio.fprintf(io.stderr,'cannot open file: %s\n',file);
|
||||
pending--;
|
||||
return;
|
||||
}
|
||||
|
|
@ -379,13 +380,13 @@ Options:
|
|||
return 0;
|
||||
break;
|
||||
default:
|
||||
stdio.write(io.stderr,'unknown argument: -'+args[i][j]);
|
||||
stdio.fprintf(io.stderr,'unknown argument: -%c\n',args[i][j]);
|
||||
}
|
||||
}
|
||||
}else if (file == null) {
|
||||
file = clite.resolvePath(args[i],false);
|
||||
}else{
|
||||
stdio.write(io.stderr,'unknown argument: '+args[i]);
|
||||
stdio.fprintf(io.stderr,'unknown argument: %s\n',args[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -408,13 +409,13 @@ Options:
|
|||
|
||||
function prepFile(fd) {
|
||||
if (!fd) {
|
||||
stdio.write(io.stderr,'could not open file: '+file);
|
||||
stdio.fprintf(io.stderr,'could not open file: %s\n',file);
|
||||
io.exit(1);
|
||||
return;
|
||||
}
|
||||
var st = stdio.fstatat(fd,0);
|
||||
if ( !st || (st.type != stdio.types.FT_TEXT && st.type != stdio.types.FT_SCRIPT)) {
|
||||
stdio.write(io.stderr,'can not read files of this type');
|
||||
stdio.write(io.stderr,'can not read files of this type\n');
|
||||
io.exit(1);
|
||||
return;
|
||||
}
|
||||
|
|
@ -440,14 +441,14 @@ Options:
|
|||
|
||||
if (file == null) {
|
||||
if (stdio.isatty(io.stdin)) {
|
||||
stdio.write(io.stderr,'no file specified');
|
||||
stdio.write(io.stderr,'no file specified\n');
|
||||
return 1;
|
||||
}
|
||||
fd = io.stdin;
|
||||
}else{
|
||||
fd = stdio.open(file,stdio.flags.O_RDONLY,prepFile);
|
||||
if (!fd) {
|
||||
stdio.write(io.stderr,'could not open file: '+file);
|
||||
stdio.fprintf(io.stderr,'could not open file: %s\n',file);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
|
@ -515,7 +516,7 @@ Options:
|
|||
});
|
||||
|
||||
clite.commands.load('view',function(args,env,io) {
|
||||
stdio.printf('view is under development');
|
||||
stdio.printf('view is under development\n');
|
||||
return 0;
|
||||
});
|
||||
|
||||
|
|
@ -565,7 +566,7 @@ Options:
|
|||
}
|
||||
|
||||
if (file == null) {
|
||||
stdio.fprintf(io.stderr,'no file specified');
|
||||
stdio.fprintf(io.stderr,'no file specified\n');
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
@ -574,13 +575,13 @@ Options:
|
|||
if (!st) {
|
||||
if (force)
|
||||
return 0;
|
||||
stdio.fprintf(io.stderr,'no such file or directory: %s',path);
|
||||
stdio.fprintf(io.stderr,'no such file or directory: %s\n',path);
|
||||
return 1;
|
||||
}
|
||||
|
||||
var fd = stdio.open(path,stdio.flags.O_RDONLY|stdio.flags.O_NOFOLLOW|stdio.flags.O_SYNC);
|
||||
if (!fd) {
|
||||
stdio.fprintf(io.stderr,'permission denied: %s',path);
|
||||
stdio.fprintf(io.stderr,'permission denied: %s\n',path);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
@ -589,7 +590,7 @@ Options:
|
|||
var i = stdio.read(fd);
|
||||
if (i) {
|
||||
stdio.close(fd);
|
||||
stdio.fprintf(io.stderr,'cannot remove non-empty directory: %s',path);
|
||||
stdio.fprintf(io.stderr,'cannot remove non-empty directory: %s\n',path);
|
||||
return 1;
|
||||
}
|
||||
}else{
|
||||
|
|
@ -606,13 +607,13 @@ Options:
|
|||
stdio.close(fd);
|
||||
|
||||
if (st.type == stdio.types.FT_DEV) {
|
||||
stdio.fprintf(io.stderr,'cannot remove device files: %s',path);
|
||||
stdio.fprintf(io.stderr,'cannot remove device files: %s\n',path);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
if (!stdio.remove(path)) {
|
||||
stdio.fprintf(io.stderr,'permission denied: %s',path);
|
||||
stdio.fprintf(io.stderr,'permission denied: %s\n',path);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
@ -664,7 +665,7 @@ Options:
|
|||
}
|
||||
|
||||
if (file == null) {
|
||||
stdio.fprintf(io.stderr,'no path specified');
|
||||
stdio.fprintf(io.stderr,'no path specified\n');
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
@ -687,13 +688,13 @@ Options:
|
|||
st = stdio.stat(path);
|
||||
if (st) {
|
||||
if (st.type != stdio.types.FT_DIR) {
|
||||
stdio.fprintf(io.stderr,'permission denied: %s',path);
|
||||
stdio.fprintf(io.stderr,'permission denied: %s\n',path);
|
||||
return 1;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (!stdio.mkdir(path)) {
|
||||
stdio.fprintf(io.stderr,'permission denied: %s',path);
|
||||
stdio.fprintf(io.stderr,'permission denied: %s\n',path);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
|
@ -1115,11 +1116,11 @@ Options:
|
|||
return 0;
|
||||
break;
|
||||
default:
|
||||
stdio.write(io.stderr,'unknown argument: -'+args[i][j]);
|
||||
stdio.fprintf(io.stderr,'unknown argument: -%c\n',args[i][j]);
|
||||
}
|
||||
}
|
||||
}else{
|
||||
stdio.write(io.stderr,'unknown argument: '+args[i]);
|
||||
stdio.fprintf(io.stderr,'unknown argument: %s\n',args[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1188,11 +1189,11 @@ Options:
|
|||
version = true;
|
||||
break;
|
||||
default:
|
||||
stdio.write(io.stderr,'unknown argument: -'+args[i][j]);
|
||||
stdio.fprintf(io.stderr,'unknown argument: -%c\n',args[i][j]);
|
||||
}
|
||||
}
|
||||
}else{
|
||||
stdio.write(io.stderr,'unknown argument: '+args[i]);
|
||||
stdio.fprintf(io.stderr,'unknown argument: %s\n',args[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1213,7 +1214,7 @@ Options:
|
|||
if (machine)
|
||||
txt += ut.machine;
|
||||
|
||||
stdio.printf(txt);
|
||||
stdio.printf('%s\n',txt);
|
||||
|
||||
return 0;
|
||||
});
|
||||
|
|
@ -1258,14 +1259,14 @@ Options:
|
|||
utc = true;
|
||||
break;
|
||||
default:
|
||||
stdio.write(io.stderr,'unknown argument: -'+args[i][j]);
|
||||
stdio.fprintf(io.stderr,'unknown argument: -%c\n',args[i][j]);
|
||||
}
|
||||
}
|
||||
}else if (args[i][0] == '+') {
|
||||
format = args[i].substring(1);
|
||||
}else{
|
||||
// TODO: set time
|
||||
stdio.write(io.stderr,'unknown argument: '+args[i]);
|
||||
stdio.fprintf(io.stderr,'unknown argument: %s\n',args[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -114,7 +114,14 @@ var clite = {
|
|||
read:null,
|
||||
write:function(obj) {
|
||||
if (typeof obj === 'string') {
|
||||
clite.core.download('data.txt',obj);
|
||||
var n = 'data.txt';
|
||||
var d = obj;
|
||||
var ind = obj.indexOf(String.fromCharCode(2));
|
||||
if (ind > -1) {
|
||||
n = obj.substring(0,ind);
|
||||
d = obj.substring(ind+1);
|
||||
}
|
||||
clite.core.download(n,d);
|
||||
}else if (typeof obj.name === 'string' && typeof obj.data === 'string') {
|
||||
clite.core.download(obj.name,obj.data);
|
||||
}else{
|
||||
|
|
|
|||
Loading…
Reference in a new issue