Greasy Fork is available in English.
Adds new keybindings to Overleaf
当前为
// ==UserScript==
// @name Overleaf - Additional Keymaps
// @namespace https://github.com/BLumbye/overleaf-userscripts
// @version 0.1
// @description Adds new keybindings to Overleaf
// @author Benjamin Lumbye
// @license GPL-3
// @match https://www.overleaf.com/project/*
// @grant none
// ==/UserScript==
'use strict';
/**
* Puts some text before and after what is currently selected
* @param {string} before The text to put before the selection
* @param {string} after The text to put after the selection
*/
function wrapSelection(CodeMirror, view, before, after) {
view.dispatch(
view.state.changeByRange((range) => ({
changes: [
{ from: range.from, insert: before },
{ from: range.to, insert: after },
],
range: CodeMirror.EditorSelection.range(range.from + before.length, range.to + before.length),
})),
);
}
(function () {
window.addEventListener('UNSTABLE_editor:extensions', (event) => {
const { CodeMirror, CodeMirrorVim, extensions } = event.detail;
extensions.push(
CodeMirror.keymap.of([
{
key: 'Ctrl-m',
run(view) {
wrapSelection(CodeMirror, view, '\\texttt{', '}');
return true;
},
},
]),
);
});
})();