<!DOCTYPE html> 
 | 
<html lang="zh"> 
 | 
    <head> 
 | 
        <meta charset="utf-8" /> 
 | 
        <title>Custom keyboard shortcuts - Editor.md examples</title> 
 | 
        <link rel="stylesheet" href="css/style.css" /> 
 | 
        <link rel="stylesheet" href="../css/editormd.css" /> 
 | 
        <link rel="shortcut icon" href="https://pandao.github.io/editor.md/favicon.ico" type="image/x-icon" /> 
 | 
    </head> 
 | 
    <body> 
 | 
        <div id="layout"> 
 | 
            <header> 
 | 
                <h1>Custom keyboard shortcuts</h1> 
 | 
            </header> 
 | 
            <div id="test-editormd"> 
 | 
                <textarea style="display:none;">#### Default 
 | 
  
 | 
> If Editor.md code editor is on focus, you can use keyboard shortcuts. 
 | 
> Editor.md have the default keyboard shortcuts handle. Plaese open the help dialog, can see all default keyboard shortcuts. 
 | 
  
 | 
#### Example 
 | 
  
 | 
```javascript 
 | 
var testEditor = editormd("test-editormd", { 
 | 
    width: "90%", 
 | 
    height: 720, 
 | 
    path : '../lib/', 
 | 
    disabledKeyMaps : [ 
 | 
        "Ctrl-B", "F11", "F10"  // disable some default keyboard shortcuts handle 
 | 
    ], 
 | 
    onload : function() { 
 | 
        var keyMap = { 
 | 
            "Ctrl-S": function(cm) { 
 | 
                alert("Ctrl+S"); 
 | 
            }, 
 | 
            "Ctrl-A": function(cm) { // default Ctrl-A selectAll 
 | 
                // custom 
 | 
                alert("Ctrl+A"); 
 | 
                cm.execCommand("selectAll"); 
 | 
            } 
 | 
        }; 
 | 
  
 | 
        // setting signle key 
 | 
        var keyMap2 = { 
 | 
              "Ctrl-T": function(cm) { 
 | 
                alert("Ctrl+T"); 
 | 
              } 
 | 
        }; 
 | 
  
 | 
        this.addKeyMap(keyMap); 
 | 
        this.addKeyMap(keyMap2); 
 | 
        this.removeKeyMap(keyMap2);  // remove signle key 
 | 
    } 
 | 
}); 
 | 
``` 
 | 
</textarea> 
 | 
            </div> 
 | 
        </div> 
 | 
        <script src="js/jquery.min.js"></script> 
 | 
        <script src="../editormd.js"></script> 
 | 
        <script type="text/javascript"> 
 | 
            var testEditor; 
 | 
  
 | 
            $(function() {    
 | 
                var widgets = []; 
 | 
                 
 | 
                testEditor = editormd("test-editormd", { 
 | 
                    width: "90%", 
 | 
                    height: 720, 
 | 
                    path : '../lib/', 
 | 
                    disabledKeyMaps : [ 
 | 
                        "Ctrl-B", "F11", "F10"  // disable some default keyboard shortcuts handle 
 | 
                    ], 
 | 
                    onchange : function() { 
 | 
                                $("#test").remove(); 
 | 
                                var cm = this.cm; 
 | 
                                var cursor = cm.getCursor(); 
 | 
  
 | 
                                //cm.replaceSelection("@"); 
 | 
                                 
 | 
                                widgets.push(cm.addWidget({line : cursor.line, ch : cursor.ch}, $("<p style='z-index:100000;background:red;color:#fff;padding:5px;' id='test'>fsdfsdfsdf</p>")[0], true)); 
 | 
                                console.log(cm.getCursor(), cm.getLine(cursor.line), cm.getLineTokens(cursor.line));    
 | 
                    }, 
 | 
                    onload : function() { 
 | 
                        var keyMap = { 
 | 
                            "Ctrl-S": function(cm) { 
 | 
                                alert("Ctrl+S"); 
 | 
                                //return false; 
 | 
                            }, 
 | 
                            "Ctrl-A": function(cm) { // default Ctrl-A selectAll 
 | 
                                // custom 
 | 
                                alert("Ctrl+A"); 
 | 
                                cm.execCommand("selectAll"); 
 | 
                            }, 
 | 
                            //"Shift-2" : function(cm){ 
 | 
                            //} 
 | 
                        }; 
 | 
                         
 | 
                        this.cm.on("keyup", function(cm){ 
 | 
                            //$("#test").remove(); 
 | 
                        }); 
 | 
                         
 | 
                        // setting signle key 
 | 
                        var keyMap2 = { 
 | 
                              "Ctrl-T": function(cm) { 
 | 
                                alert("Ctrl+T"); 
 | 
                              } 
 | 
                        }; 
 | 
                         
 | 
                        this.addKeyMap(keyMap); 
 | 
                        this.addKeyMap(keyMap2); 
 | 
                        this.removeKeyMap(keyMap2);  // remove signle key 
 | 
                    } 
 | 
                });     
 | 
            }); 
 | 
        </script> 
 | 
    </body> 
 | 
</html> 
 |