cd $(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()" | tee $(readlink /proc/$$/fd/1))
(растущий на ответе 4485)
Это - большой ввод, поэтому сделайте псевдоним:
alias tee2tty='tee $(readlink /proc/$$/fd/1)'
Затем просто звоните
cd $(python -c ... | tee2tty)
Это, конечно, требует, чтобы Вы уже знали то, что Вы хотите сделать с выводом, но имеет преимущество вызова команды только однажды.
Нет на самом деле никакой потребности в пользовательском Tom my-disable-here-document
функция, снова переплетающая ключи. Эта опция может быть активирована и отключена с sh-electric-here-document-mode
:
(add-hook 'sh-mode-hook
(lambda ()
(sh-electric-here-document-mode -1)))
(Это может также быть переключено для активного буфера через M-x sh-electric-here-document-mode
.)
Если единственная причина, Вы хотите отключить поведение здесь-документа, состоит в том, что оно препятствует тому, чтобы Вы вставили здесь-строку <<<, то привязка C-<
к функции, которая содержит (insert "<<<")
будет работать и все еще позволять автоматический шаблон здесь-документа
(defun my-here-string()
"Insert <<< (eg. for a bash here-string)"
(interactive)
(insert "<<<"))
(global-set-key (kbd "C-<") 'my-here-string)
Связать <
кому: self-insert-command
в режиме удара и затем это вставит только символ.
По умолчанию это связывается с sh-maybe-here-document
когда в режиме удара и что функция делает автовставку.
Вот способ оживиться ключ:
(add-hook 'sh-set-shell-hook 'my-disable-here-document)
(defun my-disable-here-document ()
(local-set-key "<" 'self-insert-command))
<
связывается с self-insert-command
по умолчанию.
– T. Verron
20.02.2015, 17:34
После взгляда на: http://web.mit.edu/dosathena/sandbox/emacs-19.28/lisp/sh-script.el я предложил это решение:
;; disable the automatic EOF generation in Shell Mode
(defvar sh-use-prefix nil
"If non-nil when loading, `$' and `<' will be C-c $ and C-c < .")
(defvar sh-mode-map
(let ((map (make-sparse-keymap)))
(define-key map (if sh-use-prefix "\C-c<" "<")
(local-set-key "<" 'self-insert-command))
map)
"Keymap used in Shell-Script mode.")
sh-mode-hook
не работал на меня, ноsh-set-shell-hook
сделал. – Felipe Lema 20.05.2016, 19:37