例如,我想创建一个名为Mycmd
的命令(第一个字母需要大写)。乳清我处于正常模式并键入:Mycmd
,我希望可以完成以下命令系列:
:set ts=2
:set sw=2
:set sws=2
:set expandtab
我发现command
语法似乎在正确的轨道上,例如: [StackOverflow],但我不能用两个以上的命令来做(即:设置一件事:set另一件事)。
我并不真正考虑nmap
,因为我想创建命令而不是映射到热键,尽管nmap
允许同时执行命令(例如nmap <F7> :set ts=2<enter>:set sw=2<enter>
})
答案 0 :(得分:2)
你想要的是:
package com.something.example;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
public class MainActivity extends ActionBarActivity {
private Button startLie, startTruth,
startIdiot, startGenius, stopScan;
private MediaPlayer play;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
startLie = (Button) findViewById(R.id.startlie);
startLie.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
stopPlaying();
play = MediaPlayer.create(MainActivity.this, R.raw.lie_detector);
play.start();
play.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer play) {
play.release();
}
});
}
});
stopScan = (Button) findViewById(R.id.stopScan);
stopScan.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
play.stop();
};
});
startTruth = (Button) findViewById(R.id.starttruth);
startTruth.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
stopPlaying();
play = MediaPlayer.create(MainActivity.this, R.raw.truth_detector);
play.start();
play.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer play) {
play.release();
}
});
}
});
startIdiot = (Button) findViewById(R.id.startidiot);
startIdiot.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
stopPlaying();
play = MediaPlayer.create(MainActivity.this, R.raw.idiot_detector);
play.start();
play.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer play) {
play.release();
}
});
}
});
startGenius = (Button) findViewById(R.id.startgenius);
startGenius.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
stopPlaying();
play = MediaPlayer.create(MainActivity.this, R.raw.genius_detector);
play.start();
play.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer play) {
play.release();
}
});
}
});
}
private void stopPlaying() {
if (play != null) {
play.stop();
play.release();
play = null;
}
}
您(和所有人)需要的是Editorconfig。
答案 1 :(得分:2)
只是做:
command Mycmd set ts=2 | set sw=2 | set sws=2 | set expandtab
|
用于分隔任何Vim脚本中的命令。
甚至更简单:
command Mycmd set ts=2 sw=2 sws=2 expandtab
要更改设置,请显示更改:
command Mycmd set ts=2 sw=2 sws=2 expandtab ts? sw? sws? et?
要映射它:
nnoremap <silent> _I :Mycmd<cr>