2013-11-20 45 views
-1

我喜歡在Xcode而不是Emacs中工作,但我們必須使用Emacs來完成我們的任務。將大量代碼從Xcode複製到Emacs失去代碼

似乎每當我嘗試從Xcode向Emacs複製大量代碼時,它只是在某個點之後「放棄」並留下大量文本,甚至偶爾會留下一些文本,最多爲3或4線以上的地方切斷。

這是與支架,間距,任何想法的問題嗎?它能否一次性複製那麼多的數據? (我目前所面對的414行代碼。)

我期待在這裏解決問題的心臟,而不是僅僅圍繞它的操縱。我可以通過分塊數據並做多個複製/粘貼來解決這個問題。

+2

爲什麼不把源文件保存在Xcode中,然後在emacs中打開它? –

+0

我試過這樣做,但我無法將文件從我的電腦傳輸到我們的服務器。 – RandomPleb

+0

爲什麼這會得到-1? – RandomPleb

回答

0

你可以試試下面的代碼,它提供了一個命令ttypaste-mode,你可以只是之前的「粘貼」代碼到您的Emacs的終端模擬器中運行的運行。它試圖解決與通過終端仿真器相關的常見問題。要退出此模式,請按ESC鍵。

(defvar ttypaste-mode nil) 
(add-to-list 'minor-mode-alist '(ttypaste-mode " Paste")) 

;; A loop reading `read-event' is several times faster than using a kind 
;; of minor mode with a keymap catching all character events; probably because 
;; it avoids going through a lot of extra code, like pre-command-hook, 
;; post-command-hook, ... 
(defun ttypaste-mode() 
    (interactive) 
    (let ((buf (current-buffer)) 
     (ttypaste-mode t)) 
    (with-temp-buffer 
     (let ((stay t) 
      (text (current-buffer))) 
     (redisplay) 
     (while stay 
      (let ((char (or (let ((inhibit-redisplay t)) (read-event nil t 0.1)) 
          (with-current-buffer buf 
          (insert-buffer-substring text)) 
          (erase-buffer) 
          (redisplay) 
          (read-event nil t)))) 
      (cond 
      ((or (not (characterp char)) 
        (and (eq char ?\e) (sit-for 0.1 'nodisp))) 
       (setq stay nil)) 
      ((eq char ?\r) (insert ?\n)) 
      (t (insert char))))) 
     (insert-buffer-substring text)))))