Как скопировать текст от Emacs до другого приложения на Linux

Исключение нулевого указателя генерируется, когда приложение пытается использовать null в случае, когда требуется объект. К ним относятся:

  1. Вызов метода экземпляра объекта null.
  2. Доступ или изменение поля объекта null.
  3. Принимая длину null, как если бы это был массив.
  4. Доступ или изменение слотов null, как если бы это был массив.
  5. Бросок null как будто это было значение Throwable.

Приложения должны бросать экземпляры этого класса, чтобы указать на другие незаконные использования объекта null.

Ссылка: http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html

106
задан memius 4 August 2017 в 21:50
поделиться

9 ответов

Вставьте следующее в Ваш .emacs файл:

(setq x-select-enable-clipboard t)
89
ответ дан Trey Jackson 24 November 2019 в 03:48
поделиться

Давайте будем осторожны с нашими определениями здесь

  • , копия Emacs является командой kill-ring-save (обычно связываемый с M-w ).
  • А системная копия - то, что Вы обычно получаете от нажатия C-c (или выбор "Edit-> Copy" в окне приложения).
  • X копий "физически" выделяют текст с курсором мыши.
  • вставка Emacs является командой yank (обычно связываемый с C-y ).
  • А системная вставка - то, что Вы обычно получаете от нажатия C-v (или выбор "Edit-Paste" в окне приложения).
  • X вставок нажатие "center mouse button" (моделируемый путем прижимания левых и правых кнопок мыши друг к другу).

В моем случае (на GNOME):

  • И Emacs и системная копия обычно работают с X вставками.
  • X копий обычно работают со вставкой Emacs.
  • , Чтобы заставить систему скопировать работу со вставкой Emacs и работу копии Emacs с системной вставкой, необходимо добавить (setq x-select-enable-clipboard t) к Вашему .emacs. Или попробуйте

    META-X set-variable RET x-select-enable-clipboard RET t
    

, я думаю, что это - довольно стандартное современное поведение Unix.

также важно отметить (хотя Вы говорите использование Emacs в отдельном окне), что, когда Emacs работает в консоли, это полностью разведено от системы и X буферов обмена: вырезанный и вставленный в этом случае установлен терминалом. Например, "Редактирование-> Вставка" в Вашем окне терминала должна действовать точно, как будто Вы ввели текст от буфера обмена в буфер Emacs.

119
ответ дан Trey Jackson 24 November 2019 в 03:48
поделиться

Я засовываю это в свой .emacs:

(setq x-select-enable-clipboard t)
(setq interprogram-paste-function 'x-cut-buffer-or-selection-value)

у меня впоследствии нет в основном проблем, вырезающих и вставляющих назад и вперед ни от чего в Emacs ни к какому другому X11 или приложению Gnome.

Премия: для получения этих вещей произойти в Emacs, не имея необходимость перезагружать целый .emacs сделайте C-x C-e с курсором сразу после завершения paren каждого из тех выражений в буфере .emacs.

Удачи!

10
ответ дан Nizam Mohamed 24 November 2019 в 03:48
поделиться

Я принимаю emacs, Вы имеете в виду Emacs под X (т.е. не в окне терминала).

существует два пути:

  1. (Относится к Unix единственная ОС) Выделение требуемый текст с Вашей мышью (это копирует его в X буферов обмена) и затем щелкают средней кнопкой для вставки.
  2. Выделение требуемый текст и затем "M-x clipboard-kill-ring-save" (отмечают Вас, может связать это с более легким ключом). Тогда просто "Редактирование-> Вставка" в Вашем любимом приложении.

доступные операции Буфера обмена:

  • clipboard-kill-ring-save - выбор копии от Emacs до буфера обмена
  • clipboard-kill-region - выбор сокращения от Emacs до буфера обмена
  • рывок буфера обмена - вставляют от буфера обмена до Emacs
7
ответ дан pdq 24 November 2019 в 03:48
поделиться

Существует статья EmacsWiki, которая объясняет некоторые проблемы с копией & вставка под X и как настроить его для работы.

6
ответ дан tshepang 24 November 2019 в 03:48
поделиться

Хм, что платформа и какую версию emacs Вы используете? С GNU Emacs 22.1.1 на Windows Vista, это хорошо работает для меня.

, случайно, при выполнении этого от окон до Linux через средство просмотра RealVNC удостоверьтесь, что Вы работаете "vncconfig - графический" на поле Linux сначала.....

0
ответ дан kfh 24 November 2019 в 03:48
поделиться

Я всегда использую быструю вставку - перетаскивают выбор в emacs, нажимают среднюю кнопку мыши в целевом окне.

(От ссылки до kate, я беру его, Вы находитесь на Linux или подобны и вероятно использующий emacs в X так или иначе.)

0
ответ дан cannam 24 November 2019 в 03:48
поделиться

Вы могли бы хотеть определить, какую платформу Вы используете. Это находится на Linux, Unix, macosx, окнах, MS-DOS?

я полагаю, что для окон это должно работать. Для MacOSX это будет добавлено к буферу обмена X-окон, который не является тем же самым как macosx буфером обмена. Для Linux это зависит от Вашего аромата менеджера окон, но я полагаю, что X-окна обрабатывают его хорошим способом на большинстве из них.

Так, определите.

0
ответ дан Mats Fredriksson 24 November 2019 в 03:48
поделиться

То, что я делаю, должно использовать хороший терминальный инструмент (PuTTY в Windows, Konsole или Terminal на Linux), который имеет встроенные средства копии.

В PuTTY, Вы выделяете текст, который Вы хотите с мышью и затем вставляете ее в другом месте. Щелчок правой кнопкой в окне PuTTY вставляет содержание Windows, скопировать/вставить буферизуют.

В Konsole или Терминале на Linux, Вы выделяете то, что Вы хотите, тогда требуют у Shift+Ctrl+C копии и Shift+Ctrl+V для вставки.

В win32 компиляции emacs, дергая текст действительно ставит его скопировать/вставить буфер.. большую часть времени.

На Mac OS X, ключевые для Apple ярлыки хорошо работают, потому что Терминал захватывает их.

нет никакого прямого способа сделать его на командной строке, потому что оболочка не поддерживает скопировать/вставить буфер для каждого приложения. удар делает , поддерживают скопировать/вставить буфер для себя, и, по умолчанию, emacs ^k/^y работа ярлыков.

-1
ответ дан warren 24 November 2019 в 03:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: