Conemu: Làm cách nào để tạo một số cửa sổ giao diện điều khiển trong một tab từ tệp tác vụ?


29

Làm thế nào để tạo một số cửa sổ giao diện điều khiển trong một tab từ tệp tác vụ? Tôi muốn tạo một lưới 2 × 2 của bảng điều khiển trong một tab. Tôi có thể làm điều đó bằng tay khi tạo bảng điều khiển mới và chọn tùy chọn "Bên phải" hoặc "Để xuống dưới". Nhưng tôi muốn nó được tạo tự động khi khởi động. Tùy chọn "tự động lưu / khôi phục các tác vụ đã mở" không được bật vì một số lý do. Vì vậy, cách duy nhất là tạo ra nó trong nhiệm vụ. Vì vậy, làm thế nào tôi có thể tạo lưới 2 × 2 trong nhiệm vụ?

Câu trả lời:


44

Đây là nội dung nhiệm vụ của bạn. Đã kiểm tra trong ConEmu xây dựng 120909.

>cmd -cur_console:n
cmd -cur_console:s1TVn
cmd -cur_console:s1THn
cmd -cur_console:s2THn

Đây là một ví dụ. Việc chia tách trong ConEmu có thể phức tạp như bạn muốn, mọi cấu hình với bất kỳ tỷ lệ nào đều có thể. Đọc wiki dự án để biết thêm thông tin về -new_console-cur_consolechuyển đổi.

Để chạy tất cả những thứ đó mà không tạo ra Nhiệm vụ mới

/cmdlist ConEmu.execông tắc.

Ví dụ sử dụng cho nội dung phím tắt (ví dụ trên máy tính để bàn):

ConEmu -cmdlist cmd -cur_console:fn ||| cmd -cur_console:s1TVn ||| cmd -cur_console:s1THn ||| cmd -cur_console:s2THn

Cần phải chạy nó từ một tập tin cmd khác? Đây là consoles.cmdví dụ:

start ConEmu -cmdlist cmd -cur_console:fn ^|^|^| cmd -cur_console:s1TVn ^|^|^| cmd -cur_console:s1THn ^|^|^| cmd -cur_console:s2THn

Bạn có thể cho tôi biết làm thế nào để thực hiện lệnh này? Tôi đã thử và đây là những gì tôi nhận được. Tôi có bản dựng mới nhất.
arin

Từ khóa là "Nhiệm vụ". Tại sao bạn cố chạy cái này từ shell đã bắt đầu? Nhiệm vụ thiết lập.
Maximus

@Maximus Tôi có ấn tượng rằng đây là lệnh shell. Cảm ơn.
arin

1
@arin Bạn cũng có thể sử dụng cái này từ shell, nhưng cái đó cần -new_console: ... thay vì -cur_console
Maximus

@Maximus: Kích thước cửa sổ được cấu hình chính xác như thế nào trong ví dụ tác vụ đó? Ví dụ: tôi muốn thiết lập một cái gì đó giống như những gì bạn đã đăng trên Twitter , nơi nó không phải là một ô vuông. Có một số tài liệu bạn có thể giới thiệu cho tôi?
Isxek

2

Tôi đã đưa ra cách thực hiện sau đây. Tôi sử dụng nó cho các dự án phát triển web. Bảng điều khiển cho các trình chạy tác vụ (ví dụ: gulp), git, trình biên dịch javascript (ví dụ: bản thảo), v.v ... Mục tiêu là mở 4 cửa sổ giao diện điều khiển và thay đổi thư mục vào thư mục nơi tôi đã thực thi * .cmd. Tôi không muốn có nhiều bản sao của tập lệnh bó mà tôi phải thay đổi nó. Tôi không muốn cái vỏ bị bó và tôi muốn cái vỏ bị bash. Tôi đang ở trên windows, vì vậy, cygwin là cần thiết cho bash shell.

Tôi đã tạo một tập tin .cmd có tên tùy ý. Tôi gọi cho tôi 4 consoles.cmd. Cygwin đã được cài đặt (phiên bản 64 bit trong trường hợp của tôi). Ngoài ra cheregói Cygwin được cài đặt và yêu cầu.

4 consoles.cmd Nội dung:

@echo off

for %%i in ("%~dp0..\..") DO (set dirVar=%%~ni)
for %%i in ("%~dp0.") DO (set dir2Var=%%~ni)

set finalValue=%dirVar% %dir2Var%

start C:\"Program Files"\ConEmu\ConEmu64.exe -cmdlist ^
C:\cygwin64\bin\bash -c "/bin/xhere /bin/bash.exe" -cur_console:fna:t:"%finalValue%":C:"C:\cygwin64\Cygwin.ico" ^|^|^| ^
C:\cygwin64\bin\bash -c "/bin/xhere /bin/bash.exe" -cur_console:s1TVna:t:"%finalValue%":C:"C:\cygwin64\Cygwin.ico" ^|^|^| ^
C:\cygwin64\bin\bash -c "/bin/xhere /bin/bash.exe" -cur_console:s1THna:t:"%finalValue%":C:"C:\cygwin64\Cygwin.ico" ^|^|^| ^
C:\cygwin64\bin\bash -c "/bin/xhere /bin/bash.exe" -cur_console:s2THna:t:"%finalValue%":C:"C:\cygwin64\Cygwin.ico"

Tôi đặt 4 consoles.cmdmột dịch vụ lưu trữ tệp cho mục đích sao lưu khi gặp sự cố ổ cứng. Cũng để thuận tiện khi chia sẻ giữa các máy phát triển.

Tập lệnh bó sẽ thay đổi thư mục cho cả 4 cửa sổ giao diện điều khiển thành thư mục tồn tại .cmd. Vì vậy, tôi đã tạo liên kết Hard Symbolic trong thư mục nơi tôi muốn tất cả 4 cửa sổ giao diện điều khiển thay đổi thư mục thành. Các liên kết tượng trưng chỉ trở lại kinh điển 4 consoles.cmd.

Chạy một liên kết tượng trưng và 4 thư mục làm việc của trình điều khiển shell sẽ là vị trí mà liên kết tượng trưng nằm trên hệ thống tệp

Mã người chạy nhiệm vụ gulp của tôi cho bất cứ ai quan tâm

package.json

{
  "name": "MyApp",
  "version": "1.0.0",
  "description": "",
  "main": "gulpfile.js",
  "private": true,
  "devDependencies": {
    "del": "^1.2.0",
    "gulp": "^3.9.0",
    "gulp-batch": "^1.0.5",
    "gulp-concat": "^2.5.2",
    "gulp-imagemin": "^2.2.1",
    "gulp-minify-css": "^1.1.6",
    "gulp-ng-annotate": "^1.0.0",
    "gulp-plumber": "^1.0.1",
    "gulp-rename": "^1.2.2",
    "gulp-sourcemaps": "^1.5.2",
    "gulp-uglify": "^1.2.0",
    "gulp-watch": "^4.2.4",
    "imagemin-pngquant": "^4.1.0"
  },
  "author": "Author",
  "license": "ISC"
}

bower.json

{
  "name": "MyProject",
  "version": "1",
  "license": "MIT",
  "private": true,
  "ignore": [
    "**/.*",
    "node_modules",
    "bower_components"
  ],
  "dependencies": {
    "bootstrap": "~3.3.4",
    "jquery": "~2.1.3",
    "angular": "~1.4.0",
    "angular-route": "~1.4.0",
    "angular-animate": "~1.4.0",
    "font-awesome": "~4.3.0",
    "underscore": "~1.8.3",
    "bootstrap-datepicker": "~1.4.0",
    "angularjs-toaster": "~0.4.12",
    "angular-scroll": "~0.7.0",
    "moment": "~2.10.2",
    "angular-loading-bar": "~0.7.1"
  }
}

gulpfile.js

'use strict';

var gulp = require('gulp');
var batch = require('gulp-batch');
var sourcemaps = require('gulp-sourcemaps');
var minifycss = require('gulp-minify-css');
var uglify = require('gulp-uglify');
var rename = require('gulp-rename');
var concat = require('gulp-concat');
var del = require('del');
var plumber = require('gulp-plumber');
var watch = require('gulp-watch');
var imagemin = require('gulp-imagemin');
var pngquant = require('imagemin-pngquant');
var ngAnnotate = require('gulp-ng-annotate');

gulp.task('default', ['clean'], function () {
    gulp.start('images', 'vendorCss', 'applicationCss', 'fontIcons', 'vendorJavascript', 'applicationJavascript');
});

gulp.task('clean', function (cb) {
    del(['./dist/*'], cb);
});

gulp.task('images', function () {
    return gulp.src([
            './content/img/**/*'
    ])
        .pipe(imagemin({
            optimizationLevel: 3,
            progressive: true,
            interlaced: true,
            svgoPlugins: [{ removeViewBox: false }],
            use: [pngquant()]
        }))
        .pipe(gulp.dest('./dist/img'));
});

gulp.task('fontIcons', function () {
    return gulp.src([
        './bower_components/bootstrap/dist/fonts/**.*',
        './bower_components/font-awesome/fonts/**.*'
    ])
        .pipe(gulp.dest('./dist/fonts'));

});

gulp.task('vendorCss', function () {
    return gulp.src([
        './bower_components/bootstrap/dist/css/bootstrap.css',
        './bower_components/font-awesome/css/font-awesome.css',
        './bower_components/angularjs-toaster/toaster.css',
        './bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker3.css',
        './bower_components/angular-loading-bar/build/loading-bar.css'
    ])
        .pipe(concat('vendor.css'))
        .pipe(gulp.dest('./dist/css'))
        .pipe(rename({ suffix: '.min' }))
        .pipe(minifycss())
        .pipe(gulp.dest('./dist/css'));
});

gulp.task('vendorJavascript', function () {
    return gulp.src([
            './bower_components/jquery/dist/jquery.js',
            './bower_components/angular/angular.js',
            './bower_components/angular-route/angular-route.js',
            './bower_components/angular-resource/angular-resource.js',
            './bower_components/angular-animate/angular-animate.js',
            './bower_components/angular-scroll/angular-scroll.js',
            './bower_components/angular-loading-bar/build/loading-bar.js',
            './bower_components/angularjs-toaster/toaster.js',
            './bower_components/bootstrap/dist/js/bootstrap.js',
            './bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.js',
            './bower_components/underscore/underscore.js',
            './bower_components/moment/moment.js'
    ])
        .pipe(sourcemaps.init())
        .pipe(concat('vendor.js'))
        .pipe(gulp.dest('./dist/script'))
        .pipe(uglify())
        .pipe(rename('vendor.min.js'))
        .pipe(sourcemaps.write('.'))
        .pipe(gulp.dest('./dist/script'));
});

gulp.task('applicationCss', function () {
    return gulp.src([
            './content/css/site.css',
            './content/css/animation.css'
    ])
        .pipe(plumber())
        .pipe(concat('app.css'))
        .pipe(gulp.dest('./dist/css'))
        .pipe(rename({ suffix: '.min' }))
        .pipe(minifycss())
        .pipe(gulp.dest('./dist/css'));
});

gulp.task('applicationJavascript', function () {
    return gulp.src([
            './angular/**/*.js'
    ])
        .pipe(plumber())
        .pipe(ngAnnotate())
        .pipe(sourcemaps.init())
        .pipe(concat('app.js'))
        .pipe(gulp.dest('./dist/script'))
        .pipe(uglify())
        .pipe(rename('app.min.js'))
        .pipe(sourcemaps.write('.'))
        .pipe(gulp.dest('./dist/script'));

});

gulp.task('watchApplicationJavascript', ['applicationJavascript'], function () {
    watch('./angular/**/*.js', batch(function (events, done) {
        gulp.start('applicationJavascript', done);
    }));
});

gulp.task('watchApplicationCss', ['applicationCss'], function () {
    watch(['./content/css/site.css', './content/css/animation.css'], batch(function (events, done) {
        gulp.start('applicationCss', done);
    }));
});
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.