Find the answer to your Linux question:
Results 1 to 3 of 3
Hi I have a problem opening a .cpp file with emacs using debian testing kernal 2.6.15 and emacs21 21.4a-3, I googled, search variables and help docs, asked at different forum ...
  1. #1
    Just Joined!
    Join Date
    May 2004
    Posts
    5

    cpp file in emacs (external viewer error)

    Hi

    I have a problem opening a .cpp file with emacs
    using debian testing kernal 2.6.15 and emacs21 21.4a-3, I googled, search variables and help docs, asked at different forum for no avail.
    the problem happens only when I start emacs as a user but it does not happen when I start it as root. I am enclosing the error below as well as my .emacs and c++ related .emacs-mc394
    thanks

    ctl-xf which does find/create a file then I type test.cpp then I get
    this in the echo area
    ================================================== =====
    **************** the error ****************
    ================================================== =====
    File is opened with an external viewer. See buffer *extview log* for
    status messages.

    **************** *extview log* ****************
    Opening file ~/test.cpp with handler: more '%s'
    /home/fred/test.cpp: No such file or directory

    Process extview-process finished


    ================================================== =====
    **************** .emacs ****************
    ================================================== =====
    (load "~/.emacs-mc394") ;;a c++ related and included below

    ;; makes relavent files executable
    (add-hook 'after-save-hook
    #'executable-make-buffer-file-executable-if-script-p)

    ;; hitting shift-f8 will save the current buffer with permission 700
    (defun chmod-save ()
    "Save and chmod 700 current buffer"
    (interactive)
    (save-buffer)
    (setq command (concat "chmod 700 " (buffer-file-name)))
    (message "%s " command)
    (shell-command command)
    )
    (global-set-key [(shift f] 'chmod-save)

    ;; opens a a file 'pdf' with xpdf and so on...
    (require 'extview)
    (push '("\\.pdf$" . "xpdf %s") extview-application-associations)
    (push '("\\.py$" . nil) extview-application-associations)

    (add-hook 'octave-mode-hook
    '(lambda ()
    (local-set-key [f9] 'octave-send-line)))

    (add-hook 'c++-mode-hook
    '(lambda ()
    (turn-on-auto-fill) ;;Insert a newline if line gets to long.
    (c-toggle-auto-state 1) ;;Make ; and { and } and : all electric
    (c-set-style "mc394-style")))

    (add-hook 'comint-output-filter-functions ;R bottom the prompt
    'comint-show-maximum-output nil t)

    (global-font-lock-mode 1)


    ;; ;; Color highlighting stuff
    ;; (defvar xemacs-p
    ;; (string-match "XEmacs" emacs-version))
    ;; (if (not xemacs-p)
    ;; (progn
    ;; (global-font-lock-mode t)
    ;; ; If using global-font-lock-mode, make control-L update colors
    ;; (global-set-key "\C-l"
    ;; (function (lambda (arg) (interactive "P")
    ;; (font-lock-fontify-block 100)
    ;; (recenter arg))))))

    ;; this is needed for semantic and ECB to work correctly
    (setq auto-mode-alist
    (append '(
    ("configure.in" . m4-mode)
    ("\\.m4\\'" . m4-mode)
    ("\\.am\\'" . makefile-mode)
    ("\\.cpp\\'" . c++-mode)
    ("\\.h$" . c++-mode)
    ("\\.py\\'" . python-mode))
    auto-mode-alist))


    (defun other-window-backward (&optional n)
    "Select Nth previous window"
    (interactive "P")
    (other-window (- (prefix-numeric-value n))))
    (global-set-key "\C-x\C-p" 'other-window-backward)

    (windmove-default-keybindings)


    (global-set-key [f6] 'setnu-mode) ;set-number use twice after C-y
    (global-set-key "\C-x\C-b" 'buffer-menu) ;binds the key C-x C-b to buffer-menu
    (global-set-key [f7] (kbd "M-h M-;")) ;comment region
    (global-set-key [f11] 'compile) ;compiles a program
    (global-set-key [f12] 'clipboard-kill-ring-save);copy marked region to Primary Selection, M-w copies to Clipboard, middle mouse botton to paste Primary, M-y pastes the clipboard contents

    (global-set-key [f10] 'cut-ctrlM) ; cut all ^M.
    (defun cut-ctrlM ()
    "Cut all visible ^M."
    (interactive)
    (beginning-of-buffer)
    (while (search-forward "\r" nil t)
    (replace-match "" nil t))
    )

    (global-set-key "\C-cw" "\M-b\C-@\M-f\M-w") ;copy word under point
    (global-set-key "\C-cl" "\C-a\C-@\C-e\M-w") ;copy line under point
    (global-set-key "\C-cs" "\M-a\C-@\M-e\M-w") ;copy sentence under point
    (global-set-key "\C-cp" "\M-h\C-f\M-w") ;copy paragraph under point

    (setq ecb-auto-activate t)
    (setq user-full-name "Gary Wessle")
    (setq user-mail-address "phddas@yahoo.com")
    (setq fill-column 70) ;Text lines limited to 70 chars
    (setq make-backup-files nil) ;don't make backup files
    (setq kill-whole-line t) ;killing line also deletes \n
    (setq next-line-add-newlines nil) ;down arror won't add \n at end
    (setq line-number-mode t) ;put line number in display
    (setq column-number-mode t) ;put column number in display
    (setq inhibit-startup-message t) ;disable startup message
    (setq display-time-24hr-format t) ;display 24h time formate
    (setq transient-mark-mode t) ;highlight marked
    (setq default-major-mode 'text-mode) ;new buffers are text mode
    (add-hook 'text-mode-hook 'turn-on-auto-fill) ;line limit in text mode
    (add-hook 'text-mode-hook 'flyspell-mode t) ; check spelling
    (add-hook 'text-mode-hook 'text-mode-hook-identify)
    (add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on);ls not show ^[[0m
    (display-time) ;time on line-mode
    (tool-bar-mode 0) ; turn-off tool-bar
    (menu-bar-mode 0) ; turn-off tool-bar
    (scroll-bar-mode -1) ; turn-off scroll bar
    (setq-default visible-bell t) ; no beeps, flash on errors


    ;; don't show password
    (add-hook 'comint-output-filter-functions
    'comint-watch-for-password-prompt)

    ;; makes a vertical split along the horisontal line
    (defun htv-horizontal-to-vertical ()
    (interactive)
    (let ((one-buf (window-buffer (selected-window)))
    (buf-point (point)))
    (other-window 1)
    (delete-other-windows)
    (split-window-horizontally)
    (switch-to-buffer one-buf)
    (goto-char buf-point)))

    ;; makes a vertical split along the horisontal line
    (defun vth-vertical-to-horizontal ()
    (interactive)
    (let ((one-buf (window-buffer (selected-window)))
    (buf-point (point)))
    (other-window 1)
    (delete-other-windows)
    (split-window-vertically)
    (switch-to-buffer one-buf)
    (goto-char buf-point)))

    ;; remove comments lines from region
    (defun nea-kill-all-comments-in-region (begin end)
    "Kill all comments in region."
    (interactive "r")
    (save-excursion
    (goto-char begin)
    (kill-comment (count-lines begin end))))

    ;; remove comments lines from buffer
    (defun nea-kill-all-comments-in-buffer ()
    "Kill all comments in buffer."
    (interactive)
    (save-excursion
    (beginning-of-buffer)
    (kill-comment
    (count-lines (point-min) (point-max)))))

    (add-hook 'c++-mode-hook 'setnu-mode) ;line numbers
    (add-hook 'c++-mode-hook 'bar-cursor-mode) ;cursor to a bar
    (add-hook 'c++-mode-hook 'show-paren-mode) ;marrying brackets show

    (require 'xcscope) ;"$man cscope" for more info
    (custom-set-variables
    ;; custom-set-variables was added by Custom -- don't edit or cut/paste it!
    ;; Your init file should contain only one such instance.
    '(ecb-methods-nodes-expand-spec (quote all))
    '(ecb-options-version "2.27"))


    (custom-set-faces
    ;; custom-set-faces was added by Custom -- don't edit or cut/paste it!
    ;; Your init file should contain only one such instance.
    '(default ((t (:stipple nil :background "black" :foreground "white" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 123 :width normal :family "adobe-courier"))))
    '(comint-highlight-input ((t (:background "black" :weight bold))))
    '(cursor ((t (:background "yellow"))))
    '(mouse ((t (:background "yellow")))))

    (put 'erase-buffer 'disabled nil)


    ================================================== ====
    **************** .emacs-mc394 ****************
    ================================================== ====
    ;; Modified by Mike Hvidsten from MC38J emacs file
    ;; Feb. 4, 2004

    (c-add-style "mc394-style"
    '("cc-mode"
    (c-basic-offset . 3) ; In general, indent 3 spaces
    (c-hanging-braces-alist
    (defun-open after)) ; brace that opens a function definition
    (c-cleanup-list brace-else-brace
    brace-elseif-brace
    empty-defun-braces
    defun-close-semi
    scope-operator)
    (c-hanging-braces-alist
    ; These determine whether a newline appears before
    ; and/or after a brace in various situations.
    (brace-list-open)
    (block-open after) ; statement block open brace
    (defun-open after) ; brace that opens a function definition
    (substatement-open after); the brace that opens a substatement block
    (block-close . c-snug-do-while))
    (c-hanging-colons-alist
    (access-label after)) ; Newline after protected: or private:
    (c-hungry-delete-key t))) ; delete black space all at once

    ;; Variable should be t if we are running xemacs.
    (defvar xemacs-p
    (string-match "XEmacs" emacs-version))

    (if (not xemacs-p)
    (progn
    (global-font-lock-mode t)
    ; If using global-font-lock-mode, make control-L update colors
    (global-set-key "\C-l"
    (function (lambda (arg) (interactive "P")
    (font-lock-fontify-block 100)
    (recenter arg))))))
    (setq auto-mode-alist (append '(("\\.h$" . c++-mode)) auto-mode-alist))
    ************************************************** **************

  2. #2
    Just Joined!
    Join Date
    May 2004
    Posts
    5
    I deleted every thing in .emacs reloaded the file and the problem is
    still there.
    it is only when I delete .emacs from my home dir and restart emacs that the problem does
    not duplicate.

  3. #3
    Just Joined!
    Join Date
    May 2004
    Posts
    5
    ok, I fix the problem at least for just now.
    I commented out the section

    ===================================
    ;; ;; opens a a file 'pdf' with xpdf and so on...
    ;; (require 'extview)
    ;; (push '("\\.pdf$" . "xpdf %s") extview-application-associations)
    ;; (push '("\\.py$" . nil) extview-application-associations)
    ===================================
    restarted emacs and I am now cpp compliant. no clue as to how to fix the problem so that I can have the functionality provided by the section above.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •