Как открыть файлы в веб-браузерах (например, Firefox) в редакторах как энергия или emacs?

Как открыть файлы в браузерах (например, Firefox) в редакторах как энергия или emacs? Блокнот ++ открывает файлы в браузерах путем нажатия Ctrl+Shift+Alt+X (Firefox). Существует ли способ сделать это в gVim или Emacs?

26
задан alexchenco 10 January 2010 в 01:16
поделиться

6 ответов

browse-url-of-file - это интерактивная скомпилированная функция Lisp в `browse-url.el '.

Он привязан к <Загрузить этот буфер в браузере> , Cc Cz v.

(URL-адрес просмотра файла и необязательный file)

Попросите WWW-браузер отобразить файл.
Отображать текущий файл буфера, если файл равен нулю или если он вызывается в интерактивном режиме. Превратите имя файла в URL-адрес с помощью функции browse-url-file-url . Передайте URL-адрес в браузер с помощью функции browse-url , затем запустите browse-url-of-file-hook .

21
ответ дан 28 November 2019 в 07:33
поделиться

в GVIM :

:! Начните CMD / C "C: \ Users \ pierre \ appdata \ local \ Google \ Chrome \ Приложение \ chrome.exe": / // «%: P» «

Вам нужен файл: // URI, чтобы указать, что он из файловой системы, это будет работать со всеми браузерами. %: P производит полный путь к файлу для текущего файла. Цитаты нужны.

Просто карта, что к тому, что вы выбираете. Вам может потребоваться сделать SELL = CMD.EXE , если вы установили свою оболочку в Bash или что-то еще ,

в Emacs (цитируя Джастинх):

 (Defun Open-In-Browser ()
  (Интерактивный)
  (Пусть (((имя файла (имя файла buffer)))
  (Browse-URL (CONCAT »файл: //" filename))))
 

3
ответ дан 28 November 2019 в 07:33
поделиться

В зависимости от того, что вы хотите с этим сделать, вы можете рассмотреть Emacs + MozRepl, который в основном позволяет посылать команды javascript в Firefox через telnet. К сожалению, я не могу написать elisp, чтобы это сработало, но связанный с этим трюк для перезагрузки веб-страниц из emacs показан в Sard в What's in your .emacs?. Больше информации об интеграции emacs и mozrepl из original source, а также here для крутого трюка, который обновляет страницу в браузере по мере того, как вы набираете в emacs buffer - это довольно неплохо для получения мгновенной обратной связи при работе с html.

Думаю, с vim будет работать то же самое, но я использовал его только в emacs.

2
ответ дан 28 November 2019 в 07:33
поделиться

В Emacs я не думаю, что это встроено, я могу быть Неправильно, но если не вот функция сделать это:

(defun open-in-browser()
  (interactive)
  (let ((filename (buffer-file-name)))
    (browse-url (concat "file://" filename))))
4
ответ дан 28 November 2019 в 07:33
поделиться

Вы имеете в виду, что вы хотите открыть файл, который в настоящее время редактируется в веб-браузере?

В VIM используйте что-то вроде :! Firefox% .

Редактировать: Вы могли, на самом деле, используете NMAP :! Firefox% , чтобы VIM действовать очень похоже на Notepad ++ (хотя это сопоставление выиграно Заботете ли вы сдвиг или нет).

Обратите внимание, что не каждый браузер фактически представляет содержимое файла при сведении имени файла в командной строке; например Вместо этого Google Chrome откроет диалог «Сохранить как», как если бы вы загрузили заданный файл. Посмотрите документы вашего браузера, если сомневаетесь. Firefox будет «просто работать», хотя.

2
ответ дан 28 November 2019 в 07:33
поделиться

По какой-то причине мой EmacsW32 на установке WinXP продолжал посылать директивы browse-url в оболочку с "open file:// alone, и это работало не очень хорошо*. Отсечение на коленях и модификация оригинального Justin's original, как показано ниже, сработала для меня:

(defun open-in-browser()
"open buffer in browser, unless it is not a file. Then fail silently (ouch)."
  (interactive)
  (if (buffer-file-name)
      (let ((filename (buffer-file-name)))
        (shell-command (concat "start firefox.exe \"file://" filename "\"")))))

Нужны некоторые улучшения. Так же как и замена твоего любимого браузера. d**n ты, жесткое кодирование.

* Думаю, проблема была в проверке типа системы в браузере browse-url-default-windows-browser, но не в положительном.

4
ответ дан 28 November 2019 в 07:33
поделиться
Другие вопросы по тегам:

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