猿问

我不知道如何将选中的代码块整体左移,求指点一下哈

在google上搜索了很久,没有找到中意的答案。于是到这来提问,希望能够得到满意的答案。
问题是这个样子的:
在emacs中写jade这类代码时,格式显得尤为重要,但是我不知道如何将选中的代码块整体左移。所以有时改代码时显得很费劲,希望得到各位的帮助。
本人现在还不会elisp,如果是修改配置的话,望能添出代码
谢谢。

MMMHUHU
浏览 162回答 3
3回答

白猪掌柜的

(defun shift-text (distance)(if (use-region-p)(let ( (mark (mark)))(save-excursion(indent-rigidly (region-beginning)(region-end)distance)(push-mark mark t t)(setq deactivate-mark nil)))(indent-rigidly (line-beginning-position)(line-end-position)distance)))(defun shift-right (count)(interactive "*p")(shift-text count))(defun shift-left (count)(interactive "*p")(shift-text (- count)))`应该可以满足

慕工程0101907

;; 以下方法不限于 jade-mode;; 选中要 indent 的 region;; M-x indent-rigidly ;; 默认已绑定到 Ctrl-x TAB;; C-u 10 C-x TAB  ;; 整体右移 10 个字符 ;; C-u -2 C-x TAB  ;; 整体左移 2 个字符

至尊宝的传说

在C语言模式下,emacs可能会自动用cc-mode来自动调整你的TAB,此时不能直接按TAB,而是C+x,TAB。 PrintList(n1);    int ToFind;    ToFind = atoi(argv[2]);    printf("find (%d) at %d\n", ToFind, LocateElem(n1, ToFind));    ListInsertTail(&n1, 13);    PrintList(n1); ListInsertTail(&n1, 23);上面代码块中的第2行到倒数第2行,即是我在C语言模式下,3次C+x, tab 后的试验结果。看看是不是你想要的。
随时随地看视频慕课网APP

相关分类

Java
我要回答