Perforce и Emacs - PullRequest
       51

Perforce и Emacs

8 голосов
/ 25 августа 2010

Я хочу настроить emacs, чтобы я мог использовать Perforce без необходимости использовать p4v.

Я посмотрел на emacs wiki и поиск на сайте , но кажется, что есть только два варианта - оба довольно старые. Первый вариант - p4.el , который последний раз обновлялся в 2004 году. Второй вариант - интеграция с компонентом emacs VC, последнее обновление в августе 2007 года.

Вторая ссылка выше от SO , похоже, предлагает использовать p4.el. Это все еще рекомендуемый совет? У кого-нибудь есть какие-нибудь советы или хитрости, которыми они могут поделиться?

Любая помощь \ совет высоко ценится.

Chris

Ответы [ 2 ]

4 голосов
/ 26 августа 2010

Да, p4.el по-прежнему является рекомендуемым способом интеграции перформанса в emacs.Он был хорошо реализован, что объясняет, почему он не обновлялся с 2004 года.

Я настроил пару вещей, в основном для добавления и отключения некоторых ярлыков.

Я добавил возможность вызывать некоторыеКоманды p4v из emacs также

(defun invoke-p4v-cmd (cmd)
  (let ((file (if (equal major-mode 'dired-mode)
                  (dired-get-file-for-visit)
                (buffer-file-name))))
    (when file
      (shell-command (concat "\"c:/Program Files/Perforce/p4v.exe\" -cmd \"" cmd " " file "\" &")))))

(defun op:p4v-timelapse ()
  "show revision tree"
  (interactive)
  (invoke-p4v-cmd "annotate"))

(define-key p4-prefix-map "T" 'op:p4v-timelapse)


(defun op:p4v-tree ()
  "show revision tree"
  (interactive)
  (invoke-p4v-cmd "tree"))

(define-key p4-prefix-map "g" 'op:p4v-tree)

(defun op:p4v-history ()
  "Show history"
  (interactive)
  (invoke-p4v-cmd "history"))

(define-key p4-prefix-map "x" 'op:p4v-history)
3 голосов
/ 02 мая 2013

Я запустил новый форк p4.el на https://github.com/gareth-rees/p4.el, и если вы храбрый пользователь Emacs, который не против случайной ошибки, вы можете захотеть дать емуидти.(Присылайте мне запросы на извлечение с вашими исправлениями ошибок!) Я работал над отзывчивостью в ситуациях, когда сервер Perforce может быть периодически доступен, например, при работе через мобильное соединение для передачи данных.В частности, я сделал большинство пользовательских операций асинхронными, поэтому работа редко блокируется в ожидании ответа сервера Perforce.

Я также добавляю поддержку новых функций Perforce, таких как p4 status и p4 annotate, исправление ошибок и модернизация кода. Вот блог о том, чего я достиг на данный момент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...